Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert WAV to AIFF with ffmpeg

Tags:

ffmpeg

How can I convert a wav file to an AIF file with ffmpeg?

I need to make various files one in 16 Bit, one in 24 bit and one in 32 Bit.

I also need to make different sample rates. E.g one in 176,400 kHz and one in 44,100 kHz.

I know ffmpeg -i input-file.wav output-file.aif will convert the file but I am not sure about the rest.

https://www.ffmpeg.org/general.html#Audio-Codecs says ffmpeg supports AIFF but there is no documentation on the AIFF encoding: https://en.wikipedia.org/wiki/Audio_Interchange_File_Format#AIFF-C_common_compression_types

like image 454
Arete Avatar asked Oct 24 '25 05:10

Arete


1 Answers

Viewing libavformat/aiff.h shows:

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 },
};

Some of these only have decoding support in FFmpeg. See ffmpeg -codecs or ffmpeg -encoders or the first link you provided.

like image 156
llogan Avatar answered Oct 27 '25 00:10

llogan