Jump to content

TimeshiftPlus Plugin, erweiterte Timeshift Funktionalität (Ringpuffer)


erwin

Recommended Posts

die percentage ist round(#TV.Timeshift.relativepos * 100). Da der wert auch in den skins genutzt wird, kann das format nicht geändert werden.

Link to comment

Naja Formatänderung und Skin ist klar. Hatte aber eine Formatänderung auch nicht im Sinn. Vielmehr ist es jetzt so dass percentage zu 100 werden kann, auch wenn _nicht_ in Liveposition. Wenn relativepos über deine round-Formel (so wie angegeben) implementiert wird hätte ich nichts gewonnen. Aber ich denke du hast mich schon verstanden worum es geht:

 

"Wenn die == 1 dann ist das die Liveposition" und genau nur dann.

Link to comment

der wert entspricht der intern verwendeten position. wenn er 1 ist, dann ist es mit sicherheit livetv und nicht nur "fast livetv" :). Ich hatte Deinen wunsch schon verstanden. :)

Link to comment
Also so:

 

- Timeshift im Ringpuffer

- Pausieren im Timeshiftordner aus den Optionen (hier SSD)

Worauf man hier noch aufpassen muss sind die DataManager-Variablen. Im ersten Fall greifen deine Variablen und im zweiten die vom DVBViewer. Damit man nur einen Satz variablen hat (weil man im Skin sowieso nicht unterscheiden kann), wäre es gut, wenn im zweiten Fall die DVBViewer Variablen deinen zugewiesen werden:

#Plugin.TimeshiftPlus.percentage = #TV.Timeshift.percentage

Link to comment

Noch so ein Fall wo man auf die Schnelle nicht dran denkt. Danke.

 

Im Übrigen ist so ein durch Pause ausgelöster fließender Wechsel des Speichermedium so doch nicht Ohne. Ich mein das jetzt gar nicht mal technisch. Sowohl beim Schreiben als auch beim Lesen kann ich mir die Positionen merken. Mir gehts eher um den Use-Case:

 

Der user timeshiftet im Ringpuffer, drückt pause und verschwindet. Jetzt wird der Pausenteil auf Platte gespeichert. Der user kommt und setzt mit play fort. Er könnte jetzt wie gewohnt im Ringpuffer positionieren. Dieser ist jetzt aber um den Pausenteil auf Festplatte erweitert worden. Was ist wenn Ringpuffer-gemäß der Zeitpunkt gekommen ist diesen Teil zu überschreiben, d.h. sollte der Teil jetzt mit einem Schlag aus dem Ringpuffer entfernt werden oder sollte dieser Teil ab jetzt zum Puffer gehörig betrachtet werden. Also Mischkonfiguration ab sofort auch ohne weitere Pause. Und wenn weitere Pausen hinzukommen. Man sieht hier wirds jetzt von der Logik ziemlich kompliziert. Bin noch am Überlegen. Vieleicht kannst du ja mal ein par use-cases mit Pause skizieren.

Link to comment

Worauf man hier noch aufpassen muss sind die DataManager-Variablen. Im ersten Fall greifen deine Variablen und im zweiten die vom DVBViewer. Damit man nur einen Satz variablen hat (weil man im Skin sowieso nicht unterscheiden kann), wäre es gut, wenn im zweiten Fall die DVBViewer Variablen deinen zugewiesen werden:

#Plugin.TimeshiftPlus.percentage = #TV.Timeshift.percentage

Das würde ich schon transparent gestalten, also immer die #Plugin.TimeshiftPlus. variablen setzen auch wenn das Speichermedium Festplatte ist. Ich würde nur das Speichermedium wechseln nicht aber die Steuerung total an DVBV-Timeshift zurückgeben. Weiterhin sind trotz Namensähnlichkeit doch Unterschiede vorhanden. Meine Positionsvariablen z.B. zählen Sekunden genau.

Link to comment
Im Übrigen ist so ein durch Pause ausgelöster fließender Wechsel des Speichermedium so doch nicht Ohne.

Vielleicht sollten wir erstmal den Fokus auf die anderen Neuerungen legen (File, Index).

 

Der user timeshiftet im Ringpuffer, drückt pause und verschwindet. Jetzt wird der Pausenteil auf Platte gespeichert. Der user kommt und setzt mit play fort. Er könnte jetzt wie gewohnt im Ringpuffer positionieren. Dieser ist jetzt aber um den Pausenteil auf Festplatte erweitert worden. Was ist wenn Ringpuffer-gemäß der Zeitpunkt gekommen ist diesen Teil zu überschreiben, d.h. sollte der Teil jetzt mit einem Schlag aus dem Ringpuffer entfernt werden oder sollte dieser Teil ab jetzt zum Puffer gehörig betrachtet werden. Also Mischkonfiguration ab sofort auch ohne weitere Pause. Und wenn weitere Pausen hinzukommen. Man sieht hier wirds jetzt von der Logik ziemlich kompliziert. Bin noch am Überlegen. Vieleicht kannst du ja mal ein par use-cases mit Pause skizieren.

In der Tat nicht einfach, wenn man mal anfängt wirklich darüber nachzudenken.

Ich stelle mir das so vor (mit dem neuen Wissen, dass du in beiden Fällen, Ring und nicht Ring, die Kontrolle behältst), dass ab dem Zeitpunkt, wo der User in einer laufenden Timeshift-Session das erste Mal pause drückt, er nicht mehr weiter in die Vergangenheit springen kann. Der Ringpuffer von pause bis live wird mit maximal möglicher Geschwindigkeit ins File geschrieben. Die Position wird auf den Fileanfang gesetzt.

Link to comment

Ich habe grade gesehen, das der Playstate jetzt schon abfragbar ist mit "#currentplaystate" :)

die ergebnisse können sein:

'no graph'

'stop'

'pause'

'play'

Link to comment
Ich stelle mir das so vor (mit dem neuen Wissen, dass du in beiden Fällen, Ring und nicht Ring, die Kontrolle behältst), dass ab dem Zeitpunkt, wo der User in einer laufenden Timeshift-Session das erste Mal pause drückt, er nicht mehr weiter in die Vergangenheit springen kann. Der Ringpuffer von pause bis live wird mit maximal möglicher Geschwindigkeit ins File geschrieben. Die Position wird auf den Fileanfang gesetzt.

Evtl. noch eine OSD-Abfrage, ob man im Ringpuffer pausieren will oder eine neue Session ins File "ohne Begrenzung" starten will.

Link to comment

jo, nachfrage scheint mir am sinnvollsten. "schnelles schreiben ins file" könnte probleme bringen (u.U abhängig vom Volumen könnte das dauern).

 

Dummerweise hat sich auch noch meine Skystar hd2 von gestern auf heute berabschiedet. Kein Signal mehr. Keine Ahnung was los ist. War zwar Gewitterlage, aber so richtig gerumst hats nicht. Überspannungsspitzen im Netz? Wenn man schon nur langsam vorankommt, es gibt immer noch eine Bremse mehr.

Link to comment

na Danke fürs Angebot. Aber ich mach erstmal meine Hausaufgaben. Eventuell System neu aufsetzen. Bin mir nämlich nicht sicher ob die karte wirklich physisch hinüber ist, weil wie gesagt karte läuft, Rechner über Nacht aus und am nächstehn Tag kein Mucks mehr. Ob ich irgendwas installiert habe was erst nach erneutem Hochfahren wirksam wird - keine Ahnung. Wenn dem so wäre, würde mir auch eine Alternativkarte nichts nutzen. Muss ich hjalt klären

Link to comment

Nur für den Fall, dass da doch was kaputt ist und keine Garantie mehr drauf ist, könnte ich dir folgendes anbieten:

 

- TT-budget S2-3200 + CI (PCI)

- KNC ONE TV-Station DVB-S2 + CI (PCI)

- TT-connect S2-3650 CI (USB)

 

(selbstverständlich kostenlos)

Link to comment
  • 3 weeks later...

@erwin: Danke, deine Version von vor 2 Jahren läuft auf den ersten Blick prima. Hier im Thread steht zwar, dass es mit HD nicht möglich sein soll, hab damit aber auch keine Probleme feststellen können

Link to comment

Kann ich hier keine Beiträge erweitern?

Ich hätte dann dich eine Frage: Vorher konnte ich mit ENTER eine Infobar einblenden mit aktueller und nächster Sendung, jetzt kommt ein anderes Menü. Wie kann ich das wiederherstellen?

Link to comment

Hier im Thread steht zwar, dass es mit HD nicht möglich sein soll, hab damit aber auch keine Probleme feststellen können

Der Thread hat mal als rein experimentelles proof-of-concept angefangen. Eine HD-Karte hatte ich damals noch nicht. Deshalb von mir vorsichtshalber die Einschränkung.

 

deine Version von vor 2 Jahren

So lange ist das schon wieder her?! Seit geraumer Zeit liegt bei mir eine neue Version in der Schublade. Es fehlt nur noch das Finish. Aber irgendwas kommt immer dazwischen es fertigzustellen.

 

Mal ne Frage. Du sagst es läuft. In einem anderem Thread hast Du von 8 GB gesprochen. 8 GB konnte ich bisher noch nicht testen. Beschreib mal Deine Konfiguration.

Edited by erwin
Link to comment

Was ist denn an der Konfiguration interessant? Habe Windoews7 x64 installiert, Quad-Core CPU, und halt 8Gb ram, interne DVB-S2 Karte. Bei Timeshift hab ich aber nur 1GB zugewiesen, falls du das meinst. Soll ja für den Rest noch was über bleiben :)

Link to comment
  • 2 weeks later...

Welche Version ist denn aktuell?

 

Ich hab hier die 1.2.1b. Der Link im Startposting führt ins Forum zurück. Man findet also keine Download-Quelle.

 

Ich benutze es immer noch nicht regelmäßig. Denn WENN ich das Timeshift brauche, dann um im laufenden Programm zurückzuspringen, udn aufzunehmen. Und dabei hab ich leider schon viele undefinierbare Fehler bemerkt. So zB. gab es beim Schneiden hinterher Audio-Video-Fehler.

Oder ein kontrolliertes Zurückspringen geht gar nicht, oder aber das Einrichten eines Ringpuffers über 2 GB scheitert, oder, oder...

 

Deshalb vertraue ich doch dem HDD-Timeshift, wo sowas nicht passiert.

Am RAM selbst liegt es nicht. Das hab ich getestet. Ich hab zB. mal eine RAM-Disk angelegt und das Timeshiftverzeichnis in dieses "Laufwerk" verlegt. Klappte anstandslos.

Edited by Klassikfan
Link to comment

Welche Version ist denn aktuell?

 

Ich hab hier die 1.2.1b. Der Link im Startposting führt ins Forum zurück. Man findet also keine Download-Quelle.

Das 3. oder 4. Posting von oben.

Link to comment
  • 2 months later...

Ich hab 2 Problem ich kann.

Wenn ich mehr als 2000Mb puffer einstelle sagt Timeshiftplus der Ram ist voll ob wohl noch platz ist.

Timeshift funktioniert nicht richtig mit Radio kanälen z.B Bayern 3

 

Außerdem wieder bei Digitaler ausgabe von einem Radio kannal manchmal nur noch quietschen ausgegeben aber ich glaube das liegt nicht an Timeshiftplus

support.zip

Edited by stoeggich
Link to comment

Wenn ich mehr als 2000Mb puffer einstelle sagt Timeshiftplus der Ram ist voll ob wohl noch platz ist.

Das sagt nicht das Plugin, sondern das OS.

Als 32-bit App unterliegt das Plugin (genauer Ringbuffer.exe) der üblichen 4GB Beschränkung. Diese 4GB teilen sich App mit max. 2GB und OS mit 2GB. Unter XP kann mit einer Boot.ini- Eintragung eine 3GB für die App + 1GB fürs OS Aufteilung erreicht werden. Wie man dies unter Win7/64 erreicht kann ich nicht sagen. Eine zukünftige Plugin-Version wird eine 64-Bit Ringbuffer.exe haben sowie "File" neben dem bisherigen RAM als Hintergrundspeicher. Damit wäre dein 2GB Problem erledigt.

 

Bis dahin mfg erwin

Link to comment

hmm, es gibt doch eine 64bit Ringbuffer.exe?!

 

Ja. War mal ne Versuchsversion (hatte auf feedback gehofft, da ich selbst damals kein 64 Bit zur Verfügung hatte). Inzwischen hab ich da einen prinzipiellen Programmierfehler entdeckt. Kann eigendlich nicht sauber laufen.

Also vorläufig: Hände weg von 64-Bit Ringbuffer.exe.

 

Vielleicht gibts den 3GB/1GB-Boot.ini Eintrag ja auch irgendwie für Win7/64?

 

erwin

Link to comment

sobalt ich 2001MiB eintrage und Timeshift starte kommte eine Meldung das nicht genügent Ram zur verfügung steht und das Default aktiviert wurden.

 

Nein ich hab keine 2GB beschränkung für Programme.

 

Wobei sich die auch bei 32Bit Betriebsystemen erweitern lässt mit mehr oder weniger Erfolg.

Edited by stoeggich
Link to comment

sobalt ich 2001MiB eintrage und Timeshift starte kommte eine Meldung das nicht genügent Ram zur verfügung steht und das Default aktiviert wurden.

Das meine ich mit Feedback. Mit Win7/64 habe ich bisher wenig getestet, deshalb ist diese Meldung für mich wertvoll. Dank dir erstmal. Normalerweise sollte keine Meldung erfolgen. Das Programm beginnt mit deiner Eingabe als Maximalwert, zählt dann runter was möglich ist. Also ohne Meldung "nicht genügent Ram zur verfügung steht und das Default aktiviert wurde".

 

Nein ich hab keine 2GB beschränkung für Programme.

Unterscheide bei deinem OS zwischen 32 Bit Programen und 64 Programmen.

 

Wobei sich die auch bei 32Bit Betriebsystemen erweitern lässt mit mehr oder weniger Erfolg.

???

 

erwin

Link to comment

Komische weis funktioniert jetzt alles ganz noraml wie es soll das einzige was ich geändert hab ist den Recording Service von 1.9.1 auf 1.9.2 zu patch.

Außerdem hab ich die Ringbuffer64 durch Ringbuffer32 ersetzt dann 3000 eingeben und wieder zurück zu Ringbuffer64. Jetzt bekomme ich keine fehlermeldung mehr. Im anhang befindet sich einen Screen von der Ringbuffer32.

 

 

 

Zu den Ram beschränkungen mit 32Bit Systemen es gibt viel anleitungen dazu wie z.B diese 4Gb-Ram unter XP nutzbar machen

Aber auch probleme daduch aber das ist hier nicht das Thema

post-110883-0-93665700-1316970275_thumb.jpg

Link to comment
  • 2 weeks later...

An gewünschten Startpunkt positionieren, dann Sofortaufnahme starten (So wie es auch ohne TimeshiftPlus funktioniert). Evt. vorher noch EOR-Marker setzen. Der EOR- (End-of-Record) ist eine anlernbare Action und stoppt die Aufnahme an dieser Stelle automatisch.

 

erwin

Edited by erwin
Link to comment

Jain.

 

Die Sofortaufnahme entnimmt aus dem Timeshift-Puffer die Daten mit maximaler Geschwindigkeit und dann wenn die Live-Position erreicht ist mit der Geschwindigkeit wie die Daten eintrudeln. Wenn der TimeshiftPlus-Puffer mit GBytes gefüllt ist kann dies dauern (normales kopieren solcher Dateien dauert ja auch) und muss abgewartet werden. Solange man den Sender nicht wechselt kann man jedoch beliebig im Timeshift oder Live positionieren, muss also die Aufzeichnung in Realtime nicht anschauen.

 

erwin

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...