Latest:
- Sailfish OS and memory
- Hillshade tile server
- Statistics of OSM Scout for Sailfish OS
- Nebezpečný router
- Tree model with Silica components
By month:
- November 2021
- January 2019
- December 2017
- December 2016
- May 2014
- April 2014
- November 2013
- April 2013
- April 2011
- February 2011
- January 2011
- August 2010
- May 2010
- March 2010
- January 2010
- October 2009
- April 2009
- February 2009
- October 2008
- September 2008
- August 2008
- April 2008
- March 2008
- February 2008
Topic:
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…