2016-11-12 351 views
2

如何使用ffmpeg將wav文件轉換爲AIF文件?使用ffmpeg將WAV轉換爲AIFF

我需要製作一個16位,一個24位和一個32位的各種文件。

我還需要做出不同的採樣率。例如176,400 kHz和44,100 kHz中的一個。我知道ffmpeg -i input-file.wav output-file.aif將轉換文件,但我不知道其餘的。

https://www.ffmpeg.org/general.html#Audio-Codecs說ffmpeg的支持AIFF但對AIFF編碼沒有文件:https://en.wikipedia.org/wiki/Audio_Interchange_File_Format#AIFF-C_common_compression_types

+0

根據https://help.ubuntu.com/community/FFmpeg,似乎我可以使用'pcm_s8','pcm_s16be','pcm_s24be'和'pcm_s32be',但我不確定這是否是正確的編解碼器fot AIFF文件。 – Arete

+0

堆棧溢出僅用於編程問題。如果您有更多'ffmpeg' cli使用問題,您可以在[su]或video.stackexchange.com上詢問。 – LordNeckbeard

回答

1

查看libavformat/aiff.h顯示:

static const AVCodecTag ff_codec_aiff_tags[] = { 
    { AV_CODEC_ID_PCM_S16BE, MKTAG('N','O','N','E') }, 
    { AV_CODEC_ID_PCM_S8,  MKTAG('N','O','N','E') }, 
    { AV_CODEC_ID_PCM_U8,  MKTAG('r','a','w',' ') }, 
    { AV_CODEC_ID_PCM_S24BE, MKTAG('N','O','N','E') }, 
    { AV_CODEC_ID_PCM_S32BE, MKTAG('N','O','N','E') }, 
    { AV_CODEC_ID_PCM_F32BE, MKTAG('f','l','3','2') }, 
    { AV_CODEC_ID_PCM_F64BE, MKTAG('f','l','6','4') }, 
    { AV_CODEC_ID_PCM_ALAW,  MKTAG('a','l','a','w') }, 
    { AV_CODEC_ID_PCM_MULAW, MKTAG('u','l','a','w') }, 
    { AV_CODEC_ID_PCM_S24BE, MKTAG('i','n','2','4') }, 
    { AV_CODEC_ID_PCM_S32BE, MKTAG('i','n','3','2') }, 
    { AV_CODEC_ID_MACE3,  MKTAG('M','A','C','3') }, 
    { AV_CODEC_ID_MACE6,  MKTAG('M','A','C','6') }, 
    { AV_CODEC_ID_GSM,   MKTAG('G','S','M',' ') }, 
    { AV_CODEC_ID_ADPCM_G722, MKTAG('G','7','2','2') }, 
    { AV_CODEC_ID_ADPCM_G726LE, MKTAG('G','7','2','6') }, 
    { AV_CODEC_ID_PCM_S16BE, MKTAG('t','w','o','s') }, 
    { AV_CODEC_ID_PCM_S16LE, MKTAG('s','o','w','t') }, 
    { AV_CODEC_ID_ADPCM_IMA_QT, MKTAG('i','m','a','4') }, 
    { AV_CODEC_ID_QDMC,   MKTAG('Q','D','M','C') }, 
    { AV_CODEC_ID_QDM2,   MKTAG('Q','D','M','2') }, 
    { AV_CODEC_ID_QCELP,  MKTAG('Q','c','l','p') }, 
    { AV_CODEC_ID_SDX2_DPCM, MKTAG('S','D','X','2') }, 
    { AV_CODEC_ID_ADPCM_IMA_WS, MKTAG('A','D','P','4') }, 
    { AV_CODEC_ID_NONE,   0 }, 
}; 

有些只有在FFmpeg的解碼支持。請參閱ffmpeg -codecsffmpeg -encoders或您提供的第一個鏈接。