Deutsch > Software Sundtek Ltd.
How to record analog-tv with mencoder?
ingo:
I recently received my Media TV Pro stick and got it work to watch analog TV via cable (Gremany) and FM radio..
First I tried to watch with 'tvtime' but that results in frequently lost frames with short stuttering during playback. 'xawtv' however works fine. I am using the latest driver dd Aug. 20th on Debian-Wheezy-amd64, CPU and graphics card is Ivy-Bridge i5-3570K with Intel HD4000 graphics.
I tried to record using the OSD-menu of 'xawtv', but this results in an error messages and says:
--- Code: ---xawtv -c /dev/video0
This is xawtv-3.102, running on Linux/x86_64 (3.2.0-3-amd64)
xinerama 0: 1920x1080+0+0
Alsa devices: cap: (null) (/dev/video0), out: default
v4l2: ioctl(fildes = 5 { sa_family = PF_UNIX } => { sa_family = PF_UNIX, sun_path = "" }, request = VIDIOC_DQBUF, struct v4l2_buffer *data = { index = 0, type = 0, memory = 0 }): success
oss: open /dev/dsp: Datei oder Verzeichnis nicht gefunden
--- Ende Code ---
The Sundtek driver however creates /dev/dsp0. I tried to create a symlik 'ln -s dsp0 dsp', but that doesn't work either.
Then I tried to record usig 'mencoder' from the command line:
--- Code: ---mencoder -tv norm=PAL-BG:device=/dev/video0:fps=25:buffersize=64:adevice=/dev/dsp0:amode=1:audiorate=48000:input=1 -af format=s16le -ovc lavc -lavcopts vcodec=mjpeg -oac pcm -o test.avi tv://
MEncoder 1.1-4.7 (C) 2000-2012 MPlayer Team
success: format: 9 data: 0x0 - 0x0
TV file format detected.
Selected driver: v4l2
name: Video 4 Linux 2 input
author: Martin Olschewski <olschewski@zpr.uni-koeln.de>
comment: first try, more to come ;-)
Selected device: Sundtek MediaTV
Tuner cap: STEREO
Tuner rxs:
Capabilities: video capture tuner audio streaming
supported norms: 0 = PAL-BG; 1 = PAL-DK; 2 = PAL-I; 3 = PAL-M; 4 = NTSC-M; 5 = Secam-L; 6 = Secam-LC; 7 = Secam-K;
inputs: 0 = Television; 1 = Composite; 2 = S-Video;
Current input: 1
Current format: YUYV
v4l2: current audio mode is : STEREO
unsupported format
Audio block size too low, setting to 16384!
[V] filefmt:9 fourcc:0x32595559 size:640x480 fps:25.000 ftime:=0.0400
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 48000 Hz, 2 ch, s16le, 1536.0 kbit/100.00% (ratio: 192000->192000)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
libavcodec version 54.23.100 (internal)
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [raw] RAW Uncompressed Video
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
Movie-Aspect is undefined - no prescaling applied.
[swscaler @ 0xf3cc20]using unscaled yuyv422 -> yuv420p special converter
videocodec: libavcodec (640x480 fourcc=47504a4d [MJPG])
[mjpeg @ 0xe73020]Specified pix_fmt is not supported
Could not open codec.
FATAL: Cannot initialize video driver.
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffrawyuy2] vfm: ffmpeg (RAW YUY2)
==========================================================================
Forcing audio preload to 0, max pts correction to 0.
Movie-Aspect is undefined - no prescaling applied.
videocodec: libavcodec (640x480 fourcc=47504a4d [MJPG])
[mjpeg @ 0xe73020]Specified pix_fmt is not supported
Could not open codec.
FATAL: Cannot initialize video driver.
Exiting...
--- Ende Code ---
I am quite sure the proper codecs are installed, also I can watch smoothly on the screen.
The driver itself reports:
--- Code: --- /opt/bin/mediaclient -e
**** List of Media Hardware Devices ****
device 0: [Sundtek MediaTV Pro (USB 2.0)] DVB-C, DVB-T, ANALOG-TV, FM-RADIO, REMOTE-CONTROL, OSS-AUDIO, RDS
[SERIAL]:
ID: U120820070038
[DVB-C]:
FRONTEND: /dev/dvb/adapter0/frontend0
DVR: /dev/dvb/adapter0/dvr0
DMX: /dev/dvb/adapter0/demux0
[DVB-T]:
FRONTEND: /dev/dvb/adapter0/frontend0
DVR: /dev/dvb/adapter0/dvr0
DMX: /dev/dvb/adapter0/demux0
[ANALOG-TV]:
VIDEO0: /dev/video0
VBI0: /dev/vbi0
[FM-RADIO]:
RADIO0: /dev/radio0
RDS: /dev/rds0
[REMOTECONTROL]:
INPUT0: /dev/mediainput0
[OSS]:
OSS0: /dev/dsp0
--- Ende Code ---
and /var/log/messages says:
--- Code: ---cat /var/log/messages | grep -i -A 1 -B3 sundtek
usb 1-1.3: New USB device found, idVendor=eb1a, idProduct=51b2
usb 1-1.3: New USB device strings: Mfr=1, Product=3, SerialNumber=2
usb 1-1.3: Product: MediaTV Pro
usb 1-1.3: Manufacturer: Sundtek
usb 1-1.3: SerialNumber: U120820070038
....
input: Sundtek Ltd. Remote Control as /devices/virtual/input/input11
--- Ende Code ---
Any hints how I can manage to record analog-tv?
With best regards,
Ingo
Sundtek:
--- Zitat ---sudo -s
cd /tmp
wget http://sundtek.de/support/buildffmpeg.sh
chmod 777 buildffmpeg.sh
./buildffmpeg.sh
--- Ende Zitat ---
/opt/bin/mediaclient --shutdown
sudo /opt/bin/mediaclient --start
anschliessend mittels tvtime den Sender auswählen
cat /dev/video1 > /tmp/test.mpg
ingo:
Zunächst Danke für die schnelle Antwort!
Leider funktioniert der Build nicht:
--- Code: ---HEAD is now at cfd64ee... Merge remote-tracking branch 'qatar/master'
+ ./configure --disable-filters --disable-devices --disable-encoders --disable-decoders --disable-muxers --disable-demuxers --enable-shared --enable-pthreads --enable-libmp3lame --enable-encoder=mpeg2video,libmp3lame,mp2 --prefix=/opt/bin/plugins --enable-nonfree --disable-bsfs --disable-protocols --disable-parsers --enable-muxer=mpegts,mpeg2video,mpeg2dvd
ERROR: libmp3lame >= 3.98.3 not found
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solving the problem.
+ [ 1 != 0 ]
+ echo failed to configure ffmpeg
failed to configure ffmpeg
+ make
Makefile:2: config.mak: Datei oder Verzeichnis nicht gefunden
Makefile:45: /common.mak: Datei oder Verzeichnis nicht gefunden
Makefile:85: /libavutil/Makefile: Datei oder Verzeichnis nicht gefunden
Makefile:85: /library.mak: Datei oder Verzeichnis nicht gefunden
Makefile:162: /doc/Makefile: Datei oder Verzeichnis nicht gefunden
Makefile:163: /tests/Makefile: Datei oder Verzeichnis nicht gefunden
make: *** Keine Regel, um »/tests/Makefile« zu erstellen. Schluss.
+ [ 2 != 0 ]
+ echo failed to build ffmpeg
failed to build ffmpeg
+ make install
Makefile:2: config.mak: Datei oder Verzeichnis nicht gefunden
Makefile:45: /common.mak: Datei oder Verzeichnis nicht gefunden
Makefile:85: /libavutil/Makefile: Datei oder Verzeichnis nicht gefunden
Makefile:85: /library.mak: Datei oder Verzeichnis nicht gefunden
Makefile:162: /doc/Makefile: Datei oder Verzeichnis nicht gefunden
Makefile:163: /tests/Makefile: Datei oder Verzeichnis nicht gefunden
make: *** Keine Regel, um »/tests/Makefile« zu erstellen. Schluss.
+ [ 2 != 0 ]
+ echo failed to install ffmpeg
failed to install ffmpeg
--- Ende Code ---
Zur Info: 'yasm' mußte ich nachinstallieren. Die Fehlermeldung
ERROR: libmp3lame >= 3.98.3 not found
bekomme ich aber nicht weg, obwohl ich den SymLink auf libmp3lame.so.0.0.0 manuell angelegt habe (per default ist nur der Link zu libmp3lame.so.0 vorhanden. Problem ist wohl, daß der interne Paketname "libmp3lame0" ist ?
--- Code: ---/usr/lib/x86_64-linux-gnu# ls -l libmp3*
lrwxrwxrwx 1 root root 19 Sep 3 19:39 libmp3lame.so -> libmp3lame.so.0.0.0
lrwxrwxrwx 1 root root 19 Mai 1 15:26 libmp3lame.so.0 -> libmp3lame.so.0.0.0
-rw-r--r-- 1 root root 298536 Mai 1 15:26 libmp3lame.so.0.0.0
--- Ende Code ---
und die installierte Version ist:
--- Code: ---dpkg -l libmp3lame0
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name Version Architektur Beschreibung
+++-==================-==============-==============-==========================================
ii libmp3lame0:amd64 1:3.99.5-dmo1 amd64 LAME Ain't an MP3 Encoder (shared library)
--- Ende Code ---
What to do?
Ach ja,
Danke für die Info, daß der Output von /dev/videoX im mpeg-Format ist und ein einfaches cat ... ausreicht!
Beste Grüße,
Ingo
ingo:
Noch eine Info - hatte ich vergessen:
--- Code: ---ii ffmpeg 7:0.11.1-dmo amd64
--- Ende Code ---
Es ist die Version von deb.multimedia für Wheezy.
Ingo
Sundtek:
apt-get install libmp3lame-dev
Anschließend nocheinmal das Script ausführen. Die Aufnahme mit dem Treiber wurde soweit über Stunden hinweg synchron getestet.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln