Align Boghe-WP8 with Doubango r910

This commit is contained in:
bossiel 2013-06-25 22:08:28 +00:00
parent e8bf226449
commit c4272391b6
2 changed files with 20 additions and 7 deletions

View File

@ -123,9 +123,16 @@ static int tdav_consumer_wasapi_prepare(tmedia_consumer_t* self, const tmedia_co
return -1;
}
TMEDIA_CONSUMER(wasapi)->audio.ptime = codec->plugin->audio.ptime;
TMEDIA_CONSUMER(wasapi)->audio.in.channels = TMEDIA_CONSUMER(wasapi)->audio.out.channels = codec->plugin->audio.channels;
TMEDIA_CONSUMER(wasapi)->audio.in.rate = TMEDIA_CONSUMER(wasapi)->audio.out.rate = codec->plugin->rate;
TMEDIA_CONSUMER(wasapi)->audio.ptime = TMEDIA_CODEC_PTIME_AUDIO_DECODING(codec);
TMEDIA_CONSUMER(wasapi)->audio.in.channels = TMEDIA_CODEC_CHANNELS_AUDIO_DECODING(codec);
TMEDIA_CONSUMER(wasapi)->audio.in.rate = TMEDIA_CODEC_RATE_DECODING(codec);
TSK_DEBUG_INFO("WASAPI consumer: in.channels=%d, out.channles=%d, in.rate=%d, out.rate=%d, ptime=%d",
TMEDIA_CONSUMER(wasapi)->audio.in.channels,
TMEDIA_CONSUMER(wasapi)->audio.out.channels,
TMEDIA_CONSUMER(wasapi)->audio.in.rate,
TMEDIA_CONSUMER(wasapi)->audio.out.rate,
TMEDIA_CONSUMER(wasapi)->audio.ptime);
return wasapi->AudioRender->Prepare(wasapi, codec);
}

View File

@ -144,9 +144,15 @@ static int tdav_producer_wasapi_prepare(tmedia_producer_t* self, const tmedia_co
return -1;
}
TMEDIA_PRODUCER(wasapi)->audio.channels = codec->plugin->audio.channels;
TMEDIA_PRODUCER(wasapi)->audio.rate = codec->plugin->rate;
TMEDIA_PRODUCER(wasapi)->audio.ptime = codec->plugin->audio.ptime;
/* codec should have ptime */
TMEDIA_PRODUCER(wasapi)->audio.channels = TMEDIA_CODEC_CHANNELS_AUDIO_ENCODING(codec);
TMEDIA_PRODUCER(wasapi)->audio.rate = TMEDIA_CODEC_RATE_ENCODING(codec);
TMEDIA_PRODUCER(wasapi)->audio.ptime = TMEDIA_CODEC_PTIME_AUDIO_ENCODING(codec);
TSK_DEBUG_INFO("WASAPI producer: channels=%d, rate=%d, ptime=%d",
TMEDIA_PRODUCER(wasapi)->audio.channels,
TMEDIA_PRODUCER(wasapi)->audio.rate,
TMEDIA_PRODUCER(wasapi)->audio.ptime);
return wasapi->audioCapture->Prepare(wasapi, codec);
}
@ -374,7 +380,7 @@ int Doubango::VoIP::AudioCapture::Prepare(tdav_producer_wasapi_t* wasapi, const
WASAPI_SET_ERROR(-14);
}
int packetperbuffer = (1000 / codec->plugin->audio.ptime);
int packetperbuffer = (1000 / TMEDIA_PRODUCER(wasapi)->audio.ptime);
m_ring.chunck.size = wfx.nSamplesPerSec * (wfx.wBitsPerSample >> 3) / packetperbuffer;
TSK_DEBUG_INFO("#WASAPI: Audio producer ring chunk size = %u", m_ring.chunck.size);
// allocate our chunck buffer