summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/wifi-display/source/Converter.h
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2012-10-04 11:46:29 -0700
committerAndreas Huber <andih@google.com>2012-10-04 13:31:04 -0700
commit20a5a98667df7ed83e5d9f37e88b1bbdb876d718 (patch)
tree32c82fb97201e62321f1dbbbd8ca577a7f657c48 /media/libstagefright/wifi-display/source/Converter.h
parent95f24dacbde69295fd21bbf683281b277e097bb1 (diff)
downloadframeworks_av-20a5a98667df7ed83e5d9f37e88b1bbdb876d718.zip
frameworks_av-20a5a98667df7ed83e5d9f37e88b1bbdb876d718.tar.gz
frameworks_av-20a5a98667df7ed83e5d9f37e88b1bbdb876d718.tar.bz2
Optionally emit LPCM audio instead of using AAC in wifi display code
related-to-bug: 7248248 May decrease power usage at the cost of significantly increasing audio bitrate. Use "adb shell setprop media.wfd.use-pcm-audio true" to turn it on (must be done before connecting). Change-Id: I7ebeadf3209e01522a2644948287b23d7c383c7e
Diffstat (limited to 'media/libstagefright/wifi-display/source/Converter.h')
-rw-r--r--media/libstagefright/wifi-display/source/Converter.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/media/libstagefright/wifi-display/source/Converter.h b/media/libstagefright/wifi-display/source/Converter.h
index 8d45395..8dfff3d 100644
--- a/media/libstagefright/wifi-display/source/Converter.h
+++ b/media/libstagefright/wifi-display/source/Converter.h
@@ -18,6 +18,8 @@
#define CONVERTER_H_
+#include "WifiDisplaySource.h"
+
#include <media/stagefright/foundation/AHandler.h>
namespace android {
@@ -34,7 +36,8 @@ struct Converter : public AHandler {
Converter(
const sp<AMessage> &notify,
const sp<ALooper> &codecLooper,
- const sp<AMessage> &format);
+ const sp<AMessage> &format,
+ bool usePCMAudio);
status_t initCheck() const;
@@ -73,6 +76,7 @@ private:
sp<ALooper> mCodecLooper;
sp<AMessage> mInputFormat;
bool mIsVideo;
+ bool mIsPCMAudio;
sp<AMessage> mOutputFormat;
sp<MediaCodec> mEncoder;
@@ -92,6 +96,8 @@ private:
bool mInSilentMode;
#endif
+ sp<ABuffer> mPartialAudioAU;
+
status_t initEncoder();
status_t feedEncoderInputBuffers();
@@ -101,6 +107,11 @@ private:
void notifyError(status_t err);
+ // Packetizes raw PCM audio data available in mInputBufferQueue
+ // into a format suitable for transport stream inclusion and
+ // notifies the observer.
+ status_t feedRawAudioInputBuffers();
+
static bool IsSilence(const sp<ABuffer> &accessUnit);
DISALLOW_EVIL_CONSTRUCTORS(Converter);