Podążaj za instrukcjami w poniższym filmie, aby zobaczyć, jak zainstalować naszą stronę jako aplikację internetową na ekranie głównym swojego urządzenia.
Informacja: Ta funkcja może nie być dostępna w niektórych przeglądarkach.
Niestety muszę odpowiedzieć sobie sam. Popularną "Trójkę" jak i inne programy Polskiego radia nadawane w wma udało mi się nagrać za pomocą MPlayera. Niestety nie jest on standardowo dostępny w pakietach na QNAPie więc należy go sobie zainstalować. Jak, jest opisane tutaj: https://forum.qnap.net.pl/viewtopic.php?f=39&t=1844
Po instalacji napisałem skrypt który jest wywoływany z crona. Skrypt wygląda tak:
Bash:
#!/bin/bash###################################################################### This is the script for recoridng radio station from internet ## The stream is captured to the wma file. Later converted to wav, ## and lately to mp3. ## ## Witten by: jdebs ## Date: 10.02.2012 ######################################################################Stream="http://stream.polskieradio.pl/program3"Record_file_wma="/share/MD0_DATA/Public/audycja_`date +%Y%m%d`.wma"Record_file_wav="/share/MD0_DATA/Public/audycja_`date +%Y%m%d`.wav"Record_file_mp3="/share/MD0_DATA/Public/audycja_`date +%Y%m%d`.mp3"#Setup record time: 2h 2minRecord_time=7320echo -e "==============================================================="echo -e " Record time: `date`"echo -e "===============================================================\n\r"# please notice at the end of mplayer command there is "&" sign. This switchs mplayer to the# background and lets bash continue to the next raw -> sleep# notice also that i placed direct path to executable. the parth could be checked using which command
/usr/local/bin/mplayer -cache 256 -dumpstream $Stream -dumpfile $Record_file_wma&sleep$Record_time#Get a process ID of MPlayerPID="pidof mplayer"echo -e "The Process ID of mplayer process is: `$PID`. Process is going to be killed...\n\r"#Streaming to the file could be stopped only by killing the process...killall -9 mplayer
echo -e "Time elypsed. Mplayer closed. Rrecording finished at `date +%T`\n\r"echo -e "Wait 5 sec ... for file conversion\n\r"sleep5echo -e "***************************************************************"echo -e "Convert from wma to wav: 44100 Hz, stereo, s16, 1411 kb/s"echo -e "***************************************************************"
/usr/bin/ffmpeg -i $Record_file_wma -vn -acodec pcm_s16le -ar 44100 -ac 2$Record_file_wav#Delete the wma filerm$Record_file_wmaecho -e "Wait 5 sec ... for file conversion\n\r"sleep5echo -e "***************************************************************"echo -e "Convert from wav to mp3"echo -e "***************************************************************\n\r"
/opt/bin/lame -h $Record_file_wav$Record_file_mp3#Delete the wav filerm$Record_file_wavecho -e "\n\r"echo -e "DOWNLOAD AND CONVERSION COMPLETED at `date +%T` !!!\n\r"echo -e "===============================================================\n\r"
Tak po krótce działa:
1. Streamuje/zapisuje do pliku WMA nadawaną audycję
2. Dekompresuje do pliku WAV z jakością CD: 44100 Hz, stereo, s16, 1411 kb/s"
3. Po kompresji kasuje WMA
4. Kompresuje do mp3
5. Kasuje WAV
Zalety:
1. Zachowana jakość. WMA jest Windowsowym formatem już skompresowanego dźwięku. Kompresowanie do mp3 od razu wiązało by się z utratą jakości.
Wady:
1. Przy długich nagraniach konwersja zajmuje dużo czasu i obciąża procesor do prawie 100%
2. Przy długich nagraniach wymagana jest duża ilość miejsca na pliki. Przykład: plik WMA po nagraniu 1h audycji ma ok 50MB. Rekompresja do WAV zwiększa rozmiar pliku do ponad 650MB. Dlatego po każdorazowej kompresji kasuje plik.
Założenia działania skryptu:
1. Zainstalowany enkodery ffmpeg i lame.
2. mplayer uruchomiony ze znakiem & na końcu - praca w tle. Możliwość przejścia do następnej komendy -sleep
3. Podane są pełne ścieżki do programów ffmpeg, lame i mplayer. Mozna sprawdzić istalacje używając komendy which <nazwa programu>
Przykład:
Inne uwagi:
1. Streamowanie w Mplayer nie może zostać zakończone komendą z lini poleceń. Zatem trzeba go "ubić". Słowo jak i metoda nie ładna, może ktoś ma inny pomysł?
2. Nadal uważam że ten program to "armata na muchę" ale inne metody (mimms, vlc, streamripper) w moim przypadku zawiodły. Jesli komuśzadziała z MiMMS, który jest dostarczany z ipkg to proszę dać znać.
3. Nie wiem dlaczego przyporządkowanie zmiennej
mplayer="/usr/local/bin/mplayer" i pózniejsze jej wykorzystanie jako mplayer -cache 256 -dumpstream $Stream -dumpfile $Record_file_wma & nie działa po restarcie systemu -> odpowiedź mile widziana.
4. Jak sobie przypomnę to dodam...
Wszelkie uwagi, komentarze usprawnienie skryptu mile widziane...
Miłego słuchania równiez streamów nie windowsowego formatu.
Jacek