changeset 19300:0c7ad1c632cc

mf.[hc] belong to libmpdemux
author ben
date Thu, 03 Aug 2006 19:31:36 +0000
parents e5854db8a39f
children 097e5bc71210
files libmpdemux/Makefile libmpdemux/mf.c libmpdemux/mf.h stream/Makefile stream/mf.c stream/mf.h
diffstat 6 files changed, 174 insertions(+), 174 deletions(-) [+]
line wrap: on
line diff
--- a/libmpdemux/Makefile	Thu Aug 03 19:29:20 2006 +0000
+++ b/libmpdemux/Makefile	Thu Aug 03 19:31:36 2006 +0000
@@ -20,6 +20,7 @@
         mpeg_packetizer.c \
         yuv4mpeg.c \
         yuv4mpeg_ratio.c \
+        mf.c \
 
 # Demuxers
 SRCS += demuxer.c \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libmpdemux/mf.c	Thu Aug 03 19:31:36 2006 +0000
@@ -0,0 +1,153 @@
+
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "config.h"
+
+#ifdef HAVE_GLOB
+#include <glob.h>
+#else
+#include "osdep/glob.h"
+#endif
+
+#include "mp_msg.h"
+#include "help_mp.h"
+#include "stream.h"
+
+#include "mf.h"
+
+int    mf_w = 0; //352; // let codecs to detect it
+int    mf_h = 0; //288;
+float  mf_fps = 25.0;
+char * mf_type = NULL; //"jpg";
+
+mf_t* open_mf(char * filename){
+#if defined(HAVE_GLOB) || defined(__MINGW32__)
+ glob_t        gg;
+ struct stat   fs;
+ int           i;
+ char        * fname;
+ mf_t        * mf;
+ int           error_count = 0;
+ int	       count = 0;
+
+ mf=calloc( 1,sizeof( mf_t ) );
+
+ if( filename[0] == '@' )
+  { 
+   FILE *lst_f=fopen(filename + 1,"r");
+   if ( lst_f ) 
+    {
+     fname=malloc( 255 );
+     while ( fgets( fname,255,lst_f ) ) 
+      {
+       /* remove spaces from end of fname */
+       char *t=fname + strlen( fname ) - 1;
+       while ( t > fname && isspace( *t ) ) *(t--)=0;
+       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 );
+         mf->nr_of_files++;
+        }
+      }
+      fclose( lst_f );
+	     
+      mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
+      goto exit_mf;
+    }
+    mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] %s is not indirect filelist\n",filename+1 );
+  }
+
+ if( strchr( filename,',') )
+  { 
+   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++;
+      }
+    }
+   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
+ 
+   goto exit_mf;
+  } 
+
+ fname=malloc( strlen( filename ) + 32 );
+
+ if ( !strchr( filename,'%' ) )
+  {
+   strcpy( fname,filename ); 
+   if ( !strchr( filename,'*' ) ) strcat( fname,"*" );
+
+   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] search expr: %s\n",fname );
+
+   if ( glob( fname,0,NULL,&gg ) )
+    { free( mf ); free( fname ); return NULL; }
+
+   mf->nr_of_files=gg.gl_pathc;
+   mf->names=calloc( gg.gl_pathc, sizeof( char* ) );
+
+   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d (%d)\n",mf->nr_of_files, gg.gl_pathc * sizeof( char* ) );
+
+   for( i=0;i < gg.gl_pathc;i++ )
+    {
+     stat( gg.gl_pathv[i],&fs );
+     if( S_ISDIR( fs.st_mode ) ) continue;
+     mf->names[i]=strdup( gg.gl_pathv[i] );
+//     mp_msg( MSGT_STREAM,MSGL_DBG2,"[mf] added file %d.: %s\n",i,mf->names[i] );
+    }
+   globfree( &gg );
+   goto exit_mf;
+  }
+
+ mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] search expr: %s\n",filename );
+ 
+ while ( error_count < 5 )
+  {
+   sprintf( fname,filename,count++ );
+   if ( stat( fname,&fs ) ) 
+    {
+     error_count++;
+     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++;
+    }
+  }
+
+ mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
+
+exit_mf:
+ free( fname );
+ return mf;
+#else
+ mp_msg(MSGT_STREAM,MSGL_FATAL,"[mf] mf support is disabled on your os\n");
+ return 0;
+#endif
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libmpdemux/mf.h	Thu Aug 03 19:31:36 2006 +0000
@@ -0,0 +1,19 @@
+
+#ifndef _MF_H
+#define _MF_H
+
+extern int    mf_w;
+extern int    mf_h;
+extern float  mf_fps;
+extern char * mf_type;
+
+typedef struct
+{
+ int curr_frame;
+ int nr_of_files;
+ char ** names;
+} mf_t;
+
+mf_t* open_mf(char * filename);
+
+#endif
--- a/stream/Makefile	Thu Aug 03 19:29:20 2006 +0000
+++ b/stream/Makefile	Thu Aug 03 19:31:36 2006 +0000
@@ -4,8 +4,7 @@
 include ../config.mak
 
 # Core
-SRCS += mf.c \
-        open.c \
+SRCS += open.c \
         url.c \
 
 ifeq ($(STREAM_CACHE),yes)
--- a/stream/mf.c	Thu Aug 03 19:29:20 2006 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,153 +0,0 @@
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-#include "config.h"
-
-#ifdef HAVE_GLOB
-#include <glob.h>
-#else
-#include "osdep/glob.h"
-#endif
-
-#include "mp_msg.h"
-#include "help_mp.h"
-#include "stream.h"
-
-#include "mf.h"
-
-int    mf_w = 0; //352; // let codecs to detect it
-int    mf_h = 0; //288;
-float  mf_fps = 25.0;
-char * mf_type = NULL; //"jpg";
-
-mf_t* open_mf(char * filename){
-#if defined(HAVE_GLOB) || defined(__MINGW32__)
- glob_t        gg;
- struct stat   fs;
- int           i;
- char        * fname;
- mf_t        * mf;
- int           error_count = 0;
- int	       count = 0;
-
- mf=calloc( 1,sizeof( mf_t ) );
-
- if( filename[0] == '@' )
-  { 
-   FILE *lst_f=fopen(filename + 1,"r");
-   if ( lst_f ) 
-    {
-     fname=malloc( 255 );
-     while ( fgets( fname,255,lst_f ) ) 
-      {
-       /* remove spaces from end of fname */
-       char *t=fname + strlen( fname ) - 1;
-       while ( t > fname && isspace( *t ) ) *(t--)=0;
-       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 );
-         mf->nr_of_files++;
-        }
-      }
-      fclose( lst_f );
-	     
-      mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
-      goto exit_mf;
-    }
-    mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] %s is not indirect filelist\n",filename+1 );
-  }
-
- if( strchr( filename,',') )
-  { 
-   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++;
-      }
-    }
-   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
- 
-   goto exit_mf;
-  } 
-
- fname=malloc( strlen( filename ) + 32 );
-
- if ( !strchr( filename,'%' ) )
-  {
-   strcpy( fname,filename ); 
-   if ( !strchr( filename,'*' ) ) strcat( fname,"*" );
-
-   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] search expr: %s\n",fname );
-
-   if ( glob( fname,0,NULL,&gg ) )
-    { free( mf ); free( fname ); return NULL; }
-
-   mf->nr_of_files=gg.gl_pathc;
-   mf->names=calloc( gg.gl_pathc, sizeof( char* ) );
-
-   mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d (%d)\n",mf->nr_of_files, gg.gl_pathc * sizeof( char* ) );
-
-   for( i=0;i < gg.gl_pathc;i++ )
-    {
-     stat( gg.gl_pathv[i],&fs );
-     if( S_ISDIR( fs.st_mode ) ) continue;
-     mf->names[i]=strdup( gg.gl_pathv[i] );
-//     mp_msg( MSGT_STREAM,MSGL_DBG2,"[mf] added file %d.: %s\n",i,mf->names[i] );
-    }
-   globfree( &gg );
-   goto exit_mf;
-  }
-
- mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] search expr: %s\n",filename );
- 
- while ( error_count < 5 )
-  {
-   sprintf( fname,filename,count++ );
-   if ( stat( fname,&fs ) ) 
-    {
-     error_count++;
-     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++;
-    }
-  }
-
- mp_msg( MSGT_STREAM,MSGL_INFO,"[mf] number of files: %d\n",mf->nr_of_files );
-
-exit_mf:
- free( fname );
- return mf;
-#else
- mp_msg(MSGT_STREAM,MSGL_FATAL,"[mf] mf support is disabled on your os\n");
- return 0;
-#endif
-}
-
--- a/stream/mf.h	Thu Aug 03 19:29:20 2006 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-
-#ifndef _MF_H
-#define _MF_H
-
-extern int    mf_w;
-extern int    mf_h;
-extern float  mf_fps;
-extern char * mf_type;
-
-typedef struct
-{
- int curr_frame;
- int nr_of_files;
- char ** names;
-} mf_t;
-
-mf_t* open_mf(char * filename);
-
-#endif