Nejnovější:
- Sailfish OS and memory
- Hillshade tile server
- Statistics of OSM Scout for Sailfish OS
- Nebezpečný router
- Tree model with Silica components
Podle data:
- listopad 2021
- leden 2019
- prosinec 2017
- prosinec 2016
- květen 2014
- duben 2014
- listopad 2013
- duben 2013
- duben 2011
- únor 2011
- leden 2011
- srpen 2010
- květen 2010
- březen 2010
- leden 2010
- říjen 2009
- duben 2009
- únor 2009
- říjen 2008
- září 2008
- srpen 2008
- duben 2008
- březen 2008
- únor 2008
Téma:
Přehrávání WMV9 na Ubuntu amd64
…a ukládání streamu z mms protokolu
Aneb čas bez Frisbee konečně skončil! Co má společného videoformát wmv9 a Frisbee? O tom (z části) bude následující příspěvek.
Jsem zvyklý při práci poslouchat hudbu. Pokud nedělám zrovna něco na co se musím plně koncentrovat, tak mi často v růžku monitoru běží i nějaké videoklipy. Často je to hudební stanice Óčko. Ještě před půl rokem jsem si na koleji mohl pouštět Óčko v docela vysoké kvalitě díky digitálnímu video broadcastu (DVB) po kolejní síti. Ale už asi ten půl rok není tímto způsobem dostupné a od správce serveru jsem nezaregistroval žádnou snahu tento stav změnit. S nedostupností na kolejní síti souvisí i nemožnost si z této stanice cokoliv grabnout (nahrát) pomocí strahovského DVBgrabu.Kvůli tomu často zmeškal pořad Frisbee, ve kterém je týdenní porce novinek a klipů z taneční scény.
TV Óčko se dá naštěstí naladit i po internetu, na adrese http://ocko.idnes.cz/stream.asp. Toto vysílání lze na linuxu přehrát například ve VLC nebo Kaffeinu. Stále mi ale chyběla možnost si oblíbené pořady nahrát. (No, asi by to šlo přes VLC, s tím ale nejsem moc velký kamarád.)
Ukládání streamu z mms protokolu
Když jsem tento problém řešil, vygooglil jsem po chvilce prográmek
mimms, který umí data steamovaná pomocí protokolu mms uložit na
disk. Pro ukládání streamu Óčka ve střední kvalitě stačí spustit
program s těmito parametry:
mimms „http://stream2.idnes.cz/ocko-tv?idostrova=ocko“ ocko.wmv
.
Délku nahrávání lze určit parametrem -t, nebo prostě program
v požadovaný čas killnout.
Po vyřešení ukládání streamu se vyskytl další problém. Střední kvalita streamu není při zobrazení přes celou obrazovku moc koukatelná. Vysoká kvalita je zas šířena ve formátu wmv9, takže mi na mém Kubuntu amd64 nehrál zvuk. Nepomohla ani instalace Windows kodeků z balíku w64codecs a kompilace mplayeru.
NOTE: Win32 codec DLLs are not supported on your CPU (x86_64) or your operating system (Linux). You may encounter a few files that cannot be played due to missing open source video/audio codec support.
Přehrávání wmv9 na architektuře x86_64
Zhruba půl hodiny googlení nasvědčovalo tomu, že jedinou šancí bude instalování 32 bitové verze mplayeru, mencoderu a Windows kodeků. Už jsem se hrozil toho ručního rozbalování balíků a řešení závislostí, co mě čeká. Naštěstí jsem narazil na zápisek na Ubuntu Geek. Marius Grannæs si dal tu práci a vytvořil balík s 32 bitovým mplayerem a mencoderem pro amd64.
Postup instalace
- Nejdříve je zapotřebí mít nainstalovány balíky pro podporu 32 bitových aplikacích. Konkrétně ia32-libs, lib32asound2, lib32ncurses5, ia32-libs-sdl, ia32-libs-gtk, lib32stdc++6, ia32-libs-openoffice.org2.
- Poté nainstalovat 32 bitový mplayer
wget http://folk.ntnu.no/grannas/debs/mplayer32_20070130-1_amd64.deb sudo dpkg -i --force-all mplayer32_20070130-1_amd64.deb
- A nakonec nainstalovat kodeky
wget http://debian-multimedia.org/pool/main/w/w32codecs/w32codecs_20071007-0.1_i386.deb sudo dpkg -i --force-all w32codecs_20071007-0.1_i386.deb
Funguje to krásně. Pro přehrávání lze použít příkaz mplayer32, pokud si chci video pustit v jiném přerávači, stačí jej pomocí mencoder32 převést třeba do Xvidu.
Pár příkazů na závěr
- Přehrávání Óčka ve vysoké kvalitě pomocí mplayeru:
mimms "mms://stream2.idnes.cz/ocko-tv-hq?idostrova=ocko&MSWMExt=.asf" - |\ mplayer32 -ao alsa -framedrop -cache 8192 -
- Ukládání streamu na disk ve formátu asf (zvuk wma9):
mimms "mms://stream2.idnes.cz/ocko-tv-hq?idostrova=ocko&MSWMExt=.asf" OutputFile.asf
- Přímé ukládání streamu do mpeg:
mimms "mms://stream2.idnes.cz/ocko-tv-hq?idostrova=ocko&MSWMExt=.asf" - |\ mencoder32 -cache 8192 -oac lavc -ovc lavc -of mpeg -delay 0.5 \ -mpegopts format=dvd -vf scale=720:540,harddup -srate 48000 \ -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:\ vbitrate=5000:keyint=18:acodec=ac3:abitrate=192 \ -ofps 30000/1001 -o OutputFile.mpeg -
…to se hodí pro pozdější zpracování například v 64 bitovém Avidemuxu. Pro encoding „za běhu“ je nutné mít výkonější procesor.Nevím proč ale s avi soubory encodovanými z tohoto streamu měl Avidemux problémy, proto používám mpeg.Hodnotu parametru -delay určující zpožďování videa oproti zvuku je nutné vyzkoušet…