tvstreamrecord - Aufzeichnen von HTTP-Streams

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hallo sideshowbob,
Du hast doch hier die ganze Arbeit geleistet, während ich hier im Dunkeln stöberte :)
Im Endeffekt ist es Deine Idee, die jetzt endlich komplett zu funktionieren scheint. Ich habe diese Version nun schon über eine Stunde getestet, auf DS und Win und fand keine Fehler.
Der Stream muss in ffmpeg Form eingegeben werden:
Code:
rtmp://zzz.visionip.tv/live/zzz
In dieser Version kann jetzt jedem Kanal auch eine eigene Dateierweiterung gegeben werden (bei Deinem Stream muss dann zwangsläufig .flv eintragen werden). Diese wird auch in der Tabelle angezeigt.
Pfad zum ffmpeg kann im Config verändert werden (kann bei DS aber so bleiben! Bei Win-Systemen kann man auch z.B. c:\ffmpeg\ffmpeg.exe eingeben). Der endgültige Aufruf erfolgt mit folgenden Parametern:
Code:
'ffmpeg', '-i', 'rtmp://zzz.visionip.tv/live/zzz', '-t', AufnahmeDauer, '-acodec', 'copy', '-vcodec', 'copy', 'DeinPfad+Datum+Name+.flv'
Ich bitte Dich diese Version zu testen, bevor ich sie offiziell freigebe. Vielen Dank im Voraus, Du hast mir wirklich sehr geholfen!
Gruß
Pav
 

Anhänge

  • tvstreamrecord0.4.4a.spk
    688 KB · Aufrufe: 19
Zuletzt bearbeitet:

sideshowbob

Benutzer
Mitglied seit
07. Okt 2012
Beiträge
32
Punkte für Reaktionen
0
Punkte
0
Hallo,
sehr cool. Ich habe dein Programm kurz angetestet und es funktioniert bei mir! Ich habe jetzt erstmal nur einen Sender hinzugefügt und den mal 20 Minuten aufgenommen! Vielen Dank dafür. Ich werde noch ausgiebiger testen und morgen berichten!
Viele Grüße
Thomas
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Das freut mich! Ich warte dann gespannt auf Deine Rückmeldung
Hast Du denn Neuinstallation gemacht? Eigentlich kannst Du auch mit lokalen Paketen einen Update machen, dabei bleiben die Einstellungen erhalten.
 

sideshowbob

Benutzer
Mitglied seit
07. Okt 2012
Beiträge
32
Punkte für Reaktionen
0
Punkte
0
Hallo,
ich hatte ja noch nicht viel konfiguriert, von daher wollte ich auf Nummer sicher gehen und habe vorher deinstalliert. Ich wollte jetzt gerade anfangen zu testen, bin dabei aber auf zwei Fragen gestoßen. Es ist ja nun neu, dass man die Dateiendung mitangibt, wenn man einen Kanal einträgt. Da wollte ich fragen, ob bzw. wie man die Dateiendung in einer m3u playlist "verwursten" würde, damit sie mitimportiert wird? Ich habe daher erstmal nur 3 Sender erstellt. Die kann ich auch manuell aufnehmen (sehr geil), aber ich würde natürlich auch gerne den EPG benutzen. Da wollte ich fragen, welchen Kanalnamen ich denn genau benutzen muss? Also als Beispiel trage ich die ARD ein:
In deinem Programm erstelle ich einen Kanal, dabei ist Channel URL="rtmp://....daserste.stream" und File extension=".flv". Nun habe ich mir mal die http://xmltv.spaetfruehstuecken.org/xmltv/datalist.xml.gz angeguckt. Dort ist die ARD so zu finden:
Rich (BBCode):
<channel id="daserste.de">
<display-name lang="de">Das Erste</display-name>
<base-url>http://xmltv.spaetfruehstuecken.org/xmltv/</base-url>
Da man den EPG nur einmal am Tag aktualisieren kann ich meinen einen Versuch schon verdödelt habe, wollte ich fragen, welchen Eintrag aus der xml Datei ich in deinem Programm bei Channel name eintragen muss, damit der EPG zugeordnet wird (Ich weiß es gibt ja nur zwei Möglichkeiten, aber ich würde gerne auf Nummer sicher gehen :) ).
Viele Grüße
sideshowbob
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hallo sideshowbob,

ich hatte bisher keine Möglichkeit eingebaut, die Dateierweiterung aus der .m3u Datei zu importieren, weil meine .m3u-Liste diese nicht beinhaltet. Zwar könnte man diese bearbeiten und um die Erweiterungen ergänzen... meine Vorgehensweise ist aber etwas anders: wenn keine Erweiterung eingegeben oder durch den Import einer .m3u nicht gesetzt wird, wird bei Bedarf die Erweiterung genommen, die in der Konfiguration steht. Damit ist sichergestellt, dass auch nach dem Import die Erweiterung global verändert werden kann. Solltest Du jedoch eine Erweiterung fest eintragen, bleibt sie auch für immer fest.

Bei der Synchronisierung der EPG-Daten wird immer auf den kompletten Namen geschaut (in diesem Fall 'Das Erste'), eine andere Verknüpfung ist leider nicht möglich. Das heißt, Dein Kanal muss ebenfalls genau 'Das Erste' heißen, dann kann die Synchronisierung stattfinden. Es ist zwar schade, dass man nur einmal am Tag die Daten abfragen kann, da dies jedoch ein kostenloser Anbieter ist, habe ich vollsten Respekt für seinen Einsatz und befolge seine Regeln, die darauf ausgelegt sind, seine Serverlast zu reduzieren. Da sich seine Daten jedoch auch selten aktualisieren, reicht eigentlich sogar eine Aktualisierung einmal pro Woche, um wieder alles aufzufüllen.

Ich empfehle Dir auch einen Blick auf die neue Funktion werfen, womit man wiederkehrende Sendungen ohne EPG aufnehmen kann (ob Nachrichten oder Zeichentrickfilme -- jedem das Seine). Das ist gewisserweise ein Ersatz für die limitierte EPG-Funktionalität.

So, ich hoffe, ich konnte Dir etwas helfen :cool:
Nachdem Du nun einiges getestet hast, meinst Du, man dürfte die Version so freigeben, so dass auch die Anderen in Genuss kommen dürfen? :)

Gruß
Pav
 

sideshowbob

Benutzer
Mitglied seit
07. Okt 2012
Beiträge
32
Punkte für Reaktionen
0
Punkte
0
Hallo,
Ok dann ist es ja kein Problem. Ich habe bei mir einfach auf die Standardendung .flv umgestellt und dann alle Sender importiert. Funktioniert gut. Aufnahmen klappen auch! Ich wollte auch nicht kritisieren. Es ist doch selbstverständlich sich an die Forderungen bzgl. EPG-Abruf zu halten. Ich habe jetzt mal eine wiederkehrende Aufnahme eingerichtet. Da kann ich morgen berichten, ob das so klappt wie gedacht. Beim EPG wird bei mir nichts angezeigt, obwohl mehrere Sender genau wie in der xml Datei heißen. Da kann ich, nachdem ich morgen früh den EPG wieder synchronisieren kann, sagen, ob es ein Bug ist oder nicht. Die wesentlichen Features funktionieren aber sonst gut (http habe ich nicht getestet)!
Also nochmal vielen Dank für das nette Programm! Jetzt könnte ich meinen DVB-T Stick in Rente schicken, wenn ich wollte.
Viele Grüße
sideshowbob
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Das ist schön, dass alles läuft!
Ich überlege mir, dass ich zumindest bei dem EPG-Hauptverzeichnis diese Zeitprüfung rausnehme und sie nur bei einzelnen Kanälen belasse. Damit wäre es zumindest möglich, neue Kanäle einzupflegen und sie sofort einzulesen. Vielleicht habe ich damit ja über das Ziel hinaus geschossen.
Bei einer wiederkehrenden Aufnahme, sofern sie aktiv ist, steht immer das Datum der nächsten Aufnahme an. Nach jeder Aufnahme wird geprüft, wann der nächste Termin ist, und das Datum wird entsprechend geändert. Wenn eine solche Aufnahme pausiert ist, bleibt das Datum vorerst eingefroren. Erst bei Wiederaktivierung erfolgt eine Prüfung und die Aufnahme wird auf den nächsten Zeitpunkt gelegt. Bisher hat es bei mir ohne Probleme funktioniert.
Ich wünsche Dir noch viel Spaß damit und möchte mich nochmal bei Dir bedanken für Deine Unterstützung und Deine guten Ideen.
MfG / Pav
 

sideshowbob

Benutzer
Mitglied seit
07. Okt 2012
Beiträge
32
Punkte für Reaktionen
0
Punkte
0
Hallo,
das mit dem EPG ist ein bisschen nervig beim Einrichten. Aber wenn es dann läuft, ist es ja egal. Ich finde es nicht so schlimm, dann habe ich morgen was, was ich nachgucken kann ;) .
Ich wollte rtmp ja gerne implementiert haben. Also von daher habe ich zu Danken für deine freundliches Entgegenkommen und die super schnell Implementation!
Viele Grüße
sideshowbob
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Perfekt! :)
Ich habe die neuste Version nun hochgeladen und sie sollte in Kürze im Paketzentrum erscheinen. Dort kann man nun EPG Verzeichnis auch öfter laden, falls man neue Kanäle hinzufügt.
Viel Spaß noch!
 

mik2006

Benutzer
Mitglied seit
11. Jul 2012
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Port 8030

Hallo,

Würde es gerne ausprobieren.

Leider scheitere ich schon daran, dass meine DS auf Port 8030 nicht antwortet. (Unable to connect)
Muss ich den Port noch irgendwo frei schalten? Wie stelle ich fest, ob der Service läuft (ps)?
(Programm ist installiert und gestarted. Python passt auch. URL habe ich richtig von Link in Package Info. Port in config.py ist 8030).

Danke
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hallo mik2006,
es werden keine Freigaben benötigt. Anbei ein paar Ideen:
1) bitte probiere eine andere Version von Python aus. Meistens liegt es daran. Im Idealfall sollte es die Version sein, die direkt von Synology kommt (unter Paketzentrum -> Verfügbar, Version 2.7.3-011), da sie ohne Pfad aufgerufen werden kann (mit dem Befehl 'python'). Prüfe bitte, ob Du 'python' einfach so aus der Konsole aufrufen kannst. Wenn Du eine andere Python Version hast und Dein RAID nicht volume1 heißt, ist das definitiv die Lösung :)
2) Mein Programm soll sichtbar sein mit dem Befehl:
Code:
ps -w | grep tvstreamrecord
3) Wenn das Programm läuft, schaue bitte in die Datei log.txt im Programmverzeichnis (i.d.R. '/volume1/@appstore/tvstreamrecord')
Ich hoffe, das hilft.
Beste Grüße und melde Dich bitte auch wenn es geklappt hat, damit ich auch die Lösung kenne :)
 

mik2006

Benutzer
Mitglied seit
11. Jul 2012
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Pavion,

danke für die Hilfe. Jetzt klappt es.

tvstreamrecord lief nicht obwohl Status "Running" im Package Center angezeigt war.
(Im Programmverzeichnis gab es auch kein log file).

Hatte Python via iPKG installiert.
Nach Installation von Python im Package Center funzt es (angeblich 2.7.3-011).
Und zwar obwohl in der Konsole immer noch 2.5.6 angezeigt wird, selbst nach einem Neustart.

Danke
Mik
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hallo mik2006,
es liegt nicht an der Version, sondern daran, dass mein Programm den Pfad zum Python aus dem IPKG nicht kennnt. Alle drei über Paketzentrum installierbaren Versionen hätten sonst auch funktioniert.
Gruß
Pav
 

mik2006

Benutzer
Mitglied seit
11. Jul 2012
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo mik2006,
es liegt nicht an der Version, sondern daran, dass mein Programm den Pfad zum Python aus dem IPKG nicht kennnt. Alle drei über Paketzentrum installierbaren Versionen hätten sonst auch funktioniert.

Ja ok, aber unabhängig von Deinem Programm ist es doch seltsam, dass das Package Centre angeblich eine neuere Version installiert hat, die dann in der Command Line nicht aufgerufen wird. (Ich werde das Ganze mal zurück rollen und nur via Paketzentrum installieren. Nur um sicher zu sein, was jetzt eigentlich wann verwendet wird).

NACHTRAG: Nach dem Deinstallation und Neuinstallation nur via Paketzentrum habe ich jetzt in der Command Line Python 2.7.3.
 
Zuletzt bearbeitet:

Lobbie

Benutzer
Mitglied seit
03. Okt 2008
Beiträge
138
Punkte für Reaktionen
0
Punkte
22
Hallo Pav,

ich werde es mal mit meiner Dreambox am Wochenende testen, wenn ich Zeit finde. Den Stream kann ich glaube auch normal über einen Browser aufrufen...also müsste es vielleicht sogar funktionieren Ich werde dann berichten.

Vielleicht ist einer, der auch eine Dreambox hat, etwas schneller als ich und testet das auch mal?

Gruß
Ronald


Hallo Ronald,
von einer Dreambox auf die DS aufnehmen ist ganz einfach.:)
Dafür brauchst du nur einen gemeinsamen Ordner auf der DS mit entsprechenden NFS-Berechtigungen.
Diesen kannst du dann auf der DB mounten und schon kannst du als Aufnahmepfad die DS verwenden. Mit guter LAN-Verbindung laufen auch HD-Aufzeichnungen einwandfrei.

Gruss
Lobbie
 

fbl1

Benutzer
Mitglied seit
24. Sep 2010
Beiträge
881
Punkte für Reaktionen
0
Punkte
42
Hallo Leute,

hab hier ein paar kleinere Probleme mit den Aufnahmen. Die meisten haben Formate dich ich getestet hab hatten sehr starkte Artefakte und die Audiospur war nicht syncron.
Hab jetzt das .ts (standard) und das .mp4 bisher mit den besten ergebnissen. Nur das mit der Audiospur macht noch Probleme. Hat da irgend jemand einen Tipp wo man das Einstellen kann bzw. was ich übersehen haben.

Danke.
Frank
 

theMario

Benutzer
Mitglied seit
29. Dez 2011
Beiträge
403
Punkte für Reaktionen
0
Punkte
22
Hallo Pavion,

habe mir dein tvstreamrecord einmal installiert. Python vorher aus dem Paketzentrum läuft auch. Allerdings habe ich ein paar Probleme.
Habe mir eine .m3u geladen und installiert. Die Sender werden auch angezeigt.
1. Das Laden der EPG funzt nur für Arte HD, ARD HD, und ZDF (heute bis 2 Uhr morgens)
2. In "Auftrag" gegebene Aufnahmen werden zwar gespeichert und auch angezeigt - auch grün - aber weder der in der config angegebene Ordner, noch die .ts Datei werden erzeugt.

Was fehlt?

LG theMario
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hallo Frank,
ich nehme an, Du versuchst einen RTP/RTMP Stream aufzuzeichnen? In solchen Fällen wird die Aufgabe an FFMPEG übergeben und mein Programm ist dann nur eine Oberfläche dafür. Wenn Du deinen Stream auf dem PC mit z.B. VLC abspielen kannst, schau dort nach Codec- oder Medieninfo im Menü Extras. Mit dem gleichen Format sollte FFMPEG am besten funktionieren. Du kannst auch FFMPEG für Deinen PC manuell runterladen oder aus der DS-Konsole aufzufen und damit direkt experimentieren. Eine etwas genauere Beschreibung ist in meinem Programm unter "About" zu finden.
Wenn Du noch nicht alle möglichen Erweiterungen probiert hast, hier ein paar weitere Ideen: mkv, mov, avi, flv.
Gruß
Pav
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat