![](/img/trans.png)
[英]how to decode audio (using ffmpeg - libavcodec) to specific PCM codec
[英]FFmpeg weird codec id for wav_pcm
所以,我想將很多 32 bit.wav 文件轉換為 24 bit.wav 文件,因為我想將它們導入 Omnisphere,一個虛擬合成器。 我嘗試使用 FFmpeg 將它們全部轉換,但 Omnisphere 不支持它們。 然后我測試了一些東西,Omnisphere 似乎支持從 Edison 導出的音頻,這是 FL Studio 音頻編輯和錄制工具。 由於我不想單獨導出它們,我想知道是否有任何方法可以在 FFmpeg 或其他音頻轉換器中解決此問題。 以下是 MediaInfo 中的測試文件及其 output: https://www.mediafire.com/file/l6lojwswsaq9fly/audiotest+wav.zip/file 32 位原始文件:
General
Complete name : /home/user/Documents/audiotest wav/32bit.wav
Format : Wave
File size : 905 KiB
Duration : 2 s 625 ms
Overall bit rate mode : Constant
Overall bit rate : 2 823 kb/s
Writing application : Edison
Comment : Recorded on 1/26/2020 in Edison.
Audio
Format : PCM
Format profile : Float
Codec ID : 3
Codec ID/Hint : IEEE
Duration : 2 s 625 ms
Bit rate mode : Constant
Bit rate : 2 822 kb/s
Channel(s) : 2 channels
Sampling rate : 44.1 kHz
Bit depth : 32 bits
Stream size : 904 KiB (100%)
從 Edison 導出的 24 位文件:
General
Complete name : /home/user/Documents/audiotest wav/edison.wav
Format : Wave
File size : 679 KiB
Duration : 2 s 625 ms
Overall bit rate mode : Constant
Overall bit rate : 2 118 kb/s
Writing application : Edison
Comment : Recorded on 1/26/2020 in Edison.
Audio
Format : PCM
Format settings : Little / Signed
Codec ID : 1
Duration : 2 s 625 ms
Bit rate mode : Constant
Bit rate : 2 117 kb/s
Channel(s) : 2 channels
Sampling rate : 44.1 kHz
Bit depth : 24 bits
Stream size : 678 KiB (100%)
用 FFmpeg 轉換的 24 位文件:
General
Complete name : /home/user/Documents/audiotest wav/ffmpeg.wav
Format : Wave
File size : 679 KiB
Duration : 2 s 625 ms
Overall bit rate mode : Constant
Overall bit rate : 2 117 kb/s
Writing application : Lavf58.50.100
Comment : Recorded on 1/26/2020 in Edison.
Audio
Format : PCM
Format settings : Little / Signed
Codec ID : 00000001-0000-0010-8000-00AA00389B71
Duration : 2 s 625 ms
Bit rate mode : Constant
Bit rate : 2 117 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Bit depth : 24 bits
Stream size : 678 KiB (100%)
似乎 FFmpeg 音頻編解碼器 pcm_s24le 使用的是 Microsoft 媒體格式。
WMMEDIASUBTYPE_PCM:00000001-0000-0010-8000-00AA00389B71 https://docs.microsoft.com/en-us/windows/win32/wmformat/media-type-identifiers
根據.wav文件的定義,我使用十六進制編輯器手動將codecID更改為0x0001(PCM)。 在那之后,一切似乎都很順利,但我不知道它是否有潛在的影響。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.