diff options
Diffstat (limited to 'Tools/schnitt/dump.c')
-rw-r--r-- | Tools/schnitt/dump.c | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/Tools/schnitt/dump.c b/Tools/schnitt/dump.c deleted file mode 100644 index a362f68..0000000 --- a/Tools/schnitt/dump.c +++ /dev/null @@ -1,65 +0,0 @@ -#include "libmpeg3.h" -#include <stdlib.h> -#include <unistd.h> -#include <fcntl.h> -#include <string.h> - -int main(int argc, char *argv[]) -{ - mpeg3_t *file; - int x,y,ii,i,j,result,out; - int howmany; - unsigned char *output, **output_rows; - char filename[100]; - char header[100]; - char temp; - - howmany = atoi (argv[2]); - - if ((file = mpeg3_open(argv[1])) == NULL) - { - printf ("Open failed\n"); - return 1; - } - mpeg3_set_cpus(file,1); - mpeg3_set_mmx(file,0); - if (mpeg3_has_video == 0) - { - printf ("Stream has no Video\n"); - return 1; - } - x = mpeg3_video_width(file,0); - y = mpeg3_video_height(file, 0); - output = malloc (x*y*3 + 4); - output_rows = malloc (sizeof(unsigned char*) * y); - for(i = 0; i < y; i++) - output_rows[i] = &output[i * x * 3]; - - for (ii = 0; ii < howmany; ii++) - { - result = mpeg3_read_frame(file,output_rows,0,0,x,y,x,y,0,0); - - sprintf (filename,"/x2/temp/output%03i.ppm",ii); - sprintf (header,"P6\n%i %i\n255\n\r",x,y); - -/* printf ("Opening %s\n",filename); */ - - if ((out = open (filename,O_CREAT|O_WRONLY|O_TRUNC,0755)) == -1) - { - printf ("Can't open %s\n",filename); - return 1; - } - - write (out,header,strlen(header)); - - for (i = 0; i < y; i++) - for (j = 0; j < x; j++) - { - temp = output [(i*x+j)*3 + 1]; - output[(i*x+j)*3 + 1] = output [(i*x+j)*3 + 0]; - output[(i*x+j)*3 + 0] = temp; - } - write (out, output, x*y*3); - close (out); - } -} |