Echoprint指紋提取
Echoprint是一個開源的音頻檢索系統,在這裡首先介紹下怎麼使用其音頻指紋提取。
在它的官網可以下載到最新的4.12版的codegen源碼。http://echoprint.me/
下載後解壓備用。
按照以下的步驟一步步來:
1、安裝CMake,網站:http://cmake.org/cmake/resources/software.html使用Win32 Installer,根據自己的系統選擇吧。
CMake是一個跨平台的安裝(編譯)工具,可以用簡單的語句來描述所有平台的安裝(編譯)過程,它能夠輸出各種各樣的makefile或者project文件。
2、下載zlib,網站:http://www.zlib.net/
zlib是提供數據壓縮用的函式庫,由Jean-loup Gailly與MarkAdler所開發。zlib使用DEFLATE演算法,最初是為libpng函式庫所寫的,後來普遍為許多軟體所使用,此函式庫為自由軟體,使用zlib授權。
3、下載taglib,網站:http://taglib.github.io/
用於從不同格式的音頻文件中讀取音頻數據。
4、下載Boost,網站:http://www.boost.org/
Boost庫是為C++語言標準庫提供擴展的一些C++程序庫的總稱。
下面開始使用這些東西啦:
5、解壓zlib,taglib和boost到任意目錄,分別對他們進行操作:
###zlib
1)打開CMake
2)點擊Browse Source...和Browse Build...選擇zlib目錄的解壓路徑
3)點擊configure
4)選擇Visual Studio 11作為generator,選擇use default nativecompilers
5)點擊generate,此時zlib目錄下會編譯出zlib.sln,過程中沒有錯誤就成功了
6)打開zlib.sln
7)選擇編譯方式為release
8)在解決方案資源管理器中右擊zlib工程並選擇生成
###taglib
1)打開CMake
2)點擊Browse Source...和Browse Build...選擇taglib目錄的解壓路徑
3)點擊configure
4)選擇Visual Studio 11作為generator,選擇use default nativecompilers
5)點擊generate,會出現錯誤「Could NOT findZLIB」,此時要勾選Advanced
6)在最下面將ZLIB_INCLUDE_DIR改為zlib的目錄,將ZLIB_LIBRARY的值改為zlib.lib,例如:F:/zlib-1.2.7/Release/zlib.lib
7)點擊Genarate,此時taglib目錄下會編譯出taglib.sln
8)打開taglib.sln
9)選擇release
10)在解決方案資源管理器中右擊tag工程並選擇生成
###FFmpeg
1)下載ffmpeg,網站:http://ffmpeg.zeranoe.com/builds/
2)解壓到任意目錄
3)將ffmpeg目錄下的bin目錄添加進系統的環境變數
4)這個時候要重啟電腦,讓環境變數生效,之前就是在這裡忘了重啟,卡了很久。。。
###編譯codegen
1)重啟之後打開最先下載解壓備用的codegen.sln
2)右擊codegen選擇屬性,選擇配置屬性-C/C++-常規,在附加包含目錄中將自動添加的zlib和taglib、boost目錄的路徑都刪掉,自己重新添加正確的目錄,另外要將taglib目錄下的各種格式路徑都添加進去,比較多,如圖:
3)接著在屬性頁面中,配置屬性-鏈接器-常規,在附加庫目錄中將zlib和taglib的Release路徑添加進去,如圖:
4)最後在配置屬性-鏈接器-輸入中,將附加依賴項的名稱改正確,就是tag.lib和zlib.lib,對的話就不要改了,如圖:
5)注意這些設置都是選擇release後的,如果選了debug也要重新設置,編譯成功後,在echoprint-codegen-release-4.12windowsRelease目錄下就會有codegen.exe了,把zlib.dll和taglib.dll複製過來之後可以用命令行運行一下試試看。
推薦閱讀:
※指紋算命圖解(22)
※指紋看命運 你的手上一共有幾個斗?
※「803神眼」看指紋揪出殺手
※申根國家簽證12號起需十指指紋錄製
※測測你的指紋,很准
TAG:指紋 |