# HG changeset patch # User atmos4 # Date 1017120315 0 # Node ID cf2882606e727afe36845d2eedfd8ee8992759f6 # Parent eea0213d64c8d5f65196cb83c39c33997ff275d9 Fileslist support for mf demuxer, delemited by ',' and change mf fps to float. diff -r eea0213d64c8 -r cf2882606e72 cfg-common.h --- a/cfg-common.h Tue Mar 26 05:03:10 2002 +0000 +++ b/cfg-common.h Tue Mar 26 05:25:15 2002 +0000 @@ -159,14 +159,14 @@ extern int mf_support; extern int mf_w; extern int mf_h; -extern int mf_fps; +extern float mf_fps; extern char * mf_type; struct config mfopts_conf[]={ {"on", &mf_support, CONF_TYPE_FLAG, 0, 0, 1, NULL}, {"w", &mf_w, CONF_TYPE_INT, 0, 0, 0, NULL}, {"h", &mf_h, CONF_TYPE_INT, 0, 0, 0, NULL}, - {"fps", &mf_fps, CONF_TYPE_INT, 0, 0, 0, NULL}, + {"fps", &mf_fps, CONF_TYPE_FLOAT, 0, 0, 0, NULL}, {"type", &mf_type, CONF_TYPE_STRING, 0, 0, 0, NULL}, {NULL, NULL, 0, 0, 0, 0, NULL} }; diff -r eea0213d64c8 -r cf2882606e72 libmpdemux/mf.c --- a/libmpdemux/mf.c Tue Mar 26 05:03:10 2002 +0000 +++ b/libmpdemux/mf.c Tue Mar 26 05:25:15 2002 +0000 @@ -21,7 +21,7 @@ int mf_support = 0; int mf_w = 352; int mf_h = 288; -int mf_fps = 25; +float mf_fps = 25.0; char * mf_type = "jpg"; int stream_open_mf(char * filename,stream_t * stream) @@ -34,8 +34,33 @@ int error_count = 0; int count = 0; + mf=calloc( 1,sizeof( mf_t ) ); + + if( strchr( filename,',') ) + { + fname=malloc( 255 ); + mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] filelist: %s\n",filename ); + + while ( ( fname=strsep( &filename,"," ) ) ) + { + if ( stat( fname,&fs ) ) + { + mp_msg( MSGT_STREAM,MSGL_V,"[mf] file not found: '%s'\n",fname ); + } + else + { + mf->names=realloc( mf->names,( mf->nr_of_files + 1 ) * sizeof( char* ) ); + mf->names[mf->nr_of_files]=strdup( fname ); +// mp_msg( MSGT_STREAM,MSGL_V,"[mf] added file %d.: %s\n",mf->nr_of_files,mf->names[mf->nr_of_files] ); + mf->nr_of_files++; + } + } + goto exit_mf; + } + fname=malloc( strlen( filename ) + 32 ); - mf=calloc( 1,sizeof( mf_t ) ); + + mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files ); if ( !strchr( filename,'%' ) ) { diff -r eea0213d64c8 -r cf2882606e72 libmpdemux/mf.h --- a/libmpdemux/mf.h Tue Mar 26 05:03:10 2002 +0000 +++ b/libmpdemux/mf.h Tue Mar 26 05:25:15 2002 +0000 @@ -5,7 +5,7 @@ extern int mf_support; extern int mf_w; extern int mf_h; -extern int mf_fps; +extern float mf_fps; extern char * mf_type; typedef struct @@ -14,4 +14,4 @@ char ** names; } mf_t; -#endif \ No newline at end of file +#endif