[SOLVED]Nagrywanie z karty telewizyjnej, mencoder, brak dźwięku.

Grafika, film, dźwięk.
userZwindy
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 17 lut 2013, 12:10
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: KDE Plasma
Architektura: x86_64

[SOLVED]Nagrywanie z karty telewizyjnej, mencoder, brak dźwięku.

Post autor: userZwindy »

Używam kubuntu 13.04 x86_64.
Telewizje oglądam z kablówki która nadaje sygnał analogowy i cyfrowy równolegle.
Moja karta tv to: Leadtek WinFast DTV2000 H PLUS [card=87] (info z dmesg) i odbiera tylko sygnał analogowy z tej kablówki.
Odpalam tvtime tą komendą:

Kod: Zaznacz cały

tvtime | arecord -D hw:1,0 -r 48000 -c 2 -f S16_LE | aplay -
wtedy mam normalny obraz i dźwięk.
Mogę też uruchomić tvtime normalnie bez parametrów, ale wtedy muszę w alsamixer (umnie QasMixer) wejść w devices hw 1: Conexant CX8801 i wyłączyć mute w Analog-TV.
Ale to za dużo roboty więc odpalam z parametrem. Może to można jakąś komendą wprowadzać ale ja nie wiem jak.

Dodam jeszcze że w mplayer mogę normalnie oglądać tv w ten sposób:

Kod: Zaznacz cały

mplayer tv:// -tv driver=v4l2:input=1:normid=4:outfmt=yuy2:fps=25:width=640:height=480:brightness=20:contrast=0:saturation=20:freq=289.250 -vf pp=lb | arecord -D hw:1,0 -r 48000 -c 2 -f S16_LE | aplay -
- normalnie czyli jest obraz i dźwięk. :)

A nagrać próbuje tak (znalazłem to dzieś na forum i dopasowałem pod siebie):

Kod: Zaznacz cały

mencoder tv:// -tv device=/dev/video0:driver=v4l2:outfmt=yuy2:normid=4:fps=25:width=768:height=578:brightness=20:contrast=0:saturation=20:freq=191.000:fps=25:audiorate=48000:amode=1:alsa:adevice=hw.0 -vf pp=de -of mpeg -mpegopts format=dvd -srate 48000 -ofps 25 -ovc lavc -oac lavc -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:keyint=15:vrc_maxrate=9800:vbitrate=2000:aspect=4/3:acodec=mp2:abitrate=192 -vf scale=720:576 -o /home/janusz/tvp1_`date "+%s"`.mpg
w terminalu pokazuje że nagrywa, słychać szum z głośników ale po odpaleniu zapisanego pliku nie ma obrazu (znaczy sie śnieży) i całkowity brak dźwięku.

Czytałem tu na forum porady typu:
- znajdź kanał w alsa mixer z którego słychać (żadna zmiana w alsamixer nie pomaga w takim stopniu żeby nagrał się dźwięk),
- zainstalowalem pakiety: alsa-oss, oss-compat (nie pomogło),
- zainstaluj xdtv (pobrałem źródło ale nie chce się skompilować nie widzi v4l2, v4l, to stary program więc może dlatego nie działa),
- xawTv nie nagrywa bo potrzebuje oss (czytałem że żeby uruchomić oss trzeba przekompilować jądro z tą opcją ale ja tego nie umiem).
Czytałem manual mencodera ale nie ważne co ustawie to i tak lipa. Nie wiem co jeszcze mogę zrobić. A czuje że jest jakiś sposób na nagrywanie z tv.

Może któryś z forumowiczów obeznanych z tematem będzie wiedział jak mi pomóc bo ja już nie wiem co zrobić. :???:
Ostatnio zmieniony 19 cze 2013, 00:14 przez userZwindy, łącznie zmieniany 1 raz.
frytek
Wytworny Kaczor
Wytworny Kaczor
Posty: 330
Rejestracja: 06 sty 2006, 00:03
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Re: Nagrywanie z karty telewizyjnej, mencoder, brak dźwięku.

Post autor: frytek »

ja dosyć dawno bawiłem się w nagrywanie mencoderem z analogowej karty.

jedyne, co trzeba było zrobić, to włączyć nagrywanie na którymś kanale w alsamixer -V capture. wybrany kanał zaznaczało się spacją.
pamiętam, że żeby to zrobić z automatu nie stosowałem parametrów w mplayerze. zamiast tego ustawiłem sobie kanał capture w alsamikserze jak wyżej i zapisałem to ustawienie do pliku alsactl store -f jakiś_plik. potem w skrypcie startującym nagrywanie wywoływałem najpierw te ustawienia komendą alsactl restore -f jakiś_plik. istniała możliwość nagrywania dźwięku przy jednoczesnym wyciszeniu tego samego kanału na głośnikach (alsamixer -V playback), żeby nie przeszkadzał. i w takim stanie zapisać ustawienia do pliku. po zakończeniu nagrywania, skrypt przywracał ustawienia domyślne z innego pliku.

może to ci coś pomoże. inna sprawa, że z wersji na wersję (systemu) te sprawy się komplikowały, bo ubuntu wprowadziło pulseaudio, które było wtedy intensywnie rozwijane i był jeden wielki bałagan.

... a potem doszedłem do wniosku, że wszystko, co mogę nagrać, już dawno zostało nagrane i wrzucone na chomika, więc dałem spokój.


Dopisek: jak teraz patrzę na twój post, to mi wygląda, że łapiesz dźwięk prosto z karty telewizyjnej? u mnie karta była typu PCI i wyjście audio z niej było spięte takim krótkim kabelkiem z wejściem line-in na karcie audio, i to z niego łapałem dźwięk. nie wiem, czy to ma dla ciebie jakieś znaczenie?
userZwindy
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 17 lut 2013, 12:10
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Re: Nagrywanie z karty telewizyjnej, mencoder, brak dźwięku.

Post autor: userZwindy »

Dopisek: jak teraz patrzę na twój post, to mi wygląda, że łapiesz dźwięk prosto z karty telewizyjnej?
Dokładnie tak. Mam też ten kabelek podpięty ale jakiś czas temu coś się chyba popsuło bo przez ten kabelek dźwięku już nie słychać. Popsuło się jeszcze wtedy gdy nie miałem zamiaru przechodzić na Ubuntu.
Więc może tu jest problem. Całe szczęście że mogę odbierać dźwięk prosto z karty bo by była lipa po całości.

Zainstalowałem sobie kubuntu 12.04 obok 13.04 to sprawdzę czy tam zadziała ale coś czuje że to nie wypali.

-- 23 maja 2013, o 17:14 --

No i lipa. Przez mencoder obraz się nagrywa, a dźwięk nie chociaż go słychać podczas nagrywania. Sprawdziłem wszystkie kanały w alsamixer i nic to nie dało. Tak myślę że to przez to coś co się popsuło.

-- 18 cze 2013, o 23:14 --

Udało mi się nagrać obraz razem z dźwiękiem.
Okazało się że brakowało mi bibliotek rozpoczynających się od libalsa.
Następnie poleceniem

Kod: Zaznacz cały

cat /proc/asound/pcm
sprawdziłem numer urządzenia pod którym kryje się moja karta telewizyjna. W kubuntu 12.04 jest to hw:1,0 w Debian 7 hw:2,0.
Trochę zmodyfikowałem polecenia:
-odtwarzanie:

Kod: Zaznacz cały

mplayer tv:// -tv driver=v4l2:input=1:alsa:adevice=hw.1,0:amode=1:audiorate=48000:forceaudio:volume=100:immediatemode=0:normid=5:outfmt=yuy2:fps=25:width=640:height=480:brightness=20:contrast=0:saturation=20:freq=199 -vf pp=lb
-nagrywanie:

Kod: Zaznacz cały

mencoder tv:// -tv device=/dev/video0:input=1:driver=v4l2:outfmt=yuy2:normid=5:fps=25:width=768:height=578:brightness=20:contrast=0:saturation=20:freq=199.000:fps=25:audiorate=48000:amode=1:alsa:adevice=hw.1,0:forceaudio:volume=100 -vf pp=de -of mpeg -mpegopts format=dvd -srate 48000 -ofps 25 -ovc lavc -oac lavc -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:keyint=15:vrc_maxrate=9800:vbitrate=6000:aspect=4/3:acodec=mp2:abitrate=192 -vf scale=720:576 -o /home/janusz/tvp1_`date "+%s"`.mpg
No i działa.

-- 9 cze 2014, o 23:16 --

Mała aktualizacja.
Kubuntu 14.04 dostało nową wersję mencodera, która nie chce już nagrywać dźwięku więc musiałem przesiąść się na coś innego. Za wielkiego wyboru nie było to też użyłem avconv.
Jakby komuś lub mi w przyszłości będzie to potrzebne to wklejam skrypt nagrywania obrazu i dźwięku z analogowej karty telewizyjnej:

Kod: Zaznacz cały

amixer --card 1 set "Analog-TV" unmute 
amixer --card 1 set "Audio-Out" mute 
avconv -f video4linux2 -channel 1 -i /dev/video0 -f alsa -i hw:1,0 -vcodec mpeg2video -vtag mpeg2 -b 9000k -minrate 9000k -maxrate 9000k -r 25 -vf  yadif,scale=720:578 -bufsize 1835k -vsync cfr -g 0 -format dvd,yuyv422 -skip_threshold 0 -acodec mp2 -ar 48000 -ac 2 -ab 192k -y /media/user/magazyn2/movie_`date "+%s"`.mpg
ODPOWIEDZ

Wróć do „Muzyka, filmy, zdjęcia, grafika”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 9 gości