pa_buffer_attr buffer_attr;\r
buffer_attr.fragsize = bufferBytes;\r
buffer_attr.maxlength = -1;\r
-\r
pah->s_rec = pa_simple_new( NULL, streamName.c_str(), PA_STREAM_RECORD, NULL, "Record", &ss, NULL, &buffer_attr, &error );\r
if ( !pah->s_rec ) {\r
errorText_ = "RtApiPulse::probeDeviceOpen: error connecting input to PulseAudio server.";\r
}\r
break;\r
case OUTPUT:\r
- pah->s_play = pa_simple_new( NULL, streamName.c_str(), PA_STREAM_PLAYBACK, NULL, "Playback", &ss, NULL, NULL, &error );\r
+ /* XXX: hard-coded for DCP-o-matic */\r
+ pa_channel_map map;\r
+ pa_channel_map_init(&map);\r
+ /* XXX: need to check 7.1 */\r
+ map.channels = 6;\r
+ map.map[0] = PA_CHANNEL_POSITION_FRONT_LEFT;\r
+ map.map[1] = PA_CHANNEL_POSITION_FRONT_RIGHT;\r
+ map.map[2] = PA_CHANNEL_POSITION_FRONT_CENTER;\r
+ map.map[3] = PA_CHANNEL_POSITION_LFE;\r
+ map.map[4] = PA_CHANNEL_POSITION_REAR_LEFT;\r
+ map.map[5] = PA_CHANNEL_POSITION_REAR_RIGHT;\r
+\r
+ pah->s_play = pa_simple_new( NULL, streamName.c_str(), PA_STREAM_PLAYBACK, NULL, "Playback", &ss, &map, NULL, &error );\r
if ( !pah->s_play ) {\r
errorText_ = "RtApiPulse::probeDeviceOpen: error connecting output to PulseAudio server.";\r
goto error;\r