summaryrefslogtreecommitdiffstats
path: root/media/libaah_rtp/aah_tx_packet.h
diff options
context:
space:
mode:
authorJohn Grossman <johngro@google.com>2012-02-18 17:46:40 -0800
committerJohn Grossman <johngro@google.com>2012-03-01 14:41:35 -0800
commit4b77dc28097288cb062fce6bf5de0fb3394877a9 (patch)
tree8f5b8bfaf308065aef9999dcb1b2950ef8656166 /media/libaah_rtp/aah_tx_packet.h
parentf08d7d0ee19c225d5b67fb49046290adfd9ab4bc (diff)
downloadframeworks_av-4b77dc28097288cb062fce6bf5de0fb3394877a9.zip
frameworks_av-4b77dc28097288cb062fce6bf5de0fb3394877a9.tar.gz
frameworks_av-4b77dc28097288cb062fce6bf5de0fb3394877a9.tar.bz2
LibAAH_RTP: Add support for AAC in MP4.
Cherry picked from Ie8298eb9d253fc6ede448da87660a60d23170987 and conflicts fixed by hand. Change-Id: I6f0a59357ba1a3d57caf67d2eb0ade7486723e7b Signed-off-by: John Grossman <johngro@google.com>
Diffstat (limited to 'media/libaah_rtp/aah_tx_packet.h')
-rw-r--r--media/libaah_rtp/aah_tx_packet.h32
1 files changed, 27 insertions, 5 deletions
diff --git a/media/libaah_rtp/aah_tx_packet.h b/media/libaah_rtp/aah_tx_packet.h
index 833803e..7f78ea0 100644
--- a/media/libaah_rtp/aah_tx_packet.h
+++ b/media/libaah_rtp/aah_tx_packet.h
@@ -25,7 +25,7 @@
namespace android {
class TRTPPacket : public RefBase {
- protected:
+ public:
enum TRTPHeaderType {
kHeaderTypeAudio = 1,
kHeaderTypeVideo = 2,
@@ -33,6 +33,12 @@ class TRTPPacket : public RefBase {
kHeaderTypeControl = 4,
};
+ enum TRTPPayloadFlags {
+ kFlag_TSTransformPresent = 0x02,
+ kFlag_TSValid = 0x01,
+ };
+
+ protected:
TRTPPacket(TRTPHeaderType headerType)
: mIsPacked(false)
, mVersion(2)
@@ -121,6 +127,14 @@ class TRTPPacket : public RefBase {
class TRTPAudioPacket : public TRTPPacket {
public:
+ enum AudioPayloadFlags {
+ kFlag_AuxLengthPresent = 0x10,
+ kFlag_RandomAccessPoint = 0x08,
+ kFlag_Dropable = 0x04,
+ kFlag_Discontinuity = 0x02,
+ kFlag_EndOfStream = 0x01,
+ };
+
TRTPAudioPacket()
: TRTPPacket(kHeaderTypeAudio)
, mCodecType(kCodecInvalid)
@@ -129,13 +143,17 @@ class TRTPAudioPacket : public TRTPPacket {
, mDiscontinuity(false)
, mEndOfStream(false)
, mVolume(0)
- , mAccessUnitData(NULL) { }
+ , mAccessUnitData(NULL)
+ , mAccessUnitLen(0)
+ , mAuxData(NULL)
+ , mAuxDataLen(0) { }
enum TRTPAudioCodecType {
kCodecInvalid = 0,
kCodecPCMBigEndian = 1,
kCodecPCMLittleEndian = 2,
kCodecMPEG1Audio = 3,
+ kCodecAACAudio = 4,
};
void setCodecType(TRTPAudioCodecType val);
@@ -144,7 +162,8 @@ class TRTPAudioPacket : public TRTPPacket {
void setDiscontinuity(bool val);
void setEndOfStream(bool val);
void setVolume(uint8_t val);
- void setAccessUnitData(void* data, int len);
+ void setAccessUnitData(const void* data, size_t len);
+ void setAuxData(const void* data, size_t len);
virtual bool pack();
@@ -158,8 +177,11 @@ class TRTPAudioPacket : public TRTPPacket {
bool mDiscontinuity;
bool mEndOfStream;
uint8_t mVolume;
- void* mAccessUnitData;
- int mAccessUnitLen;
+
+ const void* mAccessUnitData;
+ size_t mAccessUnitLen;
+ const void* mAuxData;
+ size_t mAuxDataLen;
DISALLOW_EVIL_CONSTRUCTORS(TRTPAudioPacket);
};