我遇到了一個非常奇怪的現象,在解碼MP3到pcm數據在ios鍵盤。 我已經在Windows 10上測試了代碼,它工作正常。但是,使用相同的mp3文件和ios鍵盤上運行的相同代碼,pcm數據會變成全白噪聲。mp3解碼錯誤與ffmpeg在ios
我在兩個系統上都比較了輸入壓縮數據(mp3)和內存中的解碼數據。輸入數據全部相同(無靜音幀),但解碼數據完全不同。
所以,我可以說,有一個錯誤的ffmpeg在iOS平臺上的音頻。我的版本使用的ffmpeg2.6
人達到同樣的事情解碼?
我遇到了一個非常奇怪的現象,在解碼MP3到pcm數據在ios鍵盤。 我已經在Windows 10上測試了代碼,它工作正常。但是,使用相同的mp3文件和ios鍵盤上運行的相同代碼,pcm數據會變成全白噪聲。mp3解碼錯誤與ffmpeg在ios
我在兩個系統上都比較了輸入壓縮數據(mp3)和內存中的解碼數據。輸入數據全部相同(無靜音幀),但解碼數據完全不同。
所以,我可以說,有一個錯誤的ffmpeg在iOS平臺上的音頻。我的版本使用的ffmpeg2.6
人達到同樣的事情解碼?
我還沒有遇到過從2.0.4到ffmpeg 3.2中描述的那些問題。
AVFrame
uint8_t* data[8] pointer to audio samples
Stereo S16P will use planar data not interleaved audio
int linesize[8] length of each line
int nb_samples
int format enum AVSampleFormat
int sample_rate 44100, 48000, etc
int channels number of audio channels
這裏更多:
在AVFrame解碼的音頻使用定義https://www.ffmpeg.org/doxygen/3.0/structAVFrame.html
沒有從自己(即自己的示例代碼)很難任何信息說,爲什麼你越來越白噪聲。
嗨,謝謝你的回覆。我仔細檢查這個問題在iOS上。還有第三部分庫也在裏面提到了ffmpeg。所以運行時調用會變得混亂。兩個ffmpeg版本在一個系統上運行。所以出現了各種問題。 – LL2012
似乎ffmpeg-2.6.3永久性地存在這個問題,因爲我刪除了可能會導致混亂的其他庫。好吧,我的場景非常簡單。單聲道,16bit,採樣率32000 mp3解碼。無需重新採樣。解碼通常是通過調用avcodec_decode_audio4。然而,與windows上的輸出相比,輸出不正確。 – LL2012
然後使用不同的版本重建ffmpeg庫可能是個好主意。我希望你能設法解決它。 – WLGfx
誰遇到同樣的問題? – LL2012