Changeset 4014

Show
Ignore:
Timestamp:
08/23/07 23:17:04 (1 year ago)
Author:
hverkuil
Message:

Test GOP_END functionality.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • ivtvtv/trunk/ivtvrec.cpp

    r3871 r4014  
    4141        struct v4l2_enc_idx idx; 
    4242        int quit = 0; 
     43        int loop; 
    4344 
    4445        if (argc < 3) { 
     
    4647                exit(1); 
    4748        } 
    48         fin = open("/dev/video0", O_RDONLY|O_NONBLOCK); 
     49        fin = open("/dev/video1", O_RDONLY|O_NONBLOCK); 
    4950        if (fin < 0) { 
    5051                fprintf(stderr, "Cannot open file %s\n", argv[1]); 
     
    7172        t1 = time(NULL) - 1; 
    7273 
     74        for (loop = 0; loop < 2; loop++) { 
     75                quit = 0; 
    7376        while (!quit) { 
    7477                FD_ZERO(&fd_in); 
     
    104107                                ioctl(fin, VIDIOC_G_ENC_INDEX, &idx); 
    105108                                for (unsigned i = 0; i < idx.entries; i++) { 
    106                 printf("%d %lld %d\n", idx.entry[i].flags, idx.entry[i].offset, idx.entry[i].length); 
     109                printf("%x %lld %d\n", idx.entry[i].flags, idx.entry[i].offset, idx.entry[i].length); 
    107110                                        if (idx.entry[i].flags != V4L2_ENC_IDX_FRAME_I) 
    108111                                                continue; 
     
    118121                        break; 
    119122        } 
     123        while ((sz=read(fin, buf, sizeof(buf))) > 0) { 
     124                write(fout, buf, sz); 
     125        } 
    120126        ioctl(fin, VIDIOC_G_ENC_INDEX, &idx); 
    121127        for (unsigned i = 0; i < idx.entries; i++) { 
    122                 printf("%d %lld %d\n", idx.entry[i].flags, idx.entry[i].offset, idx.entry[i].length); 
     128                printf("%x %lld %d\n", idx.entry[i].flags, idx.entry[i].offset, idx.entry[i].length); 
    123129                if (idx.entry[i].flags != V4L2_ENC_IDX_FRAME_I) 
    124130                        continue; 
     
    128134                write(fidx, &s, sizeof(s)); 
    129135        } 
     136        } 
    130137        return 0; 
    131138}