Twin breakage in v4l2 capture (one old one recent)

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Twin breakage in v4l2 capture (one old one recent)

Mike Martin
1. Since around r9980 I cannot capture audio without using -copyts
(otherwise output is undecipherable). However this affects -async
Before using -copyts -async 24 was sufficient to keep everything in
sync. Now even with -async 96000 sync is lost at around 45 minutes
when doing VCR capture

This only happens with capture and not transcoding eg:

ffmpeg -s 640x480  -croptop 8 -cropbottom 8 -cropleft 8 -cropright 8
-async 96000 -tvstd pal -vc 1 -f video4linux2 -i  /dev/video0  -t
06:00:00    -copyts   -f oss -i /dev/dsp -f avi  -r 25 -v 2   -aspect
4:3 -acodec mp2 -ac 2 -ab 224k -vol 512 -ar 48000 -y  -qscale 3
FFmpeg version SVN-r11093, Copyright (c) 2000-2007 Fabrice Bellard, et al.
  configuration: --prefix=/usr --libdir=/usr/lib
--mandir=/usr/share/man --incdir=/usr/include/ffmpeg --enable-shared
--disable-static --enable-libmp3lame --enable-swscaler
--enable-libvorbis --enable-libfaad --enable-libamr-nb
--enable-libamr-wb --enable-libfaadbin --enable-libfaac
--enable-libxvid --enable-libx264 --enable-liba52 --enable-liba52bin
--enable-pp --enable-shared --enable-x11grab --enable-pthreads
--disable-libtheora --enable-gpl --enable-vhook
--enable-bsf=remove_extradata --enable-bsf=noise --enable-decoder=vp6
  libavutil version: 49.5.0
  libavcodec version: 51.48.0
  libavformat version: 52.0.0
  built on Dec 13 2007 00:48:19, gcc: 4.1.2 20070925 (Red Hat 4.1.2-33)
[video4linux2 @ 0x234274][3]Capabilities: 5010015
Input #0, video4linux2, from '/dev/video0':
  Duration: N/A, start: 1199748755.152621, bitrate: 86860 kb/s
    Stream #0.0: Video: rawvideo, yuv420p, 624x464 [PAR 0:1 DAR 0:1],
86860 kb/s, 25.00 tb(r)
Input #1, oss, from '/dev/dsp':
  Duration: N/A, start: 1199748755.157016, bitrate: N/A
    Stream #1.0: Audio: pcm_s16le, 44100 Hz, mono, 705 kb/s
Output #0, avi, to '/tapes/b5_s2_last2.avi':
    Stream #0.0, 1/90000: Video: mpeg4, yuv420p, 624x464 [PAR 116:117
DAR 4:3], 1/25, q=2-31, 200 kb/s, 25.00 tb(c)
    Stream #0.1, 1/90000: Audio: mp2, 48000 Hz, stereo, 224 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #1.0 -> #0.1
Press [q] to stop encoding
frame=   13 fps=  0 q=3.0 size=     414kB time=0.5
bitrate=6734.7kbits/s dup=0 drop=0    frame=   25 fps= 24 q=3.0 size=
   848kB time=1.0 bitrate=6950.0kbits/s dup=0 drop=0    frame=   38
fps= 24 q=3.0 size=    1184kB time=1.5 bitrate=6382.2kbits/s dup=0
drop=0    frame=   52 fps= 25 q=3.0 size=    1517kB time=2.0
bitrate=6092.9kbits/s dup=0 drop=0    frame=   64 fps= 25 q=3.0 size=
  1872kB time=2.6 bitrate=5990.8kbits/s dup=0 drop=0    frame=   77
fps= 25 q=3.0 size=    2204kB time=3.0 bitrate=5924.7kbits/s dup=0
drop=0    frame=   89 fps= 24 q=3.0 size=    2493kB time=3.5
bitrate=5789.1kbits/s dup=0 drop=0

And the second point is indicated by the revision above. Any later
versions refuse to capture at all (with exact same command -
variations of async)

giving the ubiquitous error about incorrect parameters for /dev/video0
ffmpeg-user mailing list
[hidden email]