Home | History | Annotate | Download | only in audio

Lines Matching defs:outputDesc

444             AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor();
445 outputDesc->mDevice = mTestDevice;
446 outputDesc->mSamplingRate = mTestSamplingRate;
447 outputDesc->mFormat = mTestFormat;
448 outputDesc->mChannels = mTestChannels;
449 outputDesc->mLatency = mTestLatencyMs;
450 outputDesc->mFlags = (AudioSystem::output_flags)(mDirectOutput ? AudioSystem::OUTPUT_FLAG_DIRECT : 0);
451 outputDesc->mRefCount[stream] = 0;
452 mTestOutputs[mCurOutput] = mpClientInterface->openOutput(&outputDesc->mDevice,
453 &outputDesc->mSamplingRate,
454 &outputDesc->mFormat,
455 &outputDesc->mChannels,
456 &outputDesc->mLatency,
457 outputDesc->mFlags);
462 addOutput(mTestOutputs[mCurOutput], outputDesc);
473 AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor();
474 outputDesc->mDevice = device;
475 outputDesc->mSamplingRate = samplingRate;
476 outputDesc->mFormat = format;
477 outputDesc->mChannels = channels;
478 outputDesc->mLatency = 0;
479 outputDesc->mFlags = (AudioSystem::output_flags)(flags | AudioSystem::OUTPUT_FLAG_DIRECT);
480 outputDesc->mRefCount[stream] = 0;
481 outputDesc->mStopTime[stream] = 0;
482 output = mpClientInterface->openOutput(&outputDesc->mDevice,
483 &outputDesc->mSamplingRate,
484 &outputDesc->mFormat,
485 &outputDesc->mChannels,
486 &outputDesc->mLatency,
487 outputDesc->mFlags);
491 (samplingRate != 0 && samplingRate != outputDesc->mSamplingRate) ||
492 (format != 0 && format != outputDesc->mFormat) ||
493 (channels != 0 && channels != outputDesc->mChannels)) {
499 delete outputDesc;
502 addOutput(output, outputDesc);
561 AudioOutputDescriptor *outputDesc = mOutputs.valueAt(index);
574 outputDesc->changeRefCount(stream, 1);
576 uint32_t prevDevice = outputDesc->mDevice;
585 checkAndSetVolume(stream, mStreams[stream].mIndexCur, output, outputDesc->device());
590 prevDevice != outputDesc->mDevice) {
591 usleep(outputDesc->mLatency*4*1000);
608 AudioOutputDescriptor *outputDesc = mOutputs.valueAt(index);
616 if (outputDesc->mRefCount[stream] > 0) {
618 outputDesc->changeRefCount(stream, -1);
620 outputDesc->mStopTime[stream] = systemTime();
622 setOutputDevice(output, getNewDevice(output), false, outputDesc->mLatency*2);
655 AudioOutputDescriptor *outputDesc = mOutputs.valueAt(index);
656 if (outputDesc->refCount() == 0) {
1090 AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor();
1091 outputDesc->mDevice = (uint32_t)AudioSystem::DEVICE_OUT_SPEAKER;
1092 mHardwareOutput = mpClientInterface->openOutput(&outputDesc->mDevice,
1093 &outputDesc->mSamplingRate,
1094 &outputDesc->mFormat,
1095 &outputDesc->mChannels,
1096 &outputDesc->mLatency,
1097 outputDesc->mFlags);
1101 outputDesc->mSamplingRate, outputDesc->mFormat, outputDesc->mChannels);
1103 addOutput(mHardwareOutput, outputDesc);
1256 AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor();
1257 outputDesc->mDevice = (uint32_t)AudioSystem::DEVICE_OUT_SPEAKER;
1258 mHardwareOutput = mpClientInterface->openOutput(&outputDesc->mDevice,
1259 &outputDesc->mSamplingRate,
1260 &outputDesc->mFormat,
1261 &outputDesc->mChannels,
1262 outputDesc->mLatency,
1263 outputDesc->mFlags);
1266 outputDesc->mSamplingRate, outputDesc->mFormat, outputDesc->mChannels);
1271 addOutput(mHardwareOutput, outputDesc);
1303 void AudioPolicyManagerBase::addOutput(audio_io_handle_t id, AudioOutputDescriptor *outputDesc)
1305 outputDesc->mId = id;
1306 mOutputs.add(id, outputDesc);
1316 AudioOutputDescriptor *outputDesc = new AudioOutputDescriptor();
1317 outputDesc->mDevice = device;
1318 mA2dpOutput = mpClientInterface->openOutput(&outputDesc->mDevice,
1319 &outputDesc->mSamplingRate,
1320 &outputDesc->mFormat,
1321 &outputDesc->mChannels,
1322 &outputDesc->mLatency,
1323 outputDesc->mFlags);
1326 addOutput(mA2dpOutput, outputDesc);
1349 dupOutputDesc->mSamplingRate = outputDesc->mSamplingRate;
1350 dupOutputDesc->mFormat = outputDesc->mFormat;
1351 dupOutputDesc->mChannels = outputDesc->mChannels;
1352 dupOutputDesc->mLatency = outputDesc->mLatency;
1362 delete outputDesc;
1367 delete outputDesc;
1561 AudioOutputDescriptor *outputDesc = mOutputs.valueFor(output);
1573 if (outputDesc->isUsedByStrategy(STRATEGY_ENFORCED_AUDIBLE)) {
1576 outputDesc->isUsedByStrategy(STRATEGY_PHONE)) {
1578 } else if (outputDesc->isUsedByStrategy(STRATEGY_SONIFICATION)) {
1580 } else if (outputDesc->isUsedByStrategy(STRATEGY_MEDIA)) {
1582 } else if (outputDesc->isUsedByStrategy(STRATEGY_DTMF)) {
1798 AudioOutputDescriptor *outputDesc = mOutputs.valueFor(output);
1801 if (outputDesc->isDuplicated()) {
1802 setOutputDevice(outputDesc->mOutput1->mId, device, force, delayMs);
1803 setOutputDevice(outputDesc->mOutput2->mId, device, force, delayMs);
1815 uint32_t prevDevice = (uint32_t)outputDesc->device();
1825 outputDesc->mDevice = device;
1832 usleep(outputDesc->mLatency*8*1000);
2051 AudioOutputDescriptor *outputDesc = mOutputs.valueFor(output);
2055 device = outputDesc->device();
2085 if (outputDesc->mRefCount[AudioSystem::MUSIC] || mLimitRingtoneVolume) {
2180 AudioOutputDescriptor *outputDesc = mOutputs.valueFor(output);
2182 LOGV("setStreamMute() stream %d, mute %d, output %d, mMuteCount %d", stream, on, output, outputDesc->mMuteCount[stream]);
2185 if (outputDesc->mMuteCount[stream] == 0) {
2187 checkAndSetVolume(stream, 0, output, outputDesc->device(), delayMs);
2191 outputDesc->mMuteCount[stream]++;
2193 if (outputDesc->mMuteCount[stream] == 0) {
2197 if (--outputDesc->mMuteCount[stream] == 0) {
2198 checkAndSetVolume(stream, streamDesc.mIndexCur, output, outputDesc->device(), delayMs);
2213 AudioOutputDescriptor *outputDesc = mOutputs.valueFor(mHardwareOutput);
2215 stream, starting, outputDesc->mDevice, stateChange);
2216 if (outputDesc->mRefCount[stream]) {
2219 muteCount = outputDesc->mRefCount[stream];
2228 if (outputDesc->device() & getDeviceForStrategy(STRATEGY_PHONE)) {