mirror of
				https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
				synced 2025-11-03 09:01:50 -05:00 
			
		
		
		
	make channel naming somewhat RFC2551 compliant
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@491 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
		
							parent
							
								
									4ad2926eba
								
							
						
					
					
						commit
						f49b09df15
					
				
					 2 changed files with 27 additions and 14 deletions
				
			
		| 
						 | 
					@ -71,34 +71,46 @@ pa_channel_map* pa_channel_map_init_auto(pa_channel_map *m, unsigned channels) {
 | 
				
			||||||
    pa_channel_map_init(m);
 | 
					    pa_channel_map_init(m);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    m->channels = channels;
 | 
					    m->channels = channels;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /* This is somewhat compatible with RFC3551 */
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    switch (channels) {
 | 
					    switch (channels) {
 | 
				
			||||||
        case 1:
 | 
					        case 1:
 | 
				
			||||||
            m->map[0] = PA_CHANNEL_POSITION_MONO;
 | 
					            m->map[0] = PA_CHANNEL_POSITION_MONO;
 | 
				
			||||||
            return m;
 | 
					            return m;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        case 8:
 | 
					 | 
				
			||||||
            m->map[6] = PA_CHANNEL_POSITION_SIDE_LEFT;
 | 
					 | 
				
			||||||
            m->map[7] = PA_CHANNEL_POSITION_SIDE_RIGHT;
 | 
					 | 
				
			||||||
            /* Fall through */
 | 
					 | 
				
			||||||
            
 | 
					 | 
				
			||||||
        case 6:
 | 
					        case 6:
 | 
				
			||||||
 | 
					            m->map[0] = PA_CHANNEL_POSITION_FRONT_LEFT;
 | 
				
			||||||
 | 
					            m->map[1] = PA_CHANNEL_POSITION_SIDE_LEFT;
 | 
				
			||||||
 | 
					            m->map[2] = PA_CHANNEL_POSITION_FRONT_CENTER;
 | 
				
			||||||
 | 
					            m->map[3] = PA_CHANNEL_POSITION_FRONT_RIGHT;
 | 
				
			||||||
 | 
					            m->map[4] = PA_CHANNEL_POSITION_SIDE_RIGHT;
 | 
				
			||||||
            m->map[5] = PA_CHANNEL_POSITION_LFE;
 | 
					            m->map[5] = PA_CHANNEL_POSITION_LFE;
 | 
				
			||||||
            /* Fall through */
 | 
					            return m;
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        case 5:
 | 
					        case 5:
 | 
				
			||||||
            m->map[4] = PA_CHANNEL_POSITION_FRONT_CENTER;
 | 
					            m->map[2] = PA_CHANNEL_POSITION_FRONT_CENTER;
 | 
				
			||||||
            /* Fall through */
 | 
					            m->map[3] = PA_CHANNEL_POSITION_REAR_LEFT;
 | 
				
			||||||
            
 | 
					            m->map[4] = PA_CHANNEL_POSITION_REAR_RIGHT;
 | 
				
			||||||
        case 4:
 | 
					 | 
				
			||||||
            m->map[2] = PA_CHANNEL_POSITION_REAR_LEFT;
 | 
					 | 
				
			||||||
            m->map[3] = PA_CHANNEL_POSITION_REAR_RIGHT;
 | 
					 | 
				
			||||||
            /* Fall through */
 | 
					            /* Fall through */
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        case 2:
 | 
					        case 2:
 | 
				
			||||||
            m->map[0] = PA_CHANNEL_POSITION_FRONT_LEFT;
 | 
					            m->map[0] = PA_CHANNEL_POSITION_FRONT_LEFT;
 | 
				
			||||||
            m->map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT;
 | 
					            m->map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT;
 | 
				
			||||||
            return m;
 | 
					            return m;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        case 3:
 | 
				
			||||||
 | 
					            m->map[0] = PA_CHANNEL_POSITION_LEFT;
 | 
				
			||||||
 | 
					            m->map[1] = PA_CHANNEL_POSITION_RIGHT;
 | 
				
			||||||
 | 
					            m->map[2] = PA_CHANNEL_POSITION_CENTER;
 | 
				
			||||||
 | 
					            return m;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        case 4:
 | 
				
			||||||
 | 
					            m->map[0] = PA_CHANNEL_POSITION_LEFT;
 | 
				
			||||||
 | 
					            m->map[1] = PA_CHANNEL_POSITION_CENTER;
 | 
				
			||||||
 | 
					            m->map[2] = PA_CHANNEL_POSITION_RIGHT;
 | 
				
			||||||
 | 
					            m->map[3] = PA_CHANNEL_POSITION_LFE;
 | 
				
			||||||
 | 
					            return m;
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
            return NULL;
 | 
					            return NULL;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,10 +36,11 @@ typedef enum {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    PA_CHANNEL_POSITION_LEFT,
 | 
					    PA_CHANNEL_POSITION_LEFT,
 | 
				
			||||||
    PA_CHANNEL_POSITION_RIGHT,
 | 
					    PA_CHANNEL_POSITION_RIGHT,
 | 
				
			||||||
 | 
					    PA_CHANNEL_POSITION_CENTER,
 | 
				
			||||||
    PA_CHANNEL_POSITION_FRONT_CENTER,
 | 
					    
 | 
				
			||||||
    PA_CHANNEL_POSITION_FRONT_LEFT = PA_CHANNEL_POSITION_LEFT,
 | 
					    PA_CHANNEL_POSITION_FRONT_LEFT = PA_CHANNEL_POSITION_LEFT,
 | 
				
			||||||
    PA_CHANNEL_POSITION_FRONT_RIGHT = PA_CHANNEL_POSITION_RIGHT,
 | 
					    PA_CHANNEL_POSITION_FRONT_RIGHT = PA_CHANNEL_POSITION_RIGHT,
 | 
				
			||||||
 | 
					    PA_CHANNEL_POSITION_FRONT_CENTER = PA_CHANNEL_POSITION_CENTER,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    PA_CHANNEL_POSITION_REAR_CENTER,
 | 
					    PA_CHANNEL_POSITION_REAR_CENTER,
 | 
				
			||||||
    PA_CHANNEL_POSITION_REAR_LEFT,
 | 
					    PA_CHANNEL_POSITION_REAR_LEFT,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue