Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Multimedia ja grafiikka => Aiheen aloitti: tetrao - 08.09.09 - klo:02.08
-
Minulla tuottaa hankaluuksia ajastaa crontabilla mencoder nauhoittamaan Tv-lähetyksiä. Käytössä seuraava bash skripti BB:tä varten:
#!/bin/bash
DATE=$(date +%Y_%m_%d)
DAY=$(date +%u)
FILENAME=$(echo "BB_${DATE}.avi")
PATH_=$(echo "/home/tetrao/Videos/Nauhoitukset/BB/")
if [ "${DAY}" -eq "7" ]; # Showtime is 1h 30min every Sunday
then
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:35:00
else
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:05:00
fi
Crontab tiedosto näyttää tältä:
# m h dom mon dow command
0 22 * * 2-6 /home/tetrao/CronFiles/dumpBB
0 21 * * 7 /home/tetrao/CronFiles/dumpBB
Alussa en saanut mitään näkyvää aikaiseksi, mutta viimein päädyin korvaamaan mencoder komennon rimpsulla /usr/local/bin/mencoder, jonka seuraksena kohde kansioon ilmestyi arviolta sekunnin video pätkä. En siis saanut ajastimella nauhoitettua sekuntia pidempään. Missähän vika mahtaa olla? Onko mahdollista että Crontabista käsin ei päästä käsiksi pakkauksessa vaadittaviin tiedostoihin?
-
Veikkaan ettei tuo -endpos toimi DVB-vastaanotossa. Oletko kokeillut tallentaa sen kanssa manuaalisesti?
-
Veikkaan ettei tuo -endpos toimi DVB-vastaanotossa. Oletko kokeillut tallentaa sen kanssa manuaalisesti?
Miten olisi -frames 25*sekunnit
-
Oletko kokeillut tallentaa sen kanssa manuaalisesti?
Joo olen kokeillut, että skripti toimii ilman ajastusta. (eli ilman cronia)
Harmi kun ei pääse näkemään Crontabin tekemisiä. Yritin muokata Crontab tiedostoa näin:
# m h dom mon dow command
0 22 * * 2-6 /home/tetrao/CronFiles/dumpBB > log
0 21 * * 7 /home/tetrao/CronFiles/dumpBB > log
Teki kyllä logi tiedoston, mutta se on tyhjä.. :(
-
Teki kyllä logi tiedoston, mutta se on tyhjä.. :(
Ohjaa myös stderr lokitiedostoon:
0 22 * * 2-6 /home/tetrao/CronFiles/dumpBB >& log
0 21 * * 7 /home/tetrao/CronFiles/dumpBB >& log
Voi kyllä olla, ettei tuo muutenkaan toimi crontabissa, eli laita nuo ohjaukset skriptiin, mencoderia kutsuville riveille.
-
Teki kyllä logi tiedoston, mutta se on tyhjä.. :(
Ohjaa myös stderr lokitiedostoon:
0 22 * * 2-6 /home/tetrao/CronFiles/dumpBB >& log
0 21 * * 7 /home/tetrao/CronFiles/dumpBB >& log
Voi kyllä olla, ettei tuo muutenkaan toimi crontabissa, eli laita nuo ohjaukset skriptiin, mencoderia kutsuville riveille.
Noniin, Nyt jotain irtosi:
MEncoder SVN-r29583-4.3.3 (C) 2000-2009 MPlayer Team
DVB CONFIGURATION IS EMPTY, exit
Failed to open dvb://Sub.
Cannot open file/device.
Exiting...
Eli ei varmaankaan pääse käsiksi tuohon: ~/.mplayer/channels.conf ?
lisäys: No ei varmaan onnistu, kun tv-kortti ei ollut edes kiinni koneessa. :) Otanpa uuden lokin
-
Toimiiko cronilla
mplayer dvb://Sub -dumpstream -dumpfile sub.ts
-
Tämä on tietyllä tapaa aika humoristista, sillä ongelman selvittely korjasi itse ongelman:
Tuolla saa sekunnin:
if [ "${DAY}" -eq "7" ]; # Showtime is 1h 30min every Sunday
then
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:35:00
else
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:05:00
fi
Tuolla vaikka tunnin tarpeen vaatiessa:
if [ "${DAY}" -eq "7" ]; # Showtime is 1h 30min every Sunday
then
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:35:00 >& /home/tetrao/log
else
/usr/local/bin/mencoder dvb://Sub -o "${PATH_}${FILENAME}" -profile x264 -endpos 01:05:00 >& /home/tetrao/log
fi
Testasin ainakin kolmeen kertaan kumpaakin, kun en muuten meinannut uskoa ;D
lisäys: Kiitokset avusta ja hyvistä vinkeistä!
-
Lueskelin äsken että crontab kerää myös lokia ja lähettää sen tarvittaessa määriteltyyn s-postiosoitteeseen. Ongelma saattoi johtua cronin turvonneesta lokitiedostosta, joka ei nyt turvonnut koska ohjautui tuohon omaan lokitiedostoon. Tiedä en, arvailuhan se vain on. Kävin läpi tuon oman lokitiedoston, siinä kyllä asiaa riittii. Tuossa otos loppupäästä:
Pos: 222.3s 5585f ( 0%) 24.96fps Trem: 0min 0mb A-V:-0.002 [277:48]
Pos: 222.4s 5586f ( 0%) 24.96fps Trem: 0min 0mb A-V:-0.003 [277:48]
Pos: 222.4s 5587f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.002 [277:47]
Pos: 222.4s 5588f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.003 [277:47]
Pos: 222.5s 5589f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.002 [277:47]
Pos: 222.5s 5590f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.003 [277:47]
Pos: 222.6s 5591f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.002 [277:47]
Pos: 222.6s 5592f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.001 [277:47]
Pos: 222.6s 5593f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.002 [277:48]
Pos: 222.7s 5594f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.001 [277:48]
Pos: 222.7s 5595f ( 0%) 24.95fps Trem: 0min 0mb A-V:-0.002 [277:48]
Kymmenesosa sekunnille tuli keskimäärin kolme riviä. Eli minuutilta 1800 riviä. Pitänee yrittää ohjata tuo loki suoraan roskiin. Onneksi lokitiedosto ei kuitenkaan turpoa itse nauhoitusta suuremmaksi. ;)
lisäys: Tarkemmin kun katsoo, niin näkyy olevan jokaiselle framille oma rivi yht. 5595 riviä vajaalle neljälle minuutille.
-
Kannattaa ainakin käyttää parametria -really-quiet sekä tarvittaessa ohjata tulosteet /dev/null-tiedostoon.