diff options
author | Steve Kondik <steve@cyngn.com> | 2015-12-14 02:54:24 -0800 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2015-12-14 02:58:56 -0800 |
commit | 23e9ce412425be12b8b637fff5886703f753c36e (patch) | |
tree | a840a7030de14a3337fd078ce7c5c4884cfc1391 /media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp | |
parent | dc5f0eb0bb08885f63a97a111b02e234efc5c413 (diff) | |
download | frameworks_av-23e9ce412425be12b8b637fff5886703f753c36e.zip frameworks_av-23e9ce412425be12b8b637fff5886703f753c36e.tar.gz frameworks_av-23e9ce412425be12b8b637fff5886703f753c36e.tar.bz2 |
nuplayer: PCM offload fixes
* Fix PCM offload when passthrough isn't used (OMX decoder)
* Fix resume of PCM offload after pause timeout
Change-Id: I742eafd6ae8656fb214ba6b81cc63af57590c28c
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp index 4135426..d1b1db2 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp +++ b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.cpp @@ -1772,8 +1772,10 @@ status_t NuPlayer::Renderer::onOpenAudioSink( onDisableOffloadAudio(); } else { audioFormat = AVUtils::get()->updateAudioFormat(audioFormat, format); - bitWidth = AVUtils::get()->getAudioSampleBits(format); + ALOGV("Mime \"%s\" mapped to audio_format 0x%x", + mime.c_str(), audioFormat); + int avgBitRate = -1; format->findInt32("bitrate", &avgBitRate); @@ -1793,6 +1795,8 @@ status_t NuPlayer::Renderer::onOpenAudioSink( } } + ALOGV("onOpenAudioSink: %s", format->debugString().c_str()); + int32_t offloadBufferSize = AVUtils::get()->getAudioMaxInputBufferSize( audioFormat, @@ -1839,9 +1843,6 @@ status_t NuPlayer::Renderer::onOpenAudioSink( if (err == OK) { err = mAudioSink->setPlaybackRate(mPlaybackSettings); - } - - if (err == OK) { // If the playback is offloaded to h/w, we pass // the HAL some metadata information. // We don't want to do this for PCM because it @@ -1853,6 +1854,7 @@ status_t NuPlayer::Renderer::onOpenAudioSink( err = mAudioSink->start(); } ALOGV_IF(err == OK, "openAudioSink: offload succeeded"); + mFlags |= FLAG_OFFLOAD_AUDIO; } if (err != OK) { // Clean up, fall back to non offload mode. |