DVB-T + MPlayer

Fórumok

Sziasztok,

A kovetkezo lenne a gondom: szereztem egy Alcor DTV-1000 tipusu USB-s DVB-T vevot, amit linux alatt szeretnek hasznalni.
A laptopon XP alatt szepen mukodik a sajat szoftverevel, de neha beszaggat a kep a HD felbontas miatt. De lenyeg, hogy jo a vetel.
Ezert szeretnem ezt a desktop gepemen hasznalni, mivel ott van vdpau kepes videovezerlo, es persze a monitor is nagyobb.
A linux kernel latszolag jol kezeli a hardware-t, szepen betolti a szukseges modulokat. Alapvetoen MPlayerrel probalkozom, mert csak ebben van vdpau (ha jol tudom), meg amugyis MPlayer parti vagyok :)

$ mplayer dvb://"m1 HD"
MPlayer SVN-r29354-4.3.4 (C) 2000-2009 MPlayer Team

Playing dvb://m1 HD.
dvb_tune Freq: 746000000
TS file format detected.
VIDEO MPEG2(pid=1001) AUDIO MPA(pid=1002) NO SUBS (yet)!  PROGRAM N. 0

Es itt all hosszu percekig, majd tovabbmegy, de csak a hang szol.

Sikerult mar vkinek osszehozni?
Egy tuti jo budapesti channels.conf-ot is elfogadnek, mert lehet hogy az a ludas.
Koszonom!

update #1:
egy jol mukodo budapesti channels.conf:

DunaTV HD:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2000+2001+2002:200
Autonomia:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2010+2011+2012:201
RTL Klub:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2020+2021+2022:202
TV2:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2030+2031+2032:203
Euronews EN Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2040+2041+2042:204
Euronews FR Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2050+2041+2045:205
Euronews GER Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2060+2041+2044:206
m1 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1000+1001+1002:100
m2 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1010+1011+1012:101

-> eredeti kerdes megoldva

update #2:
Milyen hangkodekkel mukodik jol pl. a TV2?
-> megoldva: MPlayer svn-ben mar javitva van

update #3:
Hogyan lehet idozitett felvetelt leallitani pl. fel ora utan?
Eddig jutottam:

$ echo "mplayer dvb://\"m1 HD\" -dumpstream -dumpfile \"tv_`date +%F_%R`.ts\" -frames 100" | at -t 201003252118

De se a -frames, se az -endpos nem hasznal. Otlet?

update #4:
Hogyan lehet igazan jo AV sync-et es folytomos videolejatszast elerni?
Mert az "-mc 0.1" segit rajta, de nem tokeletes. Ha a kepen van egy scrollozo szoveg, akkor az nem folyamatosan halad, hanem akadozik.
Ugyanazon dumpolt stream sokkalta jobb vlc-vel nezve mint MPlayerrel.

Hozzászólások

Akkor te már előrébb jársz vele, mint én. Nálam se kép, se hang.
Vlc-vel viszont teljesen jó...

Nalam megy szepen vlc-vel, es mplayer vdpauval is: -vc ffh264vdpau

Conf szettordelve:

DunaTV HD:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2000+2001+2002:200
Autonomia:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2010+2011+2012:201
RTL Klub:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2020+2021+2022:202
TV2:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2030+2031+2032:203
Euronews EN Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2040+2041+2042:204
Euronews FR Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2050+2041+2045:205
Euronews GER Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2060+2041+2044:206
m1 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1000+1001+1002:100
m2 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1010+1011+1012:101

Annak idején utána jártam ennek, és valami olyasmi volt a konklúzió, hogy H264 lejátszáshoz több PID-nek is szerepelnie kell a stream-ben, nem elég az audio meg video pid, hanem kell ezeken kívül a 0-ás PID és a PMT is talán. Igazából én dvbstream-mel veszek fel fájlba, és azt játszom le mplayer-rel...

Kicsit off: Nem tudom, de nekem iszonyatosan bénán támogatja az mplayer a H264 HD-t, elcsúszik a kép meg a hang, ahhoz hogy legalább 0.1-0.2 mp pontossággal tartsa a szinkront a -mc 0.1 paramétert meg kellett adnom, de akkor is ugrál az AV sync, olyan mintha nem kezelné hogy a H264-ben nem időrendbe jönnek a frame-ek, és ezért ide-oda ugrál az aktuális timestamp ahelyett hogy egyenletesen növekedne.

Nálam az az alapvető probléma, hogy mpeg2-nek hiszi a videó sávot.

mplayer dvb://m1_HD -mc 1
MPlayer SVN-r30554-4.3.4 (C) 2000-2010 MPlayer Team
115 audió & 237 videó codec

dvb://m1_HD lejátszása.
dvb_tune Freq: 786000000
Cache feltöltés: 14.40% (294912 bytes)
Ez egy TS formátumú fájl!
VIDEO MPEG2(pid=1001) AUDIO MPA(pid=1002) NO SUBS (yet)! PROGRAM N. 0

Igazad van, ha lecserélem a sorvégi 1001:1002:100-at 1000+1001+1002:100 akkor elindul a lejátszás. Már csak az a gondom vele, hogy a kép csak kb fele sebességgel megy mint a hang.
A vlc az első formátumú sávbeállításokkal működik. Ez valami mplayerre jellemző különcködés lehet...

Milyen videókarin tolod?
Melyik distro?
Nekem a fenti, jó channels.conf-al ez a parancs tökéletesen megy:
mplayer dvb://"m1 HD" -mc 1 -delay -0.3 -panscan 0.5 -cache 30000 -vo vdpau:deint=2

Ez a .mplayer/config van mögötte:
subcp = windows-1252
#subcp=utf8
subfont-text-scale = 3
subfont-osd-scale = 4
font=/home/b/.mplayer/subfont.ttf
nojoystick = yes
#unicode=yes
#utf8=yes
vo=vdpau
vc=ffvc1vdpau,ffh264vdpau,ffmpeg12vdpau,ffwmv3vdpau,
cache=30000
noslices=yes

Ubuntu 10.04, nvidia 9200m gs

Most éppen GTS250-en, de előtte próbáltam 8600GTS, 8500GT és Quadro nvs 290-es kártyával is. A rendszer gentoo 64 bit.
Látszólag működik a vdpau kimenet, legalábbis hibát nem ír az mplayer. De az m1 HD kb 30% processzor használatot hoz össze i7-860-on.
Próbáltam kikapcsolt kompozitorral és nagy felbontásra beállított monitorral is, de semmi hatása. Valami nálam nagyon el van qúrva a rendszeren, vagy az mplayerben...
Szerencsére nem létkérdés.

Az i7-860 a legdurvább 1080p-es videókat is megeszi 60-70% procihasználat körül. Szóval erőben nincs hiány :)
Az mplayer sajnos sok tekintetben kezd lemaradni a vlc-től. Ilyen például a ts formátum (nem) támogatása. Pedig a HDTV elég gyorsan terjed. Igény alighanem lenne rá.

A TV2 hangja nem mukodik. Ez a jelenseg:

$ mplayer dvb://"TV2"
MPlayer SVN-r30656 (C) 2000-2010 MPlayer Team
Loading protocol-related profile 'protocol.dvb'

Playing dvb://TV2.
dvb_tune Freq: 802000000
TS file format detected.
VIDEO H264(pid=2031) AUDIO AAC(pid=2032) NO SUBS (yet)!  PROGRAM N. 203
FPS seems to be: 25.000000
==========================================================================
Forced video codec: ffh264vdpau
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264vdpau] vfm: ffmpeg (FFmpeg H.264 (VDPAU))
==========================================================================
==========================================================================
Forced audio codec: hwac3
Forced audio codec: hwdts
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample)
Starting playback...
FAAD: error: Channel coupling not yet implemented, trying to resync!
FAAD: error: Invalid number of channels, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Array index out of range, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: PCE shall be the first element in a frame, trying to resync!
FAAD: error: Invalid number of channels, trying to resync!
FAAD: Failed to decode frame: Invalid number of channels 
[VD_FFMPEG] Trying pixfmt=0.
Movie-Aspect is 1.36:1 - prescaling to correct movie aspect.
VO: [vdpau] 720x576 => 786x576 H.264 VDPAU acceleration 
[VD_FFMPEG] XVMC-accelerated MPEG-2.
FAAD: error: Invalid number of channels, trying to resync! ??,?% 8 0 
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Channel coupling not yet implemented, trying to resync!
FAAD: error: PCE shall be the first element in a frame, trying to resync!
FAAD: error: Channel coupling not yet implemented, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: error: Invalid number of channels, trying to resync!
FAAD: error: Bitstream value not allowed by specification, trying to resync!
FAAD: Failed to decode frame: Bitstream value not allowed by specification 
[..]

Tehat az AAC hangot a faad codec nem tudja ertelmezni. Ki mit hasznal erre?
Koszonom!

faad mellett meg a ffaac-ot talaltam, de az se mukodik:

[..]
Forced audio codec: ffaac
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
[aac @ 0xe23a20]channel element 2.11 is not allocated
[aac @ 0xe23a20]channel element 2.11 is not allocated
[aac @ 0xe23a20]channel element 2.11 is not allocated
[aac @ 0xe23a20]channel element 2.11 is not allocated
[aac @ 0xe23a20]channel element 2.11 is not allocated
[aac @ 0xe23a20]channel element 2.11 is not allocated
Unknown/missing audio format -> no sound
ADecoder init failed :(
Cannot find codec for audio format 0x4134504D.
Audio: no sound
[..]

TV2 így néz ki:
==========================================================================
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
FAAD: compressed input bitrate missing, assuming 128kbit/s!
AUDIO: 48000 Hz, 2 ch, s16le, 128.0 kbit/8.33% (ratio: 16000->192000)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
Nem hekkeltem semmit, megy.

Felvenni én is úgy szoktam, mint te, csak kicsit favágósabban (sleep). Leállítani is így. sleep x; killall -9 mplayer
Gagyi megoldás, de működik.
Az endpos asszem csak mencoder esetén működik.

Asszem nekifutok még egyszer a magyarországi dvb-nek, az uk-ban tökéletesen ment, itthon, mikor próbáltam, az mplayer nem szerette, a vlc vitte, de az sem minden csatornát :(. Nem értem, mi a különbség, miért van, hogy ott tökéletes, itthon meg ilyen, pedig, itt még jobb is a térerőm, mint ott volt.

<= Powered By Ubuntu & Gentoo Linux =>

'Software is like sex: It's better when it's free!'
By Linus Torvalds

Nálam 9.10 xubuntun, -vo vdpau, -vc ***vdpau, fenti channel.conffal nvidián megy mindegyik.
A hd is max 30% cpuval. De a kedvenc filtereimmel eldobja magát. Asszongya nem jó a videó kimenet.
Kár pedig azokkal lenne az igazi. Nem baj mostmár ezt is tudjuk. Maradok VLC-n.