#include <stdint.h>
#include "libavutil/audioconvert.h"
#include "libavcodec/avcodec.h"
#include "mov_chan.h"
Go to the source code of this file.
enum MovChannelLayoutTag |
mov 'chan' tag reading/writing.
Definition at line 47 of file mov_chan.c.
uint64_t ff_mov_get_channel_layout | ( | uint32_t | tag, | |
uint32_t | bitmap | |||
) |
mov 'chan' tag reading/writing.
[in] | tag | channel layout tag |
[out] | bitmap | channel bitmap (only used if needed) |
Definition at line 426 of file mov_chan.c.
Referenced by mov_read_chan().
uint32_t ff_mov_get_channel_layout_tag | ( | enum CodecID | codec_id, | |
uint64_t | channel_layout, | |||
uint32_t * | bitmap | |||
) |
Get the channel layout tag for the specified codec id and channel layout.
If the layout tag was not found, use a channel bitmap if possible.
[in] | codec_id | codec id |
[in] | channel_layout | channel layout |
[out] | bitmap | channel bitmap |
Definition at line 454 of file mov_chan.c.
Referenced by mov_write_chan_tag().
Definition at line 417 of file mov_chan.c.
Referenced by ac3_eac3_probe(), audio_read_header(), audio_write_header(), av_guess_codec(), build_feed_streams(), ff_rtp_get_codec_info(), ff_rtp_get_payload_type(), ff_vbv_update(), matroska_read_header(), mpegps_read_packet(), pulse_read_header(), spdif_read_packet(), and v4l2_read_header().
struct MovChannelLayoutMap* mov_ch_layout_map[] [static] |
Initial value:
{ mov_ch_layout_map_misc, mov_ch_layout_map_1ch, mov_ch_layout_map_2ch, mov_ch_layout_map_3ch, mov_ch_layout_map_4ch, mov_ch_layout_map_5ch, mov_ch_layout_map_6ch, mov_ch_layout_map_7ch, mov_ch_layout_map_8ch, mov_ch_layout_map_9ch, }
Definition at line 346 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_1ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_MONO, AV_CH_LAYOUT_MONO }, }
Definition at line 156 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_2ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_STEREO, AV_CH_LAYOUT_STEREO }, { MOV_CH_LAYOUT_STEREOHEADPHONES, AV_CH_LAYOUT_STEREO }, { MOV_CH_LAYOUT_BINAURAL, AV_CH_LAYOUT_STEREO }, { MOV_CH_LAYOUT_MIDSIDE, AV_CH_LAYOUT_STEREO }, { MOV_CH_LAYOUT_XY, AV_CH_LAYOUT_STEREO }, { MOV_CH_LAYOUT_MATRIXSTEREO, AV_CH_LAYOUT_STEREO_DOWNMIX }, { MOV_CH_LAYOUT_AC3_1_0_1, AV_CH_LAYOUT_MONO | AV_CH_LOW_FREQUENCY }, { 0, 0 }, }
Definition at line 160 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_3ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_MPEG_3_0_A, AV_CH_LAYOUT_SURROUND }, { MOV_CH_LAYOUT_MPEG_3_0_B, AV_CH_LAYOUT_SURROUND }, { MOV_CH_LAYOUT_AC3_3_0, AV_CH_LAYOUT_SURROUND }, { MOV_CH_LAYOUT_ITU_2_1, AV_CH_LAYOUT_2_1 }, { MOV_CH_LAYOUT_DVD_4, AV_CH_LAYOUT_2POINT1 }, { 0, 0 }, }
Definition at line 174 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_4ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_AMBISONIC_B_FORMAT, 0 }, { MOV_CH_LAYOUT_QUADRAPHONIC, AV_CH_LAYOUT_QUAD }, { MOV_CH_LAYOUT_MPEG_4_0_A, AV_CH_LAYOUT_4POINT0 }, { MOV_CH_LAYOUT_MPEG_4_0_B, AV_CH_LAYOUT_4POINT0 }, { MOV_CH_LAYOUT_AC3_3_1, AV_CH_LAYOUT_4POINT0 }, { MOV_CH_LAYOUT_ITU_2_2, AV_CH_LAYOUT_2_2 }, { MOV_CH_LAYOUT_DVD_5, AV_CH_LAYOUT_2_1 | AV_CH_LOW_FREQUENCY }, { MOV_CH_LAYOUT_AC3_2_1_1, AV_CH_LAYOUT_2_1 | AV_CH_LOW_FREQUENCY }, { MOV_CH_LAYOUT_DVD_10, AV_CH_LAYOUT_3POINT1 }, { MOV_CH_LAYOUT_AC3_3_0_1, AV_CH_LAYOUT_3POINT1 }, { MOV_CH_LAYOUT_DTS_3_1, AV_CH_LAYOUT_3POINT1 }, { 0, 0 }, }
Definition at line 185 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_5ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_PENTAGONAL, AV_CH_LAYOUT_5POINT0_BACK }, { MOV_CH_LAYOUT_MPEG_5_0_A, AV_CH_LAYOUT_5POINT0 }, { MOV_CH_LAYOUT_MPEG_5_0_B, AV_CH_LAYOUT_5POINT0 }, { MOV_CH_LAYOUT_MPEG_5_0_C, AV_CH_LAYOUT_5POINT0 }, { MOV_CH_LAYOUT_MPEG_5_0_D, AV_CH_LAYOUT_5POINT0 }, { MOV_CH_LAYOUT_DVD_6, AV_CH_LAYOUT_2_2 | AV_CH_LOW_FREQUENCY }, { MOV_CH_LAYOUT_DVD_18, AV_CH_LAYOUT_2_2 | AV_CH_LOW_FREQUENCY }, { MOV_CH_LAYOUT_DVD_11, AV_CH_LAYOUT_4POINT1 }, { MOV_CH_LAYOUT_AC3_3_1_1, AV_CH_LAYOUT_4POINT1 }, { MOV_CH_LAYOUT_DTS_4_1, AV_CH_LAYOUT_4POINT1 }, { 0, 0 }, }
Definition at line 207 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_6ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_HEXAGONAL, AV_CH_LAYOUT_HEXAGONAL }, { MOV_CH_LAYOUT_DTS_6_0_C, AV_CH_LAYOUT_HEXAGONAL }, { MOV_CH_LAYOUT_MPEG_5_1_A, AV_CH_LAYOUT_5POINT1 }, { MOV_CH_LAYOUT_MPEG_5_1_B, AV_CH_LAYOUT_5POINT1 }, { MOV_CH_LAYOUT_MPEG_5_1_C, AV_CH_LAYOUT_5POINT1 }, { MOV_CH_LAYOUT_MPEG_5_1_D, AV_CH_LAYOUT_5POINT1 }, { MOV_CH_LAYOUT_AUDIOUNIT_6_0, AV_CH_LAYOUT_6POINT0 }, { MOV_CH_LAYOUT_AAC_6_0, AV_CH_LAYOUT_6POINT0 }, { MOV_CH_LAYOUT_EAC3_6_0_A, AV_CH_LAYOUT_6POINT0 }, { MOV_CH_LAYOUT_DTS_6_0_A, AV_CH_LAYOUT_6POINT0_FRONT }, { MOV_CH_LAYOUT_DTS_6_0_B, AV_CH_LAYOUT_5POINT0_BACK | AV_CH_TOP_CENTER }, { 0, 0 }, }
Definition at line 226 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_7ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_MPEG_6_1_A, AV_CH_LAYOUT_6POINT1 }, { MOV_CH_LAYOUT_AAC_6_1, AV_CH_LAYOUT_6POINT1 }, { MOV_CH_LAYOUT_EAC3_6_1_A, AV_CH_LAYOUT_6POINT1 }, { MOV_CH_LAYOUT_DTS_6_1_D, AV_CH_LAYOUT_6POINT1 }, { MOV_CH_LAYOUT_AUDIOUNIT_7_0, AV_CH_LAYOUT_7POINT0 }, { MOV_CH_LAYOUT_AAC_7_0, AV_CH_LAYOUT_7POINT0 }, { MOV_CH_LAYOUT_EAC3_7_0_A, AV_CH_LAYOUT_7POINT0 }, { MOV_CH_LAYOUT_AUDIOUNIT_7_0_FRONT, AV_CH_LAYOUT_7POINT0_FRONT }, { MOV_CH_LAYOUT_DTS_7_0, AV_CH_LAYOUT_7POINT0_FRONT }, { MOV_CH_LAYOUT_EAC3_6_1_B, AV_CH_LAYOUT_5POINT1 | AV_CH_TOP_CENTER }, { MOV_CH_LAYOUT_EAC3_6_1_C, AV_CH_LAYOUT_5POINT1 | AV_CH_TOP_FRONT_CENTER }, { MOV_CH_LAYOUT_DTS_6_1_A, AV_CH_LAYOUT_6POINT1_FRONT }, { MOV_CH_LAYOUT_DTS_6_1_B, AV_CH_LAYOUT_5POINT1_BACK | AV_CH_TOP_CENTER }, { MOV_CH_LAYOUT_DTS_6_1_C, AV_CH_LAYOUT_6POINT1_BACK }, { 0, 0 }, }
Definition at line 246 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_8ch[] [static] |
Definition at line 274 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_9ch[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_DTS_8_1_A, AV_CH_LAYOUT_2_2 | AV_CH_BACK_LEFT | AV_CH_BACK_RIGHT | AV_CH_FRONT_LEFT_OF_CENTER | AV_CH_FRONT_RIGHT_OF_CENTER | AV_CH_LOW_FREQUENCY }, { MOV_CH_LAYOUT_DTS_8_1_B, AV_CH_LAYOUT_7POINT1_WIDE | AV_CH_BACK_CENTER }, { 0, 0 }, }
Definition at line 333 of file mov_chan.c.
struct MovChannelLayoutMap mov_ch_layout_map_misc[] [static] |
Initial value:
{ { MOV_CH_LAYOUT_USE_DESCRIPTIONS, 0 }, { MOV_CH_LAYOUT_USE_BITMAP, 0 }, { MOV_CH_LAYOUT_DISCRETEINORDER, 0 }, { MOV_CH_LAYOUT_UNKNOWN, 0 }, { MOV_CH_LAYOUT_TMH_10_2_STD, 0 }, { MOV_CH_LAYOUT_TMH_10_2_FULL, 0 }, { 0, 0 }, }
Definition at line 141 of file mov_chan.c.
enum MovChannelLayoutTag mov_ch_layouts_aac[] [static] |
Initial value:
{ MOV_CH_LAYOUT_MONO, MOV_CH_LAYOUT_STEREO, MOV_CH_LAYOUT_AC3_1_0_1, MOV_CH_LAYOUT_MPEG_3_0_B, MOV_CH_LAYOUT_ITU_2_1, MOV_CH_LAYOUT_DVD_4, MOV_CH_LAYOUT_QUADRAPHONIC, MOV_CH_LAYOUT_MPEG_4_0_B, MOV_CH_LAYOUT_ITU_2_2, MOV_CH_LAYOUT_AC3_2_1_1, MOV_CH_LAYOUT_DTS_3_1, MOV_CH_LAYOUT_MPEG_5_0_D, MOV_CH_LAYOUT_DVD_18, MOV_CH_LAYOUT_DTS_4_1, MOV_CH_LAYOUT_MPEG_5_1_D, MOV_CH_LAYOUT_AAC_6_0, MOV_CH_LAYOUT_DTS_6_0_A, MOV_CH_LAYOUT_AAC_6_1, MOV_CH_LAYOUT_AAC_7_0, MOV_CH_LAYOUT_DTS_6_1_A, MOV_CH_LAYOUT_AAC_OCTAGONAL, MOV_CH_LAYOUT_MPEG_7_1_B, MOV_CH_LAYOUT_DTS_8_0_A, 0, }
Definition at line 359 of file mov_chan.c.
enum MovChannelLayoutTag mov_ch_layouts_ac3[] [static] |
Initial value:
{ MOV_CH_LAYOUT_MONO, MOV_CH_LAYOUT_STEREO, MOV_CH_LAYOUT_AC3_1_0_1, MOV_CH_LAYOUT_AC3_3_0, MOV_CH_LAYOUT_ITU_2_1, MOV_CH_LAYOUT_DVD_4, MOV_CH_LAYOUT_AC3_3_1, MOV_CH_LAYOUT_ITU_2_2, MOV_CH_LAYOUT_AC3_2_1_1, MOV_CH_LAYOUT_AC3_3_0_1, MOV_CH_LAYOUT_MPEG_5_0_C, MOV_CH_LAYOUT_DVD_18, MOV_CH_LAYOUT_AC3_3_1_1, MOV_CH_LAYOUT_MPEG_5_1_C, 0, }
Definition at line 386 of file mov_chan.c.
enum MovChannelLayoutTag mov_ch_layouts_alac[] [static] |
Initial value:
{ MOV_CH_LAYOUT_MONO, MOV_CH_LAYOUT_STEREO, MOV_CH_LAYOUT_MPEG_3_0_B, MOV_CH_LAYOUT_MPEG_4_0_B, MOV_CH_LAYOUT_MPEG_5_0_D, MOV_CH_LAYOUT_MPEG_5_1_D, MOV_CH_LAYOUT_AAC_6_1, MOV_CH_LAYOUT_MPEG_7_1_B, 0, }
Definition at line 404 of file mov_chan.c.
struct { ... } mov_codec_ch_layouts[] [static] |
Referenced by ff_mov_get_channel_layout_tag().