Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: James Almer <jamrial@gmail.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH 1/7 v2] avcodec: add an Immersive Audio Model and Formats frame split bsf
Date: Tue, 30 Jan 2024 19:07:44 -0300
Message-ID: <f0dff0a6-e4f7-47b2-9442-20decab478b0@gmail.com> (raw)
In-Reply-To: <AS8P250MB0744EEFCF888F5F84C29062D8F7D2@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM>

On 1/30/2024 6:47 PM, Andreas Rheinhardt wrote:
>> +    *obu_size = get_leb(&gb);
> This stuff here should not a GetBitContext at all, as basically
> everything is byte-aligned (and the flags above are in known bits).

I'm not going to write yet another leb() reading function to work on raw 
bytes. We have enough scattered around and in fact we should try to 
remove most.

>> +static const enum AVCodecID iamf_stream_split_codec_ids[] = {
>> +    AV_CODEC_ID_PCM_S16LE, AV_CODEC_ID_PCM_S16BE,
>> +    AV_CODEC_ID_PCM_S24LE, AV_CODEC_ID_PCM_S24BE,
>> +    AV_CODEC_ID_PCM_S32LE, AV_CODEC_ID_PCM_S32BE,
>> +    AV_CODEC_ID_OPUS,      AV_CODEC_ID_AAC,
>> +    AV_CODEC_ID_FLAC,      AV_CODEC_ID_NONE,
>> +};
>> +
>> +const FFBitStreamFilter ff_iamf_stream_split_bsf = {
>> +    .p.name         = "iamf_stream_split",
>> +    .p.codec_ids    = iamf_stream_split_codec_ids,
>> +    .p.priv_class   = &iamf_stream_split_class,
>> +    .priv_data_size = sizeof(IAMFSplitContext),
>> +    .init           = iamf_stream_split_init,
>> +    .flush          = iamf_stream_split_flush,
>> +    .close          = iamf_stream_split_close,
>> +    .filter         = iamf_stream_split_filter,
>> +};
> 
> This needs to add documentation for what this BSF is actually supposed
> to do. Right now it seems crazy: It parses the packet's data and expects
> to find OBU headers, although the input data is supposed to be PCM,
> Opus, AAC or Flac.

It's not too different than aac_adtstoasc in that it takes audio from 
those codecs listed above encapsulated in one form and returns it in 
another form.
In this case, it takes OBUs containing one or more audio frames, removes 
the OBU encapsulation, and propagates each raw audio frame in separate 
packets.

I'll write some documentation.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  reply	other threads:[~2024-01-30 22:07 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-30 17:32 James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 2/7 v2] avformat/demux: support inserting bitstream filters in demuxing scenarios James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 3/7 v2] avformat/mov: make MOVStreamContext refcounted James Almer
2024-01-30 22:31   ` Andreas Rheinhardt
2024-01-31  1:58   ` Michael Niedermayer
2024-01-31  2:01     ` James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 4/7 v2] avformat/mov: add support for Immersive Audio Model and Formats in ISOBMFF James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 5/7] avcodec: add an Immersive Audio Model and Formats frame merge bsf James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 6/7] avcodec/put_bits: add put_leb() James Almer
2024-01-30 21:53   ` Andreas Rheinhardt
2024-01-30 21:59     ` James Almer
2024-01-30 22:10       ` Andreas Rheinhardt
2024-01-30 22:14         ` James Almer
2024-01-30 17:32 ` [FFmpeg-devel] [PATCH 7/7] avformat/movenc: add support for Immersive Audio Model and Formats in ISOBMFF James Almer
2024-01-30 21:47 ` [FFmpeg-devel] [PATCH 1/7 v2] avcodec: add an Immersive Audio Model and Formats frame split bsf Andreas Rheinhardt
2024-01-30 22:07   ` James Almer [this message]
2024-01-30 22:11     ` Andreas Rheinhardt
2024-01-30 22:12       ` James Almer
2024-02-03 15:04         ` Andreas Rheinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f0dff0a6-e4f7-47b2-9442-20decab478b0@gmail.com \
    --to=jamrial@gmail.com \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git