summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_aac.c
diff options
context:
space:
mode:
authorrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-05 19:57:47 +0000
committerrtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-05 19:57:47 +0000
commitcd68e1618b17b525bd49757b2f5e245a6cb1a495 (patch)
treec67656ff189654b818ade76a8f5bd0b7d1bf7f91 /libmpdemux/demux_aac.c
parentadfe956dc385d6588eb2ab74828f9a905821adf4 (diff)
downloadmpv-cd68e1618b17b525bd49757b2f5e245a6cb1a495.tar.bz2
mpv-cd68e1618b17b525bd49757b2f5e245a6cb1a495.tar.xz
Demuxer modularization
Demuxer selection by name with -demuxer command (bakward compatible) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16176 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_aac.c')
-rw-r--r--libmpdemux/demux_aac.c32
1 files changed, 24 insertions, 8 deletions
diff --git a/libmpdemux/demux_aac.c b/libmpdemux/demux_aac.c
index fd97142155..d1215450b3 100644
--- a/libmpdemux/demux_aac.c
+++ b/libmpdemux/demux_aac.c
@@ -64,7 +64,7 @@ static int demux_aac_init(demuxer_t *demuxer)
return 1;
}
-void demux_close_aac(demuxer_t *demuxer)
+static void demux_close_aac(demuxer_t *demuxer)
{
aac_priv_t *priv = (aac_priv_t *) demuxer->priv;
@@ -79,8 +79,8 @@ void demux_close_aac(demuxer_t *demuxer)
return;
}
-/// returns 1 if it finds 8 ADTS frames in 32768 bytes, 0 otherwise
-int demux_aac_probe(demuxer_t *demuxer)
+/// returns DEMUXER_TYPE_AAC if it finds 8 ADTS frames in 32768 bytes, 0 otherwise
+static int demux_aac_probe(demuxer_t *demuxer)
{
int cnt = 0, c, len, srate, num;
off_t init, probed;
@@ -122,14 +122,14 @@ int demux_aac_probe(demuxer_t *demuxer)
goto fail;
mp_msg(MSGT_DEMUX, MSGL_V, "demux_aac_probe, INIT: %llu, PROBED: %llu, cnt: %d\n", init, probed, cnt);
- return 1;
+ return DEMUXER_TYPE_AAC;
fail:
mp_msg(MSGT_DEMUX, MSGL_V, "demux_aac_probe, failed to detect an AAC stream\n");
return 0;
}
-int demux_aac_open(demuxer_t *demuxer)
+static demuxer_t* demux_aac_open(demuxer_t *demuxer)
{
sh_audio_t *sh;
@@ -140,10 +140,10 @@ int demux_aac_open(demuxer_t *demuxer)
demuxer->filepos = stream_tell(demuxer->stream);
- return 1;
+ return demuxer;
}
-int demux_aac_fill_buffer(demuxer_t *demuxer)
+static int demux_aac_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds)
{
aac_priv_t *priv = (aac_priv_t *) demuxer->priv;
demux_packet_t *dp;
@@ -209,7 +209,7 @@ int demux_aac_fill_buffer(demuxer_t *demuxer)
//This is an almost verbatim copy of high_res_mp3_seek(), from demux_audio.c
-void demux_aac_seek(demuxer_t *demuxer, float rel_seek_secs, int flags)
+static void demux_aac_seek(demuxer_t *demuxer, float rel_seek_secs, int flags)
{
aac_priv_t *priv = (aac_priv_t *) demuxer->priv;
demux_stream_t *d_audio=demuxer->audio;
@@ -251,3 +251,19 @@ void demux_aac_seek(demuxer_t *demuxer, float rel_seek_secs, int flags)
resync_audio_stream(sh_audio);
}
+
+demuxer_desc_t demuxer_desc_aac = {
+ "AAC demuxer",
+ "aac",
+ "AAC",
+ "Nico Sabbi",
+ "Raw AAC files ",
+ DEMUXER_TYPE_AAC,
+ 0, // unsafe autodetect
+ demux_aac_probe,
+ demux_aac_fill_buffer,
+ demux_aac_open,
+ demux_close_aac,
+ demux_aac_seek,
+ NULL
+};