summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demuxer.c
diff options
context:
space:
mode:
authoralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-11-21 16:14:14 +0000
committeralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-11-21 16:14:14 +0000
commitad9c24d1632d136b197c5e14c3a901f94f7f405c (patch)
treeda1a7227eaa73f6c263abcb4a604da34c3a30f58 /libmpdemux/demuxer.c
parentd88419bcd5055c79b1c251a937af217c04dc4b88 (diff)
downloadmpv-ad9c24d1632d136b197c5e14c3a901f94f7f405c.tar.bz2
mpv-ad9c24d1632d136b197c5e14c3a901f94f7f405c.tar.xz
added demuxer_info
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3051 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demuxer.c')
-rw-r--r--libmpdemux/demuxer.c73
1 files changed, 73 insertions, 0 deletions
diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c
index a6ccb1b019..73c4d5b9a4 100644
--- a/libmpdemux/demuxer.c
+++ b/libmpdemux/demuxer.c
@@ -624,4 +624,77 @@ switch(demuxer->file_format){
return 1;
}
+int demux_info_add(demuxer_t *demuxer, char *opt, char *param)
+{
+ demuxer_info_t *info = &demuxer->info;
+ if (!strncmp(opt, "name"))
+ {
+ if (info->name)
+ {
+ mp_msg(MSGT_DEMUX, MSGL_WARN, "Demuxer info->name already present\n!");
+ return(0);
+ }
+ info->name = malloc(strlen(param));
+ strcpy(info->name, param);
+ return(1);
+ }
+
+ if (!strncmp(opt, "author"))
+ {
+ if (info->author)
+ {
+ mp_msg(MSGT_DEMUX, MSGL_WARN, "Demuxer info->author already present\n!");
+ return(0);
+ }
+ info->author = malloc(strlen(param));
+ strcpy(info->author, param);
+ return(1);
+ }
+
+ if (!strncmp(opt, "encoder"))
+ {
+ if (info->encoder)
+ {
+ mp_msg(MSGT_DEMUX, MSGL_WARN, "Demuxer info->encoder already present\n!");
+ return(0);
+ }
+ info->encoder = malloc(strlen(param));
+ strcpy(info->encoder, param);
+ return(1);
+ }
+
+ if (!strncmp(opt, "comments"))
+ {
+ if (info->comments)
+ {
+ mp_msg(MSGT_DEMUX, MSGL_WARN, "Demuxer info->comments already present\n!");
+ return(0);
+ }
+ info->comments = malloc(strlen(param));
+ strcpy(info->comments, param);
+ return(1);
+ }
+
+ mp_msg(MSGT_DEMUX, MSGL_WARN, "Unknown demuxer info->%s (=%s)!\n",
+ opt, param);
+ return(1);
+}
+
+int demux_info_print(demuxer_t *demuxer)
+{
+ demuxer_info_t *info = &demuxer->info;
+
+ if (info->name || info->author || info->encoder || info->comments)
+ {
+ mp_msg(MSGT_DEMUX, MSGL_INFO, "Clip info: \n");
+ if (info->name)
+ mp_msg(MSGT_DEMUX, MSGL_INFO, " Name: %s\n", info->name);
+ if (info->author)
+ mp_msg(MSGT_DEMUX, MSGL_INFO, " Author: %s\n", info->author);
+ if (info->encoder)
+ mp_msg(MSGT_DEMUX, MSGL_INFO, " Encoder: %s\n", info->encoder);
+ if (info->comments)
+ mp_msg(MSGT_DEMUX, MSGL_INFO, " Comments: %s\n", info->comments);
+ }
+}