summaryrefslogtreecommitdiff
path: root/libavformat/adtsenc.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-06-03 02:56:52 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-06-03 02:56:52 +0200
commitf67309cabe27af33dcfcfb61fe1df39af9b5ab46 (patch)
tree31bf4f48fbbbbdb145f8163f0295266c86ca173d /libavformat/adtsenc.c
parenta128b310efa31ea0f2a3898cd58c0d954c8605be (diff)
parent2439bd86817374362ac8daa701fdb567e14cbe50 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: mpegtsenc: Support LATM packetization for AAC adtsenc: Don't expose the muxer internals to the rest of lavf mpegtsenc: use AVFormatContext for AAC packetization mpegtsenc: use AVERROR() for return codes Conflicts: libavformat/adts.h libavformat/mpegtsenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/adtsenc.c')
-rw-r--r--libavformat/adtsenc.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/libavformat/adtsenc.c b/libavformat/adtsenc.c
index 18a055a1e5..bc2397f028 100644
--- a/libavformat/adtsenc.c
+++ b/libavformat/adtsenc.c
@@ -25,11 +25,21 @@
#include "libavcodec/avcodec.h"
#include "libavcodec/mpeg4audio.h"
#include "avformat.h"
-#include "adts.h"
+
+#define ADTS_HEADER_SIZE 7
+
+typedef struct {
+ int write_adts;
+ int objecttype;
+ int sample_rate_index;
+ int channel_conf;
+ int pce_size;
+ uint8_t pce_data[MAX_PCE_SIZE];
+} ADTSContext;
#define ADTS_MAX_FRAME_BYTES ((1 << 13) - 1)
-int ff_adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, uint8_t *buf, int size)
+static int adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, uint8_t *buf, int size)
{
GetBitContext gb;
PutBitContext pb;
@@ -84,14 +94,14 @@ static int adts_write_header(AVFormatContext *s)
AVCodecContext *avc = s->streams[0]->codec;
if (avc->extradata_size > 0 &&
- ff_adts_decode_extradata(s, adts, avc->extradata, avc->extradata_size) < 0)
+ adts_decode_extradata(s, adts, avc->extradata, avc->extradata_size) < 0)
return -1;
return 0;
}
-int ff_adts_write_frame_header(ADTSContext *ctx,
- uint8_t *buf, int size, int pce_size)
+static int adts_write_frame_header(ADTSContext *ctx,
+ uint8_t *buf, int size, int pce_size)
{
PutBitContext pb;
@@ -137,7 +147,7 @@ static int adts_write_packet(AVFormatContext *s, AVPacket *pkt)
if (!pkt->size)
return 0;
if (adts->write_adts) {
- int err = ff_adts_write_frame_header(adts, buf, pkt->size,
+ int err = adts_write_frame_header(adts, buf, pkt->size,
adts->pce_size);
if (err < 0)
return err;