[FFmpeg-devel] [PATCHv3 7/8] avformat/aiff: G.728 muxing and demuxing
compn
ff at hawaiiantel.net
Tue Jun 10 03:07:07 EEST 2025
On Tue, 10 Jun 2025 00:25:24 +0200, Andreas Rheinhardt wrote:
> Peter Ross:
> > ---
> > libavformat/aiff.c | 1 +
> > libavformat/aiffdec.c | 3 +++
> > 2 files changed, 4 insertions(+)
> >
> > diff --git a/libavformat/aiff.c b/libavformat/aiff.c
> > index 1ceac69a70..907f7d8d28 100644
> > --- a/libavformat/aiff.c
> > +++ b/libavformat/aiff.c
> > @@ -40,6 +40,7 @@ const AVCodecTag ff_codec_aiff_tags[] = {
> > { 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_G728, MKTAG('G','7','2','8') },
> > { 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') },
> > diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c
> > index bd5bd2e4bb..aeb00cccd0 100644
> > --- a/libavformat/aiffdec.c
> > +++ b/libavformat/aiffdec.c
> > @@ -174,6 +174,9 @@ static int get_aiff_header(AVFormatContext *s, int64_t size,
> > case AV_CODEC_ID_GSM:
> > par->block_align = 33;
> > break;
> > + case AV_CODEC_ID_G728:
> > + par->block_align = 5;
> > + break;
> > default:
> > aiff->block_duration = 1;
> > break;
> >
> Is this and the riff patch based on some spec or are you just inventing
> things here?
maybe i can help.
https://wiki.multimedia.cx/index.php/G.728
lists 0xCD02 and 0x0041
according to the history of that wiki page, the 0xCD02 comes from
"plcmg728.acm" binary codec.
other list of twocc here: https://wiki.multimedia.cx/index.php/TwoCC
i havent myself tested plcmg728.acm , but its on my list to investigate
here https://wiki.multimedia.cx/index.php/Category_talk:Audio_Codecs
plcmg728.acm should be included with the software:
Polycom PVX
"Create video conferences with a USB webcam"
did Polycom make up that entry or should we support it anyways? i say
support it until another 0xCD02 shows up. and then we deal with the
conflict at that time.
if you go to the spec page
https://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/AIFF.html
and click samples
https://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/Samples.html
at the bottom is g728 sample
o2_728.aiff (1 kB) *
AIFF-C file: G.728 data (compression code: G728)
hopefully that answers all riff/aiff questions.
-compn
More information about the ffmpeg-devel
mailing list