Hi,

        There are problems with this fix. Although with 30000:1001 its watchable,
 the audio is off from the start.

        If my origional problem is caused by a frame rate change later in the mpg
 are there tools that can sort this out ? Are there timecodes on the frames
 in the mjpeg file that would allow this to happen ?

        Any ideas ?

        Thanks,

                Stuart

On Thursday 29 May 2003 20:52, Stuart Hodges wrote:
> Hi,
>
>       Here is the output requested and some extra for 30000:1001 and 60000:1001.
>
> head -n1 stream.yuv
> YUV4MPEG2 W320 H240 F59939998:1000000 Ip A0:0
>
> cat stream.yuv | yuvfps -v2 -r 30:1 | head -n1
>    INFO: [yuvfps] yuv2fps (version 0.1) is a general frame resampling
> utility for yuv streams
>    INFO: [yuvfps] (C) 2002 Alfonso Garcia-Patino Barbolani
> <[EMAIL PROTECTED]>
>    INFO: [yuvfps] yuv2fps -h for help, or man yuv2fps
>    INFO: [yuvfps] Converting from 29969999:500000 to 30:1
> YUV4MPEG2 W320 H240 F30:1 Ip A0:0
>
> cat stream.yuv | yuvfps -v2 -r 30000:1001 | head -n1
>    INFO: [yuvfps] yuv2fps (version 0.1) is a general frame resampling
> utility for yuv streams
>    INFO: [yuvfps] (C) 2002 Alfonso Garcia-Patino Barbolani
> <[EMAIL PROTECTED]>
>    INFO: [yuvfps] yuv2fps -h for help, or man yuv2fps
>    INFO: [yuvfps] Converting from 29969999:500000 to 30000:1001
> YUV4MPEG2 W320 H240 F30000:1001 Ip A0:0
>
> cat stream.yuv | yuvfps -v2 -r 60000:1001 | head -n1
>    INFO: [yuvfps] yuv2fps (version 0.1) is a general frame resampling
> utility for yuv streams
>    INFO: [yuvfps] (C) 2002 Alfonso Garcia-Patino Barbolani
> <[EMAIL PROTECTED]>
>    INFO: [yuvfps] yuv2fps -h for help, or man yuv2fps
>    INFO: [yuvfps] Converting from 29969999:500000 to 60000:1001
> YUV4MPEG2 W320 H240 F60000:1001 Ip A0:0
>
> I added some printf's to yuvfps, thus:
>   srcInc = src_frame_rate.n * frame_rate.d ;
>   dstInc = frame_rate.n * src_frame_rate.d ;
>
>   fprintf (stderr,"srcInc %d\n",srcInc);
>   fprintf (stderr,"dstInc %d\n",dstInc);
>
>   write_error_code = Y4M_OK ;
>
> The output when given 30000:1001 is:
>
> cat stream.yuv | /home/schodge/dvd/cvsmjpegtools/mjpeg_play/lavtools/yuvfps
> -v2 -r 30000:1001 | head -n1
>    INFO: [yuvfps] yuv2fps (version 0.1) is a general frame resampling
> utility for yuv streams
>    INFO: [yuvfps] (C) 2002 Alfonso Garcia-Patino Barbolani
> <[EMAIL PROTECTED]>
>    INFO: [yuvfps] yuv2fps -h for help, or man yuv2fps
>    INFO: [yuvfps] Converting from 29969999:500000 to 30000:1001
> srcInc -64802073
> dstInc 2115098112
> YUV4MPEG2 W320 H240 F30000:1001 Ip A0:0
>
>       I changed srcInc and dstInc to unsigned longs and things look good. I will
> run a test through and try to sync the audio.
>
>       Thanks,
>
>               Stuart
>
> On Thursday 29 May 2003 10:23, Matto Marjanovic wrote:
> > Hiya,
> >
> >  >  yuvfps reports:
> >  >cat stream.yuv | yuvfps -v2 > debout
> >  >   INFO: [yuvfps] yuv2fps (version 0.1) is a general frame resampling
> >  > utility for yuv streams
> >  >   INFO: [yuvfps] (C) 2002 Alfonso Garcia-Patino Barbolani
> >  ><[EMAIL PROTECTED]>
> >  >   INFO: [yuvfps] yuv2fps -h for help, or man yuv2fps
> >  >   INFO: [yuvfps] Converting from 29969999:500000 to 29969999:500000
> >
> > "stream.yuv" is the stream captured by "GATOS", right?
> >
> > Could you send us the output of
> >     "head -n1 stream.yuv",
> > and the output of
> >     "cat stream.yuv | yuvfps -v2 -r 30:1 | head -n1"
> >
> >
> > The problem is most probably due to a bug in yuvfps's resample()
> > function, due to the logic of this code:
> >
> >       srcInc = src_frame_rate.n * frame_rate.d ;
> >       dstInc = frame_rate.n * src_frame_rate.d ;
> >       ...
> >       while( Y4M_ERR_EOF != read_error_code && write_error_code == Y4M_OK
> > ) { ...
> >         currCount += srcInc ;
> >         while( currCount >= dstInc && Y4M_ERR_EOF != read_error_code ) {
> >           currCount -= dstInc ;
> >           ++src_frame_counter ;
> >           ...
> >     }
> >   }
> >
> > The multiplications in the assignments of "srcInc" and "dstInc" have
> >  certainly overflowed.  They should be made into big, fat 64-bit int's,
> >  and/or some check for overflow should be made.
> >
> > Also, GATOS, or whatever produced the stream, should be fixed.  I'm
> > guessing that the headers will show that it is specifying
> > "59939998:1000000" as the framerate, which is dumb --- that should be
> > "60000:1001", if anything.
> >
> > -matt m.
> >
> >
> >
> > -------------------------------------------------------
> > This SF.net email is sponsored by: eBay
> > Get office equipment for less on eBay!
> > http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
> > _______________________________________________
> > Mjpeg-users mailing list
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/mjpeg-users

-------------------------------------------------------



-------------------------------------------------------
This SF.net email is sponsored by: eBay
Get office equipment for less on eBay!
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
_______________________________________________
Mjpeg-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to