summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_gif.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_gif.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_gif.c')
-rw-r--r--libmpdemux/demux_gif.c28
1 files changed, 23 insertions, 5 deletions
diff --git a/libmpdemux/demux_gif.c b/libmpdemux/demux_gif.c
index e5dcb47b9b..5c4d8fdadc 100644
--- a/libmpdemux/demux_gif.c
+++ b/libmpdemux/demux_gif.c
@@ -31,14 +31,14 @@ int my_read_gif(GifFileType *gif, uint8_t *buf, int len) {
}
#endif
-int gif_check_file(demuxer_t *demuxer)
+static int gif_check_file(demuxer_t *demuxer)
{
if (stream_read_int24(demuxer->stream) == GIF_SIGNATURE)
- return 1;
+ return DEMUXER_TYPE_GIF;
return 0;
}
-int demux_gif_fill_buffer(demuxer_t *demuxer)
+static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds)
{
GifFileType *gif = (GifFileType *)demuxer->priv;
sh_video_t *sh_video = (sh_video_t *)demuxer->video->sh;
@@ -148,7 +148,7 @@ int demux_gif_fill_buffer(demuxer_t *demuxer)
return 1;
}
-demuxer_t* demux_open_gif(demuxer_t* demuxer)
+static demuxer_t* demux_open_gif(demuxer_t* demuxer)
{
sh_video_t *sh_video = NULL;
GifFileType *gif = NULL;
@@ -206,7 +206,7 @@ demuxer_t* demux_open_gif(demuxer_t* demuxer)
return demuxer;
}
-void demux_close_gif(demuxer_t* demuxer)
+static void demux_close_gif(demuxer_t* demuxer)
{
GifFileType *gif = (GifFileType *)demuxer->priv;
@@ -219,4 +219,22 @@ void demux_close_gif(demuxer_t* demuxer)
demuxer->stream->fd = 0;
demuxer->priv = NULL;
}
+
+
+demuxer_desc_t demuxer_desc_gif = {
+ "GIF demuxer",
+ "gif",
+ "GIF",
+ "Joey Parrish",
+ "",
+ DEMUXER_TYPE_GIF,
+ 0, // unsafe autodetect
+ gif_check_file,
+ demux_gif_fill_buffer,
+ demux_open_gif,
+ demux_close_gif,
+ NULL,
+ NULL
+};
+
#endif /* HAVE_GIF */