Use right number of channels on WP8

This commit is contained in:
bossiel 2013-09-11 10:42:24 +00:00
parent fe6914e5a7
commit 3d44b20846
2 changed files with 3 additions and 3 deletions

View File

@ -407,8 +407,8 @@ static int tdav_session_audio_start(tmedia_session_t* self)
uint32_t record_frame_size_samples = TMEDIA_CODEC_PCM_FRAME_SIZE_AUDIO_ENCODING(audio->encoder.codec);
uint32_t record_sampling_rate = TMEDIA_CODEC_RATE_ENCODING(audio->encoder.codec);
uint32_t playback_frame_size_samples = (base->consumer && base->consumer->audio.ptime && base->consumer->audio.out.rate)
? ((base->consumer->audio.ptime * base->consumer->audio.out.rate) / 1000)
uint32_t playback_frame_size_samples = (base->consumer && base->consumer->audio.ptime && base->consumer->audio.out.rate && base->consumer->audio.out.channels)
? ((base->consumer->audio.ptime * base->consumer->audio.out.rate) / 1000) * base->consumer->audio.out.channels
: TMEDIA_CODEC_PCM_FRAME_SIZE_AUDIO_DECODING(audio->encoder.codec);
uint32_t playback_sampling_rate = (base->consumer && base->consumer->audio.out.rate)
? base->consumer->audio.out.rate

View File

@ -370,7 +370,7 @@ int Doubango::VoIP::AudioRender::Prepare(tdav_consumer_wasapi_t* wasapi, const t
}
int packetperbuffer = (1000 / TMEDIA_CONSUMER(wasapi)->audio.ptime);
m_ring.chunck.size = wfx.nSamplesPerSec * (wfx.wBitsPerSample >> 3) / packetperbuffer;
m_ring.chunck.size = (TMEDIA_CONSUMER(wasapi)->audio.out.rate * (TMEDIA_CONSUMER(wasapi)->audio.bits_per_sample >> 3) / packetperbuffer) * TMEDIA_CONSUMER(wasapi)->audio.out.channels;
m_ring.size = TDAV_WASAPI_CONSUMER_NOTIF_POS_COUNT * m_ring.chunck.size;
if(!(m_ring.chunck.buffer = tsk_realloc(m_ring.chunck.buffer, m_ring.chunck.size))){
m_ring.size = 0;