日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

speex 编译(转)

發布時間:2025/3/12 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 speex 编译(转) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?http://blog.chinaunix.net/u/26691/showart_331169.html

speex是一個開源的基于CELP算法的音頻編解碼器。這個算法早在1985年就已經公開了,應該不會遇到什么licence的問題了。相信做音頻和voip的朋友對它一定都非常熟悉。
speex的主要特點如下:
(1)開源的軟件,而且完全免費———如果你愿意贊助的話,可以通過www.speex.org與他們取得聯系
(2)使用嵌入式比特流,使編解碼器可以適應高帶寬和低帶寬的不用應用場合
(3)支持各種不同的比特率情況下的編解碼(從2.15kbps到44kbps)
(4)支持動態比特率切換(AMR)和變比特率操作(VBR)
(5)在VBR中集成了語音活躍檢測(VAD),支持不連續傳輸(DTX)
(6)支持混音(Variable complexity)
(7)嵌入寬帶結構(支持可縮放的采樣率)
(8)支持32KHz極端的寬頻模式(Utra-wideband mode)
(9)支持增強雙聲道編碼
(10)采用Fix-point實現方式,加快運行速度
不光如此,它還可以支持AEC,基于聲學的回音消除功能。
那么這個東西如何在win32環境下面編譯呢?我以我能拿到的最新版本speex-1.2beta2在vs2003環境下面的編譯為例來說明一下:

(1)首先編譯libspeex
這個庫分為靜態(lib)和動態(dll)兩個版本,可以依照需要分別編譯使用。
從他們的maillist可以看出,他們對于linux環境下面的speex還是比較放心的,但是沒有更新win32下面的這些工程文件。這樣勢必導致我們編譯的時候會遇到一些問題。
?
首先的問題就是#include <ogg/ogg.h>這個文件打不開,可以到 http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz這里下載libogg,解壓然后編譯它的win32版本,這個還是沒問題的。編譯完畢后,會生成一個libogg_static_d.lib,我們把libogg的include路徑和lib路徑以及鏈接中需要添加的lib加到當前的libspeex工程中,這樣第一步就差不多了。
?
編譯還會提示沒有找到medfilter.c這個文件,通過查看它的changelog就知道已經沒用了,所以直接從解決方案管理器里面刪除掉這個.c文件即可。
?
然后可以順利編譯了,但是要注意這些還沒完根據change log,我們可以看到它還少了一個window.c這個文件,你可以從libspeex目錄中找到,把它加入到當前的項目中即可(這個問題讓我都要瘋狂了,明明編譯出來了lib但是在程序中總是提示什么unsolved external _lpc_window之類的云云)。原來問題在這里。

(2)然后編譯幾個自帶的enc和dec程序
這里需要說明的是,在enc和dec工程中需要添加libogg_static_d.lib,libspeex.lib以及各自的include和lib的路徑。然后,需要把src目錄下面的skeleton.c和skeleton.h都添加到當前的enc或者dec項目中才有可能真正生成可以使用的exe程序。

這個東西總算可以用了,心情舒暢中!!但愿它能夠幫助我解決voip中的回音問題。

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/yfqvip/archive/2009/11/06/4776186.aspx

總結

以上是生活随笔為你收集整理的speex 编译(转)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。