mirror of
				https://github.com/nyanmisaka/ffmpeg-rockchip.git
				synced 2025-10-31 04:26:37 +08:00 
			
		
		
		
	avutil/channel_layout: add a 7.1.4 channel layout
Mapping to ITU-R BS.2051-3 "Sound System J" and ITU-R BS.1196-8 "Channel Configuration 19". Signed-off-by: Will Wolcott <wwolcott@netflix.com> Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
		 Will Wolcott
					Will Wolcott
				
			
				
					committed by
					
						 James Almer
						James Almer
					
				
			
			
				
	
			
			
			 James Almer
						James Almer
					
				
			
						parent
						
							a41c4b923d
						
					
				
				
					commit
					e9397ae054
				
			| @@ -723,6 +723,8 @@ FL+FR+BL+BR+TFL+TFR+TBL+TBR | |||||||
| FL+FR+FC+LFE+BL+BR+TFL+TFR+TBL+TBR | FL+FR+FC+LFE+BL+BR+TFL+TFR+TBL+TBR | ||||||
| @item 7.1.2 | @item 7.1.2 | ||||||
| FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR | FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR | ||||||
|  | @item 7.1.4 | ||||||
|  | FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR+TBL+TBR | ||||||
| @item hexadecagonal | @item hexadecagonal | ||||||
| FL+FR+FC+BL+BR+BC+SL+SR+WL+WR+TBL+TBR+TBC+TFC+TFL+TFR | FL+FR+FC+BL+BR+BC+SL+SR+WL+WR+TBL+TBR+TBC+TFC+TFL+TFR | ||||||
| @item downmix | @item downmix | ||||||
|   | |||||||
| @@ -205,6 +205,7 @@ static const struct channel_layout_name channel_layout_map[] = { | |||||||
|     { "cube",           AV_CHANNEL_LAYOUT_CUBE                }, |     { "cube",           AV_CHANNEL_LAYOUT_CUBE                }, | ||||||
|     { "5.1.4",          AV_CHANNEL_LAYOUT_5POINT1POINT4_BACK  }, |     { "5.1.4",          AV_CHANNEL_LAYOUT_5POINT1POINT4_BACK  }, | ||||||
|     { "7.1.2",          AV_CHANNEL_LAYOUT_7POINT1POINT2       }, |     { "7.1.2",          AV_CHANNEL_LAYOUT_7POINT1POINT2       }, | ||||||
|  |     { "7.1.4",          AV_CHANNEL_LAYOUT_7POINT1POINT4_BACK  }, | ||||||
|     { "hexadecagonal",  AV_CHANNEL_LAYOUT_HEXADECAGONAL       }, |     { "hexadecagonal",  AV_CHANNEL_LAYOUT_HEXADECAGONAL       }, | ||||||
|     { "downmix",        AV_CHANNEL_LAYOUT_STEREO_DOWNMIX,     }, |     { "downmix",        AV_CHANNEL_LAYOUT_STEREO_DOWNMIX,     }, | ||||||
|     { "22.2",           AV_CHANNEL_LAYOUT_22POINT2,           }, |     { "22.2",           AV_CHANNEL_LAYOUT_22POINT2,           }, | ||||||
|   | |||||||
| @@ -237,6 +237,7 @@ enum AVChannelOrder { | |||||||
| #define AV_CH_LAYOUT_CUBE              (AV_CH_LAYOUT_QUAD|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT) | #define AV_CH_LAYOUT_CUBE              (AV_CH_LAYOUT_QUAD|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT) | ||||||
| #define AV_CH_LAYOUT_5POINT1POINT4_BACK (AV_CH_LAYOUT_5POINT1POINT2_BACK|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT) | #define AV_CH_LAYOUT_5POINT1POINT4_BACK (AV_CH_LAYOUT_5POINT1POINT2_BACK|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT) | ||||||
| #define AV_CH_LAYOUT_7POINT1POINT2     (AV_CH_LAYOUT_7POINT1|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT) | #define AV_CH_LAYOUT_7POINT1POINT2     (AV_CH_LAYOUT_7POINT1|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT) | ||||||
|  | #define AV_CH_LAYOUT_7POINT1POINT4_BACK (AV_CH_LAYOUT_7POINT1POINT2|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT) | ||||||
| #define AV_CH_LAYOUT_HEXADECAGONAL     (AV_CH_LAYOUT_OCTAGONAL|AV_CH_WIDE_LEFT|AV_CH_WIDE_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT) | #define AV_CH_LAYOUT_HEXADECAGONAL     (AV_CH_LAYOUT_OCTAGONAL|AV_CH_WIDE_LEFT|AV_CH_WIDE_RIGHT|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT) | ||||||
| #define AV_CH_LAYOUT_STEREO_DOWNMIX    (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT) | #define AV_CH_LAYOUT_STEREO_DOWNMIX    (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT) | ||||||
| #define AV_CH_LAYOUT_22POINT2          (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER|AV_CH_BACK_CENTER|AV_CH_LOW_FREQUENCY_2|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_CENTER|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_SIDE_LEFT|AV_CH_TOP_SIDE_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_BOTTOM_FRONT_CENTER|AV_CH_BOTTOM_FRONT_LEFT|AV_CH_BOTTOM_FRONT_RIGHT) | #define AV_CH_LAYOUT_22POINT2          (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER|AV_CH_BACK_CENTER|AV_CH_LOW_FREQUENCY_2|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT|AV_CH_TOP_FRONT_LEFT|AV_CH_TOP_FRONT_RIGHT|AV_CH_TOP_FRONT_CENTER|AV_CH_TOP_CENTER|AV_CH_TOP_BACK_LEFT|AV_CH_TOP_BACK_RIGHT|AV_CH_TOP_SIDE_LEFT|AV_CH_TOP_SIDE_RIGHT|AV_CH_TOP_BACK_CENTER|AV_CH_BOTTOM_FRONT_CENTER|AV_CH_BOTTOM_FRONT_LEFT|AV_CH_BOTTOM_FRONT_RIGHT) | ||||||
| @@ -407,6 +408,7 @@ typedef struct AVChannelLayout { | |||||||
| #define AV_CHANNEL_LAYOUT_CUBE              AV_CHANNEL_LAYOUT_MASK(8,  AV_CH_LAYOUT_CUBE) | #define AV_CHANNEL_LAYOUT_CUBE              AV_CHANNEL_LAYOUT_MASK(8,  AV_CH_LAYOUT_CUBE) | ||||||
| #define AV_CHANNEL_LAYOUT_5POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_5POINT1POINT4_BACK) | #define AV_CHANNEL_LAYOUT_5POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_5POINT1POINT4_BACK) | ||||||
| #define AV_CHANNEL_LAYOUT_7POINT1POINT2     AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_7POINT1POINT2) | #define AV_CHANNEL_LAYOUT_7POINT1POINT2     AV_CHANNEL_LAYOUT_MASK(10, AV_CH_LAYOUT_7POINT1POINT2) | ||||||
|  | #define AV_CHANNEL_LAYOUT_7POINT1POINT4_BACK AV_CHANNEL_LAYOUT_MASK(12, AV_CH_LAYOUT_7POINT1POINT4_BACK) | ||||||
| #define AV_CHANNEL_LAYOUT_HEXADECAGONAL     AV_CHANNEL_LAYOUT_MASK(16, AV_CH_LAYOUT_HEXADECAGONAL) | #define AV_CHANNEL_LAYOUT_HEXADECAGONAL     AV_CHANNEL_LAYOUT_MASK(16, AV_CH_LAYOUT_HEXADECAGONAL) | ||||||
| #define AV_CHANNEL_LAYOUT_STEREO_DOWNMIX    AV_CHANNEL_LAYOUT_MASK(2,  AV_CH_LAYOUT_STEREO_DOWNMIX) | #define AV_CHANNEL_LAYOUT_STEREO_DOWNMIX    AV_CHANNEL_LAYOUT_MASK(2,  AV_CH_LAYOUT_STEREO_DOWNMIX) | ||||||
| #define AV_CHANNEL_LAYOUT_22POINT2          AV_CHANNEL_LAYOUT_MASK(24, AV_CH_LAYOUT_22POINT2) | #define AV_CHANNEL_LAYOUT_22POINT2          AV_CHANNEL_LAYOUT_MASK(24, AV_CH_LAYOUT_22POINT2) | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ octagonal      FL+FR+FC+BL+BR+BC+SL+SR | |||||||
| cube           FL+FR+BL+BR+TFL+TFR+TBL+TBR | cube           FL+FR+BL+BR+TFL+TFR+TBL+TBR | ||||||
| 5.1.4          FL+FR+FC+LFE+BL+BR+TFL+TFR+TBL+TBR | 5.1.4          FL+FR+FC+LFE+BL+BR+TFL+TFR+TBL+TBR | ||||||
| 7.1.2          FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR | 7.1.2          FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR | ||||||
|  | 7.1.4          FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR+TBL+TBR | ||||||
| hexadecagonal  FL+FR+FC+BL+BR+BC+SL+SR+TFL+TFC+TFR+TBL+TBC+TBR+WL+WR | hexadecagonal  FL+FR+FC+BL+BR+BC+SL+SR+TFL+TFC+TFR+TBL+TBC+TBR+WL+WR | ||||||
| downmix        DL+DR | downmix        DL+DR | ||||||
| 22.2           FL+FR+FC+LFE+BL+BR+FLC+FRC+BC+SL+SR+TC+TFL+TFC+TFR+TBL+TBC+TBR+LFE2+TSL+TSR+BFC+BFL+BFR | 22.2           FL+FR+FC+LFE+BL+BR+FLC+FRC+BC+SL+SR+TC+TFL+TFC+TFR+TBL+TBC+TBR+LFE2+TSL+TSR+BFC+BFL+BFR | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user