[FFmpeg-devel] [PATCH 001/293 v8] avutil/channel_layout: Add a new channel layout API

Michael Niedermayer michael at niedermayer.cc
Wed Mar 16 02:41:08 EET 2022


On Mon, Jan 24, 2022 at 05:46:56PM -0300, James Almer wrote:
> From: Anton Khirnov <anton at khirnov.net>
> 
> The new API is more extensible and allows for custom layouts.
> More accurate information is exported, eg for decoders that do not
> set a channel layout, lavc will not make one up for them.
> 
> Deprecate the old API working with just uint64_t bitmasks.
> 
> Expanded and completed by Vittorio Giovara <vittorio.giovara at gmail.com>
> and James Almer <jamrial at gmail.com>.
> Signed-off-by: Vittorio Giovara <vittorio.giovara at gmail.com>
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> Changes since last version:
> 
> *Both av_channel_layout_describe() and av_channel_layout_from_string() now
>  support a "2 channels (FL+LFE)" syntax, to signal native (usually
>  non-standard) or custom order layouts.
> *a single decimal value is now interpreted as a mask by
>  av_channel_layout_from_string(), same as a single hexadecimal value.
> *De-duplicated code by simplifying av_channel_layout_channel_from_string().
> 
> The entire set can still be found in
> https://github.com/jamrial/FFmpeg/commits/channel_layout4
> 
>  libavutil/channel_layout.c | 661 +++++++++++++++++++++++++++++++++----
>  libavutil/channel_layout.h | 551 +++++++++++++++++++++++++++++--
>  libavutil/version.h        |   1 +
>  3 files changed, 1110 insertions(+), 103 deletions(-)

didnt bisect but

this
./ffmpeg -i ~/tickets/3542/out.mov -channel_layout stereo -acodec pcm_s16be file.mov
fails after the patchset but not before

[graph_0_in_0_0 @ 0x5642d659ec40] filter context - fmt: s16 r: 44100 layout: 3 ch: 2, incoming frame - fmt: s16 r: 44100 layout: 60000000 ch: 2 pts_time: 0
[graph_0_in_0_0 @ 0x5642d659ec40] Changing audio frame properties on the fly is not supported.
Error while filtering: Invalid argument
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The bravest are surely those who have the clearest vision
of what is before them, glory and danger alike, and yet
notwithstanding go out to meet it. -- Thucydides
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20220316/66f11ace/attachment.sig>


More information about the ffmpeg-devel mailing list