Re: can -c be made to seek?

Carl Karsten <[email protected]>
Newsgroups gmane.comp.video.transcode.devel
Message-ID <[email protected]>
David Liontooth wrote:
> Hi Carl,
> 
> Carl Karsten wrote:
>> In trying to grab a frame every 30 seconds (or every 900 frames - 
>> close enough)  I see tc spending time 'skipping frames' - any way to 
>> get it to seek ahead some number of bytes or something?  (close, even 
>> for wide values of close, would be fine)
> I switched to -c because I needed split-second accuracy, but if you 
> don't, try --frame_interval. It may even be frame-accurate now.
> 
> transcode -q 0 -o $DDIR/$FIL.img -y im -F png -x ffmpeg,null -i 
> $DDIR/$FIL.dv --frame_interval 900 2> /dev/null
> 
> If you try, let us know what performance you get.

No help on performance, but the command line is much easier to construct.

juser@pycon08a:~/temp/pycon$ ./y.sh
++ rm img/x000000.png img/x000001.png img/x000002.png img/x000003.png
++ INFIL='clip-2008-03-15 11;07;38.dv'
++ OUTFIL=x
++ transcode -Q 0 -i 'clip-2008-03-15 11;07;38.dv' -x dv,null -o img/x -y im -F 
png --frame_interval 900 -c 0-17101
transcode v1.2.0-cvs (C) 2001-2003 Thomas Oestreich, 2003-2007 Transcode Team
[transcode] V: auto-probing     | clip-2008-03-15 11;07;38.dv (OK)
[transcode] V: import format    | DigitalVideo in NTSC (module=dv)
[transcode] A: auto-probing     | clip-2008-03-15 11;07;38.dv (OK)
[transcode] A: import format    | PCM in NTSC (module=null)
[transcode] V: AV demux/sync    | (1) sync AV at initial MPEG sequence
[transcode] V: import frame     | 720x480  1.50:1  encoded @ 4:3
[transcode] V: bits/pixel       | 0.174
[transcode] V: decoding fps,frc | 29.970,4
[transcode] V: video format     | YUV420 (4:2:0) aka I420
[transcode] A: import format    | 0x1     PCM          [48000,16,2] 1536 kbps
[transcode] A: export format    | 0x55    MPEG ES Layer 3 [48000,16,2]  128 kbps
[transcode] V: export format    | unknown (module dependant)
[transcode] V: encoding fps,frc | 29.970,4
[transcode] A: bytes per frame  | 6408 (6406.400000)
[transcode] A: adjustment       | -1600@1000
[transcode] V: IA32/AMD64 accel | sse3 sse2 sse 3dnowext 3dnow mmxext mmx cmove asm
[transcode] V: video buffer     | 10 @ 720x480 [0x2]
[transcode] A: audio buffer     | 10 @ 48000x2x16
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_dv.so] v0.3.1 (2003-10-14) (video) DV | (audio) PCM
[export_im.so] v0.0.4 (2003-11-13) (video) *
[import_dv.so] tcextract -x dv -i "clip-2008-03-15 11;07;38.dv" -d 0 | tcdecode 
-x dv -y yuv420p -d 0 -Q 5
encoding frame [17100/17101],  27.24 fps, 100.0%, ETA: 0:00:00, ( 0| 0|20)
[transcode] encoded 17101 frames (0 dropped, 0 cloned), clip length 570.60 s

real    10m29.882s
user    9m27.215s
sys     1m1.984s
++ ls -l img
total 29980juser@pycon08a:~/temp/pycon$ ./y.sh
++ rm img/x000000.png img/x000001.png img/x000002.png img/x000003.png
++ INFIL='clip-2008-03-15 11;07;38.dv'
++ OUTFIL=x
++ transcode -Q 0 -i 'clip-2008-03-15 11;07;38.dv' -x dv,null -o img/x -y im -F 
png --frame_interval 900 -c 0-17101
transcode v1.2.0-cvs (C) 2001-2003 Thomas Oestreich, 2003-2007 Transcode Team
[transcode] V: auto-probing     | clip-2008-03-15 11;07;38.dv (OK)
[transcode] V: import format    | DigitalVideo in NTSC (module=dv)
[transcode] A: auto-probing     | clip-2008-03-15 11;07;38.dv (OK)
[transcode] A: import format    | PCM in NTSC (module=null)
[transcode] V: AV demux/sync    | (1) sync AV at initial MPEG sequence
[transcode] V: import frame     | 720x480  1.50:1  encoded @ 4:3
[transcode] V: bits/pixel       | 0.174
[transcode] V: decoding fps,frc | 29.970,4
[transcode] V: video format     | YUV420 (4:2:0) aka I420
[transcode] A: import format    | 0x1     PCM          [48000,16,2] 1536 kbps
[transcode] A: export format    | 0x55    MPEG ES Layer 3 [48000,16,2]  128 kbps
[transcode] V: export format    | unknown (module dependant)
[transcode] V: encoding fps,frc | 29.970,4
[transcode] A: bytes per frame  | 6408 (6406.400000)
[transcode] A: adjustment       | -1600@1000
[transcode] V: IA32/AMD64 accel | sse3 sse2 sse 3dnowext 3dnow mmxext mmx cmove asm
[transcode] V: video buffer     | 10 @ 720x480 [0x2]
[transcode] A: audio buffer     | 10 @ 48000x2x16
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_dv.so] v0.3.1 (2003-10-14) (video) DV | (audio) PCM
[export_im.so] v0.0.4 (2003-11-13) (video) *
[import_dv.so] tcextract -x dv -i "clip-2008-03-15 11;07;38.dv" -d 0 | tcdecode 
-x dv -y yuv420p -d 0 -Q 5
encoding frame [17100/17101],  27.24 fps, 100.0%, ETA: 0:00:00, ( 0| 0|20)
[transcode] encoded 17101 frames (0 dropped, 0 cloned), clip length 570.60 s

real    10m29.882s
user    9m27.215s
sys     1m1.984s
++ ls -l img
total 29980
...
-rw-r--r-- 1 juser juser 800575 2008-04-17 13:31 x000038.png

I was afraid it created 17101 .pngs

Carl K
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.