tvstreamrecord - Aufzeichnen von HTTP-Streams

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Zum 1. Punkt kann ich leider auch nicht viel sagen. Viel zu viel hängt von der verwendeten ffmpeg-Version, dem Stream, dem Gerät usw. ab...
TS ist meist die sicherste Variante, da sie "geschmacksneutral" ist. Wird eine andere Erweiterung genommen, versucht ffmpeg diese zu deuten und intern andere Parameter zu wählen.

Zum EDIT: die gesuchten Einstellungen treffen nur auf die EPG-Aufnahmen zu. In diesem Reiter sind sie auch weiterhin zu finden :)
 

hulahoop

Benutzer
Mitglied seit
04. Jan 2019
Beiträge
33
Punkte für Reaktionen
1
Punkte
8
Zu 1: Echt komisch, da es ja vor dem Update auf die 7er Version ging - aber ich weiß natürlich nicht mehr, welche ffmpeg Version ich da installiert hatte. Aber gut, das lässt sich vielleicht noch rausfinden. Ich könnte ja irgendeine ältere testen, oder brauche ich für die 7er Version eine "Mindestversion" von ffmpeg?

Zu 2: Das war wohl ein Anzeigefehler. Ist bei mir nicht aufgetaucht. Erst als ich bei Theme (welches blank war) etwas ausgewählt hatte, wurden mir jetzt die Felder korrekt angezeigt. Und die Anzeige sieht nun auch besser aus. Danke! :)
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
1) An sich "braucht" TSR keine besondere Version von ffmpeg. Angesichts vieler DS-Modelle war es bis DSM7 für mich einfacher, mich auf die VideoStation zu verlassen, wobei diese immer eine spezielle Version von ffmpeg liefert und natürlich nach eigenem Ermessen ändert/austauscht. Welche VideoStation unter welchem DSM auf welchem System welche Protokolle usw. unterstützt - bleibt wohl eher ein Geheimnis. Mit einer manuell installierten Version hat man dafür die Sicherheit, dass diese auch immer gleich funktionieren wird.

2) Ich hatte von diesem Fehler schon ein paar Mal gehört, habe ihn aber nicht nachvollziehen können. Hast Du Deine Installation migriert und die alte Datenbank verwendet? Ich hatte zwar schon etwas an Themes geändert, dachte aber alles durchgetestet zu haben...
 

hulahoop

Benutzer
Mitglied seit
04. Jan 2019
Beiträge
33
Punkte für Reaktionen
1
Punkte
8
1) Naja ich hatte ja extra die aktuelle ffmpeg Version heruntergeladen, daher dachte ich, ich könnte es benutzen, wie vorher auch (mit mp4 und mpg). War wohl ein Trugschluss. ;)

2) Den Fehler hatte ich schon zu DSM6 Zeiten. Kam wohl durch ein Update von irgendeiner TSR Version. Die Anzeige überall war bescheiden und auch im EGP chart konnte man nur schwer navigieren, da es nur Text gab und gar keine Farben oder Abgrenzungen der Textboxen. Aber erst jetzt mit DSM7 habe ich (zufällig) die Ursache dafür gefunden, dass eben das "Theme" blank war und man einfach eines auswählen musste, damit alles wieder chic ist. :D
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Ja keine Ahnung, ich habe immer wieder versucht, eine Migration von/zu allen möglichen Versionen vorzusehen, ging wohl irgendwie daneben :)

@all: bei Problemen mit der Darstellung nach Re-/Neuinstallation bitte zuerst prüfen, ob Theme korrekt ausgewählt ist. Danke!
 
  • Like
Reaktionen: hulahoop

hauptt

Benutzer
Mitglied seit
19. Dez 2019
Beiträge
4
Punkte für Reaktionen
1
Punkte
3
Moin,
erstmal vielen Dank für das Programm! Ich habe es bereits schon länger im Einsatz und bin begeistert.

Nun hab ich auf DSM 7 geupdated und TSR war nicht mehr da. Daraufhin habe ich TSR 1.6.2 installiert und nun bekomme ich bei einer Aufnahme folgendes Log:

2021-08-18 10:36:00.001 FFMPEG (http) record 'Test' called with:
2021-08-18 10:36:00.001 ['ffmpeg', '-i', 'http://XXXXXXXXXX/9023', '-y', '-t', '119', '-loglevel', 'info', '-map', '0', '-c', 'copy', '/volume1/${tsr_output_share}/20210818103600 - Test.ts']
2021-08-18 10:36:00.011 FFMPEG record 'Test' ended with an error:b"ffmpeg version 4.1.6 Copyright (c) 2000-2020 the FFmpeg developers\n built with gcc 7.5.0 (GCC)\n configuration: --prefix=/usr --incdir='${prefix}/include/ffmpeg' --arch=i686 --target-os=linux --cross-prefix=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu- --enable-cross-compile --enable-optimizations --enable-pic --enable-gpl --enable-shared --disable-static --disable-stripping --enable-version3 --enable-encoders --enable-pthreads --disable-protocols --disable-protocol=rtp --enable-protocol=file --enable-protocol=pipe --disable-muxer=image2 --disable-muxer=image2pipe --disable-swscale-alpha --disable-ffplay --disable-ffprobe --disable-doc --disable-devices --disable-bzlib --disable-altivec --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libmp3lame --disable-vaapi --disable-cuvid --disable-nvenc --disable-decoder=amrnb --disable-decoder=ac3 --disable-decoder=ac3_fixed --disable-encoder=zmbv --disable-encoder=dca --disable-decoder=dca --disable-encoder=ac3 --disable-encoder=ac3_fixed --disable-encoder=eac3 --disable-decoder=eac3 --disable-encoder=truehd --disable-decoder=truehd --disable-encoder=hevc_vaapi --disable-decoder=hevc --disable-muxer=hevc --disable-demuxer=hevc --disable-parser=hevc --disable-bsf=hevc_mp4toannexb --x86asmexe=yasm --cc=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-wrap-gcc --enable-yasm --enable-libx264 --enable-encoder=libx264\n libavutil 56. 22.100 / 56. 22.100\n libavcodec 58. 35.100 / 58. 35.100\n libavformat 58. 20.100 / 58. 20.100\n libavdevice 58. 5.100 / 58. 5.100\n libavfilter 7. 40.101 / 7. 40.101\n libswscale 5. 3.100 / 5. 3.100\n libswresample 3. 3.100 / 3. 3.100\n libpostproc 55. 3.100 / 55. 3.100\nhttp://XXXXXXXXXX/9023: Protocol not found\nDid you mean file:http://XXXXXXXXXX/9023?\n"
2021-08-18 10:36:00.011 Something went wrong with 'Test', retry 1/99 in 10 seconds

Hast Du einen Tipp, warum ich diese Meldung bekomme und was ich machen kann, um TSR wieder nutzen zu können?

Vielen Dank für deine Mühe!

Grüße
hauptt
 

Pavion

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

Du hast zwei Möglichkeiten:

- falls nicht bereits versucht, kannst Du den Schalter "Legacy-Aufzeichnungsmethode für http-Streams verwenden" unter "FFMPEG" aktivieren und schauen, ob es funktioniert (dann ohne ffmpeg und nur für http)

- tut es das nicht, musst Du wohl ebenfalls ffmpeg manuell installieren. Das ist in meinem Readme beschrieben und bereits hier im Thread diskutiert
https://github.com/Pavion/tvstreamrecord#ffmpeg-support

Falls Du Fragen dazu hast, melde Dich gern per PM / Mail.

BR Pav
 

hauptt

Benutzer
Mitglied seit
19. Dez 2019
Beiträge
4
Punkte für Reaktionen
1
Punkte
3
Vielen Dank! Legacy und die Rechteeinstellungen des Aufnahmeordners (was ich vergessen hatte) haben geholfen!
 
  • Like
Reaktionen: Pavion

MaxiTaxi44

Benutzer
Mitglied seit
02. Mrz 2021
Beiträge
16
Punkte für Reaktionen
1
Punkte
3
Hallo Zusammen,

ich war bereits vor einiger Zeit bereits im Synology-Forum aktiv und seither ist das Tool super gelaufen!
Auch die Kombination mit TV-Browser ist sehr cool.

Leider habe ich folgendes Problem:
Ich nutze auf einer VM seit längerem DSM7 und dort auch tvstreamrecord. Immer problemlos.

Am Wochenende wurde dann auch meine Produktivnas auf DSM7 gezogen und ich wollte tvstreamrecord hier installieren. Bei exakt gleicher Konfiguration erhalte ich aber immer folgende Meldung:
2021-08-22 12:34:40.869FFMPEG (udp) record 'TestIU' called with:
2021-08-22 12:34:40.869['/volume1/tvstreamrecord/ffmpeg/ffmpeg', '-i', 'udp://@232.0.20.35:10000?sources=87.141.215.251', '-y', '-t', '79', '-loglevel', 'info', '-acodec', 'copy', '-vcodec', 'copy', '-ignore_unknown', '/volume1/tvstreamrecord/Aufnahmen/20210822123440 - TestIU.ts']
2021-08-22 12:36:30.123FFMPEG record 'TestIU' ended with an error:b'ffmpeg version 4.3.2-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2021 the FFmpeg developers\n built with gcc 8 (Debian 8.3.0-6)\n configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg\n libavutil 56. 51.100 / 56. 51.100\n libavcodec 58. 91.100 / 58. 91.100\n libavformat 58. 45.100 / 58. 45.100\n libavdevice 58. 10.100 / 58. 10.100\n libavfilter 7. 85.100 / 7. 85.100\n libswscale 5. 7.100 / 5. 7.100\n libswresample 3. 7.100 / 3. 7.100\n libpostproc 55. 7.100 / 55. 7.100\nudp://@232.0.20.35:10000?sources=87.141.215.251: Immediate exit requested\nExiting normally, received signal 15.\n'
2021-08-22 12:36:33.007FFMPEG Record 'TestIU' had to be killed. R.I.P.
2021-08-22 12:36:33.007FFMPEG Record 'TestIU': termination may have failed

Bei Aufnahme mit der VM funktioniert alles problemlos. Ich habe auch den -ignore_unkown Parameter angefügt, aber dieser bringt keine Änderung (hatte mal zwischenzeitlich einen Fehler der darauf hinweisen könnte).
Die VM läuft auf genau der Produktivnas um die es sich handelt und der Stream kommt somit auch im genau gleichen Format, von der genau gleichen FritzBox.

Ich habe auch lange Zeit noch unter DSM6.2 die Vorgängerversion von tsr genutzt und auch hier ist von heute auf morgen dieser Fehler aufgetreten. Ich verstehe aber nicht warum und woher dieser Effekt kommt. Ich habe natürlich auch schonmal alles neu installiert, genauso wie ich einmal die komplette Datenbank usw. der VM im Produktivsystem getestet habe. Alles kein Erfolg..

Während der Aufnahme sieht man auch, dass die NAS Netzwerktraffic zeigt, in meinen Augen also ganz klar aufnimmt.
Es ist dabei auch egal ob ich 1 Minute oder 5 Stunden aufnehme. Der Traffic ist da und im Anschluss R.I.P :unsure:

Hatte jemand schonmal einen solchen Effekt und ich übersehe nur eine Kleinigkeit?

Viele Grüße
Maxi
 

Pavion

Benutzer
Mitglied seit
02. Feb 2013
Beiträge
567
Punkte für Reaktionen
14
Punkte
44
Hi Maxi, hast Du vielleicht Firewall an?
Im Zweifelsfall versuche bitte den Befehl in der Konsole auszuführen.
Gruß
Pav
 

MaxiTaxi44

Benutzer
Mitglied seit
02. Mrz 2021
Beiträge
16
Punkte für Reaktionen
1
Punkte
3
Hi Pavion,

ja ich habe eine Firewall und hatte diese auch testweise deaktiviert.
Dann ging es weiterhin nicht.

Heute nochmal alles an tvsr platt gemacht und neu installiert (VM Datenbank und alles übernommen). Zusätzlich Firewall aus... es läuft! :cool:

Jetzt die spannende Frage:
Was benötigt TVStreamrecord in der Firewall an Freigaben?
Immer der jeweilige Stream? Also die entsprechende Adresse des TV Streaminggerätes?

Ohne Firewall funktioniert der Befehl dann natürlich auch in der Konsole. Warum mir das nicht schon eher aufgefallen ist, keine Ahnung... :rolleyes:

Viele Grüße und danke für die schnelle Antwort!
Maxi

Edit:
Es reicht wenn in der Firewall die 87.141.215.251 zugelassen wird. In meinem Fall (Magenta TV und FritzBox) ist das die Quelladresse für die einzelnen TV-Streams.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Pavion

Jan_St

Benutzer
Mitglied seit
16. Aug 2015
Beiträge
40
Punkte für Reaktionen
4
Punkte
8
Hallo,

vorweg: Ich benutze aus diversen Gründen noch DSM 6.2 und werde davon auch so schnell nicht wegkommen.

Nach einer notwendigen Wiederherstellung mittels Hyperbackup war natürlich auch TSR weg. Habs jetzt nachinstalliert, mit Version 1.5.1
Problem ist, dass auch ffmpeg aus dem Community Package nachinstalliert werden müsste. Ohne scheint die Aufnahme nicht zu funktionieren, da meist https-Streams aufzunehmen sind.

Leider ist ffmpeg in einer Version, die unter DSM 6.2 läuft nicht mehr auffindbar.
Wo bekomme ich das jetzt her?
Benutze eine DS215+ mit Annapurna CPU (Alpine4K)

Schönes Wochenende und viele Grüße
Jan
 

Jan_St

Benutzer
Mitglied seit
16. Aug 2015
Beiträge
40
Punkte für Reaktionen
4
Punkte
8
Hallo Pavion,
danke für die schnelle Antwort.
Bei mir liegt die Entscheidung für DSM 6.2 eher an der Photo Station, aber das nur nebenbei.

Die "Old Releases" habe ich gefunden. Danke für den Hinweis. Aber es ergeben sich daraus 2 Probleme.
1. Welche Version nehme ich? armel, armhf oder arm64. Die CPU basiert auf einem ARM Cortex A15.
2. Wie bekomme ich die dortigen Archive in ein spk kompiliert?

Viele Grüße
Jan
 

matbold

Benutzer
Mitglied seit
17. Sep 2021
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Gar nicht. ;)
Ich hab die Dateien einfach in eine Freigabe gelegt. Bei mir der video-Ordner. Dann ist der Pfad zur ausführbaren Datei: /volume1/video/ffmpeg/ffmpeg. Das funktioniert bei mir seit Jahren.

Der Cortex15 ist eine 32-Bit CPU. Müsste also armel oder amhf sein. Ich würde es einfach ausprobieren (Hab gut reden, ich hab eine Intel-CPU, da ist die Auswahl einfach :D).


@Pavion:
Nach dem Wechsel auf DSM7 gestern plagt mich jetzt das Problem, dass ich einen Fehler bekomme:
2021-09-17 19:16:45.944['/volume1/video/ffmpeg/ffmpeg', '-i', 'rtsp://192.168.0.1:554/?avm=1&freq=442&bw=8&msys=dvbc&mtype=256qam&sr=6900&specinv=1&pids=0,16,17,18,20,101,2201,2202,2203,2204,2206', '-y', '-t', '4094', '-loglevel', 'info', '-map', '0', '-ignore_unknown', '-c:v', 'copy', '-c:a', 'copy', '-c:s', 'copy', '/volume1/video/recording/test.ts']
2021-09-17 19:16:45.947FFMPEG could not be started. Error: [Errno 13] Permission denied: '/volume1/video/ffmpeg/ffmpeg'

Sowohl am recording als auch am ffmpeg-Ordner hat jeder Schreib und Leserechte. Der Vollständigkeit halber habe ich per FileStation auch für das Lesen und Schreiben den User tvstreamrecord hinzugefügt. Das ändert aber nichts. Führe ich den Befehl manuell an der Konsole aus, funktioniert es problemlos - wie früher auch. Der Fehler kommt doch aus Python, oder? Läuft das mit einem anderen User?

Habe ich was falsch eingestellt? Oder hat sich in DSM7 etwas grundlegend geändert?

Gruß,

Mathias
 

Jan_St

Benutzer
Mitglied seit
16. Aug 2015
Beiträge
40
Punkte für Reaktionen
4
Punkte
8
Vielen Dank an euch beide.
Jetzt läuft es wieder.

Ich habe die armhf genommen. Zur Erklärung: hf steht für hard float. Also die hardwarebasierte Fließkommaberechnung (FPU). Eine solche dürfte in den kleinen Versionen der DSen bis zur x16-er Version zum Einsatz gekommen sein. Ab der 18er Version werden ARM 64bit verbaut.

Viele Grüße
Jan
 

tommytom79

Benutzer
Mitglied seit
09. Sep 2013
Beiträge
605
Punkte für Reaktionen
13
Punkte
38
Hallo!

Ich bin auf der Suche nach einer Möglichkeit, mit meiner Fritzbox Cable 6490 TV Sendungen auf meine DS416play auf zunehmen. Ist das mit dem Programm "tvstreamrecord" unter DSM 6.2 möglich? Wenn ja, wie bekomme ich die Software auf mein NAS? Ich habe zum Download nur eine alte Version 0.5.3 gefunden.

Ich hoffe, dass mir jemand helfen kann.
 

MaxiTaxi44

Benutzer
Mitglied seit
02. Mrz 2021
Beiträge
16
Punkte für Reaktionen
1
Punkte
3
Hallo tommytom79,

versuche es mal mit dieser Anleitung:
https://github.com/Pavion/tvstreamrecord

Du kannst tvstreamrecord über das Paketzentrum installieren oder im Docker etc. Das ist dort aber alles recht gut beschrieben.
Dort steht auch, wie man FFMPEG "installiert", falls notwendig.

Hier stehen auch nochmal Infos zu den einzelnen Releases, die es so gibt. Nachdem du noch DSM6.2 nutzt geht entweder das letzte DSM6 Build aus dem Paketzentrum oder eben eine Docker-Installation.
https://github.com/Pavion/tvstreamrecord/releases

Viele Grüße
Maxi
 

MaxiTaxi44

Benutzer
Mitglied seit
02. Mrz 2021
Beiträge
16
Punkte für Reaktionen
1
Punkte
3
Hallo Mathias,

ich hatte auch mal ein ähnliches Problem. Bei mir liegt FFMPEG im geteilten Ordner tvstreamrecord, dann sind viele Berechtigungsprobleme weg.

Ansonsten kann man in der Systemsteuerung unter "Freigegebener Ordner" ja die Berechtigungen zuweisen. Wenn man hier "Systembenutzer" auswählt dann kann man tvstreamrecord auch hier Lese- und Schreibberechtigungen zuweisen.
Bin mir aber nicht sicher, ob du das mit deinem zweiten Satz nicht eh meinst, dass das gemacht ist.

Über die Konsole bist du aber ja als Admin, der dann natürlich Berechtigungen hat in dem Ordner Video auch FFMPEG aufzurufen.

Wäre jetzt meine Idee, aber vielleicht hat Pavion dazu eine andere Meinung ;)

Viele Grüße
Maxi
 

matbold

Benutzer
Mitglied seit
17. Sep 2021
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
Hallo Maxi,

Hab das gleich mal ausprobiert und FFMpeg in den Ordner kopiert. Das hat besser funktioniert - aber nicht gut. Es gab immer noch einen Fehler. Diesmal aber konnte FFMpeg nicht schreiben. Also habe ich auch mal meinen Aufnahmeordner nach /volume1/tvstreamrecord konfiguriert.
Und siehe da... Der erste Test hat geklappt. :D (y)

Puh, endlich kann ich wieder aufnehmen. Die Zwischenlösung mit dem Kabelreciever geht, ist aber mühselig (hat aber den einen Vorteil: kann zwei Streams gleichzeitig aufnehmen). Vor allem ist die Anbindung nur mit 10MBit quälend langsam, wenn man die Aufnahmen per UPnp herunterladen will...

Danke für den Tipp auch wenn es noch nicht alles war - aber das hat den Weg geebnet! :)

Gruß,

Mathias
 


 

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