Kirjoittaja Aihe: DigiTV tallennus ja editointi  (Luettu 2694 kertaa)

ihme-mies

  • Käyttäjä
  • Viestejä: 14
    • Profiili
DigiTV tallennus ja editointi
« : 11.01.09 - klo:20.27 »
Tuli hankittua tuollainen Anysee E30 Combo Plus ja saatuani sen toimimaan Antin ohjeiden jälkeen, on minulla nyt uusi projekti päällä  :)
Ajattelinkin sitten avata uuden threadin, koska kyseessä onkin nyt tallennus ja editointi kyseisellä laitteella. Pitemmittä puheitta, laitetaas tähän nyt sitten tuo minun pitkä juttu tuolta Anyseen threadistä:

Olisiko jollain hyvää vinkkiä, kuinka voisin ajastaa ohjelmia etänä esim. SSHn yli? Joskus kun on tien päällä eikä pääse käsiksi suoraan koneelle...

Nyt minulla on tälläinen skripti käytössä, mutta ongelmana on se että ProjectX ei tunnista noita tallenteita laisinkaan. Eli en pääse editoimaan esim. mainoksia sun muita pois tarvittaessa. Oletettavasti tuo mencoder tekee jotain kuitenkin datalle, vaikka onkin "copy" ja sen takia ProjectX ei materiaalia tunnista.

Koodia: [Valitse]
#!/bin/bash
mencoder dvb://"$1" -oac copy -ovc copy -idx -endpos "$2" -o "$3"/"$1-`date +'%F %T'`".ts > /tmp/"$1".log &2>1
rm 1

# Parameter 1 is the channel
# Parameter 2 is the endpos
# Parameter 3 is the directory to record into - the file name is the is CHANNEL-DATE.

Jos käytän mplayeriä tallentamaan, niin sen materiaalin ProjectX tunnistaa välittömästi ja pystyy editoimaan. Tässä käyttämäni skripti:

Koodia: [Valitse]
#!/bin/bash
mplayer -quiet -dumpfile "$1-`date +'%F %T'`".ts -dumpstream dvb://$1&
echo $! >~/.mplayer-dumpstream.pid
sleep $2 && kill `cat ~/.mplayer-dumpstream.pid`
rm ~/.mplayer-dumpstream.pid


Yritin saada tuohonkin mahdollisuuden antaa "ajan", jonka jälkeen tallennus lopetetaan, tälläistä toimintoa kun mplayerissä itsessään ei ikävä kyllä ole. Mutta tuo on jonkin syyn takia erittäin epätarkka, liekkö tuo sleep() -funktio sitten huono tai jotain?

Ehdotuksia siis edelleen otetaan vastaan, että saisi seuraavat ominaisuudet:
  • mahdollisimman kevyt, eli ei video previewtä laisinkaan (komentoriviltä vaikka SSHn yli pääsee laittaa nauhoituksia)
  • mahdollisuus antaa croniin ajastuksia (aloitusaika ja mahdollisuus kertoa kuinka pitkään tallennetaan)
  • editointimahdollisuus jälkikäteen
Onko nuo liikaa pyydetty?   ???

syväpaahto

  • Käyttäjä
  • Viestejä: 137
    • Profiili
Vs: DigiTV tallennus ja editointi
« Vastaus #1 : 11.01.09 - klo:21.25 »
Itse käytän crontabia ajastukseen.

Mites mplayerin "-frames"-optio joka määrää kuinka monta kuvaa kasitellään, ennen ohjelma sammuu? Suomessa käytettävässä DVB-virrassa on vakiona 25 kuvaa/s, eli ei muuta kun ynnäämään.

UbunTux

  • Käyttäjä
  • Viestejä: 2046
  • KubunTux
    • Profiili
Vs: DigiTV tallennus ja editointi
« Vastaus #2 : 11.01.09 - klo:22.24 »
1. skripti ilmeisesti törkkää AVI:a ulos se on meinaan oletuksena ja pitää muuttaa -of -vivulla. MEncoderissa toimii kunnolla vain avi, mpeg ja raakamuodot. -of lavf vipusta voi toki kokeilla, mutta ei välttämättä toimi. Ehkäpä, jos pistät mpegin -of mpeg -mpegopts format=dvd:tsaf  niin ProjectX alkaa toimia.

Minulla on tuollainen skripti
http://forum.ubuntu-fi.org/index.php?topic=11295.msg162157#msg162157

SSH:n kautta käyttänyt. X:n ja kaffeinen pitää olla päällä. Toiminut tähän mennessä vaikka kalenteri ei siinä ole täysin hallussa (ts idioottivarmuutta  :D).
KDE neon
Uudempaa KDE:tä Ubuntulla

ihme-mies

  • Käyttäjä
  • Viestejä: 14
    • Profiili
Vs: DigiTV tallennus ja editointi
« Vastaus #3 : 12.01.09 - klo:00.35 »
1. skripti ilmeisesti törkkää AVI:a ulos se on meinaan oletuksena ja pitää muuttaa -of -vivulla. MEncoderissa toimii kunnolla vain avi, mpeg ja raakamuodot. -of lavf vipusta voi toki kokeilla, mutta ei välttämättä toimi. Ehkäpä, jos pistät mpegin -of mpeg -mpegopts format=dvd:tsaf  niin ProjectX alkaa toimia.


Kiitoksia tuosta vinkistä! Tuon kun lisäsin, avaa ProjectX nyt tuon tiedoston kiltisti. Tässä nyt sitten korjattu skripti, jos joku muukin haluaa:
Koodia: [Valitse]
#!/bin/bash
mencoder dvb://"$1" -oac copy -ovc copy -of mpeg -mpegopts format=dvd:tsaf -idx -endpos "$2" -o "$3"/"$1-`date +'%F %T'`".ts > /tmp/"$1".log &2>1
rm 1

Huomasin vaan kun testasin tallentaa pidemmän aikaa, niin tuolla skriptillä alkaa tulemaan audio/video syncin kanssa ongelmaa. Kun oli mennyt n. 10 minuuttia, oli sync jo 100ms hukassa, tiedä sitten mistä tuo johtuu? Vai johtuuko playeristä.

Mutta itseasiassa sillä ei enää ole mitään väliä, nimittäin tuo 2. skriptikin toimii täydellisesti! Mplayer vaan sotkee aikakoodit täysin tallentaessa, joten näytti siltä että se olisi tallentanut vähemmän kuin mitä todellisuudessa, kun nopsaan testailin. Käyttäjä vika siis  ::)

Nyt olisikin tarkoitus sitten luoda jonkinlainen esim. python koodin pätkä, joka kysyisi selkeästi muutamat tiedot ja sen jälkeen syöttäisi niiden perusteella ohjelman cron listalle odottelemaan tallennusta. Sen jälkeen ajastaminen PuTTYllä kännystäkin pitäisi onnistua helposti  ;)
« Viimeksi muokattu: 12.01.09 - klo:00.40 kirjoittanut ihme-mies »