aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2024-03-09 21:06:32 +0100
committerMarton Balint <cus@passwd.hu>2024-03-16 19:49:39 +0100
commit26e0454cad5312eb8475ce4829a9091bc846db83 (patch)
treef257f522e488facf2a8375b770d93bca698775ab /libavformat
parented6207274e693128d8206a72487cc53335055cb3 (diff)
downloadffmpeg-26e0454cad5312eb8475ce4829a9091bc846db83.tar.gz
avformat/mov_chan: simplify channel layout canonicalization
Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/mov_chan.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/libavformat/mov_chan.c b/libavformat/mov_chan.c
index 3e186b0837..ead3a9b91b 100644
--- a/libavformat/mov_chan.c
+++ b/libavformat/mov_chan.c
@@ -543,10 +543,8 @@ int ff_mov_read_chan(AVFormatContext *s, AVIOContext *pb, AVStream *st,
ch_layout->u.map[i].id = mov_get_channel_id(label);
}
- ret = av_channel_layout_retype(ch_layout, AV_CHANNEL_ORDER_NATIVE, AV_CHANNEL_LAYOUT_RETYPE_FLAG_LOSSLESS);
- if (ret == AVERROR(ENOSYS))
- ret = av_channel_layout_retype(ch_layout, AV_CHANNEL_ORDER_UNSPEC, AV_CHANNEL_LAYOUT_RETYPE_FLAG_LOSSLESS);
- if (ret < 0 && ret != AVERROR(ENOSYS))
+ ret = av_channel_layout_retype(ch_layout, 0, AV_CHANNEL_LAYOUT_RETYPE_FLAG_CANONICAL);
+ if (ret < 0)
goto out;
} else {
uint64_t mask = mov_get_channel_layout(layout_tag, bitmap);
@@ -843,10 +841,8 @@ int ff_mov_read_chnl(AVFormatContext *s, AVIOContext *pb, AVStream *st)
ch_layout->u.map[i].id = channel;
}
- ret = av_channel_layout_retype(ch_layout, AV_CHANNEL_ORDER_NATIVE, AV_CHANNEL_LAYOUT_RETYPE_FLAG_LOSSLESS);
- if (ret == AVERROR(ENOSYS))
- ret = av_channel_layout_retype(ch_layout, AV_CHANNEL_ORDER_UNSPEC, AV_CHANNEL_LAYOUT_RETYPE_FLAG_LOSSLESS);
- if (ret < 0 && ret != AVERROR(ENOSYS))
+ ret = av_channel_layout_retype(ch_layout, 0, AV_CHANNEL_LAYOUT_RETYPE_FLAG_CANONICAL);
+ if (ret < 0)
return ret;
} else {
uint64_t omitted_channel_map = avio_rb64(pb);