From fda885c70312715184a8b8a00c88f854c5e71021 Mon Sep 17 00:00:00 2001 From: =?utf8?q?M=C3=A5ns=20Rullg=C3=A5rd?= Date: Wed, 8 Feb 2006 00:51:55 +0000 Subject: [PATCH] read/write adts aac Originally committed as revision 4955 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/raw.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/libavformat/raw.c b/libavformat/raw.c index 7628b237c..fc01dbbb5 100644 --- a/libavformat/raw.c +++ b/libavformat/raw.c @@ -256,6 +256,23 @@ static int dts_read_header(AVFormatContext *s, return 0; } +/* aac read */ +static int aac_read_header(AVFormatContext *s, + AVFormatParameters *ap) +{ + AVStream *st; + + st = av_new_stream(s, 0); + if (!st) + return AVERROR_NOMEM; + + st->codec->codec_type = CODEC_TYPE_AUDIO; + st->codec->codec_id = CODEC_ID_AAC; + st->need_parsing = 1; + /* the parameters will be extracted from the compressed bitstream */ + return 0; +} + /* mpeg1/h263 input */ static int video_read_header(AVFormatContext *s, AVFormatParameters *ap) @@ -389,6 +406,32 @@ AVInputFormat dts_iformat = { .extensions = "dts", }; +AVInputFormat aac_iformat = { + "aac", + "ADTS AAC", + 0, + NULL, + aac_read_header, + raw_read_partial_packet, + raw_read_close, + .extensions = "aac", +}; + +#ifdef CONFIG_MUXERS +AVOutputFormat aac_oformat = { + "aac", + "ADTS AAC", + "audio/aac", + "aac", + 0, + CODEC_ID_AAC, + 0, + raw_write_header, + raw_write_packet, + raw_write_trailer, +}; +#endif + AVInputFormat h261_iformat = { "h261", "raw h261", @@ -739,6 +782,9 @@ int raw_init(void) av_register_input_format(&ac3_iformat); av_register_output_format(&ac3_oformat); + av_register_input_format(&aac_iformat); + av_register_output_format(&aac_oformat); + av_register_input_format(&dts_iformat); av_register_input_format(&h261_iformat); -- 2.34.1