Jump to content

Aufnahmen werden erst beim 2. Mal gelöscht


RalleN

Recommended Posts

Ich habe ein sehr merkwürdiges Problem:

 

  • Ich verwende aktuell Recording Service 1.31 und DVBViewer 5.5.1
  • Wenn ich eine Aufnahme per DVBViewer lösche, ist sie zunächst augenscheinlich gelöscht, erscheint aber am nächsten Tag wieder in der Liste der Aufnahmen. Die Ursache für das "wiedererscheinen" ist ein Aufgabe im RS, die abends um 21:00 die Datenbank aktualisiert.
  • Wenn ich die Aufnahme dann ein 2. Mal lösche ist sie dauerthaft entfernt.
  • Ich kann das Ganze auch nachvollziehen, indem ich die Aufnahme lösche, dann im RS manuell die Aufgabe "Datenbank aktualisieren" anstoße.
  • Auch hier ist die Aufnahme beim 2. Mal erst wirklich weg

 

Hat irgendjemand eine Idee, woran das liegen könnte?

 

Auf Wunsch lade ich gerne die support.zip hoch. Falls ja: Dann sicherlich von beiden System (also von RS-PC als auch vom DVBViewer-PC), oder?

 

Link to comment

So heute Abend hatte ich endlich Zeit es mir noch einmal genauer anzusehen. Und jetzt muss ich meine vorherige Aussage korrigieren. Es ist nicht so, dass die Aufnahme erst beim 2. Löschversuch vollständig gelöscht wird, sondern sie wird nur dann vollständig gelöscht, wenn ich sie nicht grade am DVBViewer abspiele. Da ich das aber schon seit Jahren so mache und nie ein solches Problem hatte, vermute ich mal, dass es entweder ab einer DVBViewer- oder einer Recording-Service-Version aufgetreten ist. Ab welcher kann ich nicht sagen.

 

Der Workaround ist jetzt, die Wiedergabe zu beenden und dann erst zu löschen. Dann geht's auch beim 1. Versuch. als endgültige Lösung finde ich das aber nicht optimal. Zum Hintergrund:

 

Ich habe einen kleinen USB-Monitor am HTPC, der mir mit Hilfe eines selbgeschrieben kleinen Programms (HtpcInfoMonitor -> auch hier zu finden) einige Infos zur Weidergabe, Aufnahme, aktuell geöffneten Menüs etc. anzeigt. Wenn ich nun während der Wiedergabe das Aufnähme-Menü im DVBViewer öffne und durch die Aufnahmen navigiere, wird auf dem Monitor die sich unter dem Cursor befindliche Aufnahme angezeigt. Ist dies die Aufnahme, die aktuell wiedergegeben wird, so erscheint diese zusätzlich in roter Schrift. Damit kann ich sicher sein, dass ich beim Löschen auch wirklich die korrekte Aufnahme erwische, da ich in der Regel sehr viele Aufnahmen z. B. der gleichen Serie habe.

 

Lösche ich nun ohne aktive Wiedergabe fehlt diese Kontrolle.

 

Was immer gelöscht wird, ist übrigens die .txt-Datei zur Aufnahme. Nur die .ts-Datei bleibt übrig, wenn die Aufnahme grade wiedergegeben wird. Beim Aktualisieren der DB ist sie dann wieder in der Aufnahmeliste vorhanden.

 

Kann man da etwas machen um wieder das alte Verhalten zu bekommen? Ist es evtl. Nur eine Einstellung?

Edited by RalleN
Link to comment

Das eine Datei die noch für die Wiedergabe geöffnet ist nicht gelöscht werden kann ist klar.

 

Das heißt beim Löschen Befehl müsste als erstes die wiedergebe beendet werden und die Datei geschlossen werden. Und dann darf der Löschbefehl erst ausgeführt werden. Ob eine Änderung da was beeinflusst hat kann ich nicht sagen.

 

Sonst kann die Datei zwar aus der Datenbank gelöscht werden, nicht aber von der Festplatte. Und beim wieder aufbauen der Datenbank tauche die Datei dann natürlich wieder auf.

 

Ich habe keine Ahnung wie aufwendig es ist, beim löschen die beschriebenen schritte vorher auszuführen (wenn eine andere Datei wiedergegeben wird wäre es ja blöd wenn dann auch die wiedergebe gestoppt würde) oder wiene Fehlermeldung auszugeben wenn das löschen nicht möglich ist.

 

Festzustellen ob eine Aufnahme Grade in einem weiteren Client wiedergegeben wird dürfte nahezu unmöglich sein das das ja über Windows Dateifreigaben geht.

 

Eine saubere Lösung wäre es wenn der RS überprüft ob das löschen erfolgreich war und wenn nicht eine Fehlermeldung ausgibt "Datei konnte nicht gelöscht werden da Grade auf die Datei zugegriffen wird". Und die dann auch in der Datenbank lässt, sonst kann man Plötzlich eine volle Festplatte haben obwohl man denkt man hätte alles gelöscht.

Link to comment

Wenn ich das richtig verstanden habe, liegt die Aufnahme auf einem Server PC, also nicht auf dem Client PC, wo der DVBViewer läuft. Richtig? Und wie genau bzw. wo löscht du sie im DVBViewer? Und was passiert dann? Wiedergabe bricht ab?

 

Du musst das mal so beschreiben, dass jemand, der nicht vor deinem PC sitzt, sich das vorstellen kann. Aussagen wie "ist augenscheinlich gelöscht" bringen überhaupt nichts. Was für dich augenscheinlich ist, können andere doch nicht sehen! Oder mache menetwegen ein Video und lade es bei YouTube hoch...

Link to comment

Also ich habe das so probiert.
DVBViewer ist so konfiguriert das er den RS verwendet und auch nur dessen Aufnahme liste anzeigt.
(bei mir sind DVBViewer und RS auf dem gleichen PC.
Aber so weit ich weiß übergibt der RS bei der wiedergebe nur den Pfad zur Aufnahme den er in der Datenbank hat an den Client.
Das heißt die wiedergebe klappt nur, wenn der DVBViewer über den gleichen Pfad zugriff auf die Aufnahme hat. Das heißt bei den Aufnahmeverzeichnis des RS muss es sich um eine Windows Freigabe handeln die über den gleichen Pfad wie im RS ach vom DVBViewer erreicht werden kann.)

1. wiedergabe der Aufnahme über OSD-Menü > Aufnahmen starten
2. während die wiedergebe läuft OSD-Aufnahmen erneut öffnen (Schliesse das OSD bei Video Wiedergabe ist aktiviert) und die Aufnahme mit OSD-Gelb löschen.
3. Die wiedergabe wird gestoppt und die Aufnahme wird von der Festplatte (.ts, .log und .txt) und aus der RS/DVBViewer Aufnahme Datenbank gelöscht.
4. RS Webinterface > Aufgaben > Datenbank aktualisieren bringt die Aufnahme auch nicht zurück. Da die Dateien ja gelöscht wurden.

Link to comment

Ich versuche es nun verständlich zu beschreiben:

 

Meine Umgebung:

  • Der RS (Recording Service) ist auf einem separaten Server installiert (siehe meine Signatur). Dieser Server ist ausschließlich für den RS zuständig.
  • Ich habe 2 DVBViewer-Clients, die selber keine SAT-Hardware an Bord haben, sondern ledglich ihre Daten vom RS streamen.
  • Die beiden Clients sind identisch so konfiguriert, dass alles über den RS läuft. Aufnehmen tun beide nichts
  • Es wird ausschließlich die Aufnahmeliste des RS verwendet

Das Problemszenario:

 

  • Ich beschreibe es hier für den Client mit DVBViewer 5.5.2, weil der meistens verwendet wird
  • Auf der Platte des RS liegen im Aufnahmeordner für jede Aufnahme genau 2 Daeien (*.ts, *.txt)
  • Ich öffne im DVBViewer per Menü die Aufnahmeliste und starte die Wiedergabe einer Aufnahme
  • Zugehörige Dateien auf RS sind vorhanden
  • Nachdem ich die Aufnahme vollständig gesehen habe, möchte ich diese löschen.
  • Dazu öffne ich im DVBViewer wieder die Aufnahmeliste, navigiere zur Aufnahme, und lösche diese per gelber Taste und Bestätigung im Dialog
  • Die Wiedergabe wird beendet und ich lande im Live-TV
  • Wenn ich danach im DVBViewer die Aufnahmeliste öffne, ist die grade gelöschte Aufnahme nicht mehr sichtbar
  • Auf der Platte des RS sehe ich dann, dass die *.txt fehlt, die *.ts aber noch vorhanden ist (hier was das mit dem "augenscheinlich")
  • Wenn ich dann manuell per Web-Interface (oder automatisch abends um 21:00) die Aufgabe "Datenbank aktualisieren" trigger, und danach im DVBViewer die Aufnahmeliste erneut öffne, ist die Aufnahme wieder sichtbar

Das Ganze lösen kann ich, indem ich vor dem Löschen der Aufnahme, die Wiedergabe im DVBViewer beende:

 

  • Stop-Taste im DVBViewer
  • Die Wiedergabe wird beendet und ich lande im Live-TV
  • Dann öffne ich im DVBViewer die Aufnahmeliste, navigiere zur Aufnahme, und lösche diese per gelber Taste und Bestätigung im Dialog
  • Wenn ich danach im DVBViewer die Aufnahmeliste öffne, ist die grade gelöschte Aufnahme nicht mehr sichtbar
  • Auf der Platte des RS sehe ich dann, dass die beide Dateien gelöscht wurden
  • Wenn ich dann manuell per Web-Interface (oder automatisch abends um 21:00) die Aufgabe "Datenbank aktualisieren" trigger, und danach im DVBViewer die Aufnahmeliste erneut öffne, bleibt die Aufnahme auch tatsächlich gelöscht

Das ist aber nicht meine bevorzugte Lösung. Grund siehe meinen vorherigen Post. Und früher hat es ja auch mal funktioniert.

 

Daher meine Frage, ob jemand einen Tip hat, was ich tun kann, damit es wieder geht.

Edited by RalleN
Link to comment

Und der DVBViewer greift auf das RS-Aufnahmeverzeichnis über eine Netzwerkfreigabe zu, wie von Tjod vermutet?

 

Nachdem ich die Aufnahme vollständig gesehen habe, möchte ich diese löschen.

 

Das heißt, du lässt sie vollständig bis zum Ende durchlaufen? Was ist unter Optionen -> Videos -> Aktion bei Wiedergabe-Ende konfiguriert?

Link to comment

  • Ja über Netzwerkfreigabe(UNC-Pfad). Ich weiß es zwar noch, finde aber grade die Einstellung zum Überprüfen nicht!

Nein dann war mein vollständig nicht korrekt. Ich meinte, wenn ich alles gesehen habe, was ich sehen wollte. Ich bin dann in der Regel noch einige Minuten vor dem Ende der Aufnahme

Aktion bei Wiedergabe-Ende ist bei mir "Jump Minus 10", was bei mir dazu führt, dass das Bild einfach stehen bleibt (soll auch so)

Aktion bei Wiedergabe-Stop ist "Last Channel"

Link to comment

1. wiedergabe der Aufnahme über OSD-Menü > Aufnahmen starten
2. während die wiedergebe läuft OSD-Aufnahmen erneut öffnen (Schliesse das OSD bei Video Wiedergabe ist aktiviert) und die Aufnahme mit OSD-Gelb löschen.
3. Die wiedergabe wird gestoppt und die Aufnahme wird von der Festplatte (.ts, .log und .txt) und aus der RS/DVBViewer Aufnahme Datenbank gelöscht.
4. RS Webinterface > Aufgaben > Datenbank aktualisieren bringt die Aufnahme auch nicht zurück. Da die Dateien ja gelöscht wurden.

 

 

selbe Konstellation wie bei @Tjod da scheint die Aufnahme verschwunden zu sein aber bin dann noch mal auf Videosammlung neu aufbauen bzw auf alles was einem dort angeboten wurde und die Aufnahme war wieder da.

Edited by BALOU
Link to comment
Aktion bei Wiedergabe-Ende ist bei mir "Jump Minus 10", was bei mir dazu führt, dass das Bild einfach stehen bleibt (soll auch so)

 

Dann bleibt die Aufnahme geöffnet und kann vermutlich aus dem Grund nicht gelöscht werden. Wenn du dort "Stop" einstellen würdest, ginge es wahrscheinlich.

 

Nichtsdestotrotz passt da irgendwas nicht, denn laut Tjod müsste sich eine Aufnahme auch bei laufender Wiedergabe löschen lassen, und dann ist sie erst recht geöffnet.

 

Ich muss mir den Ablauf mal im Code anschauen...

Link to comment

Ich habe bei Aktion bei Wiedergabe-Stop ist "Stop" eingestellt. Da sollte mal denke ich ansetzen.

 

Kann jemand das Problem reproduzieren wenn bei Wiedergabe-Endeund und Wiedergabe-Stop jeweils Stop eingestellt ist?

 

Das ist ja auch eine neuere Änderung das nur noch wirklich einen Stopp auslöst wenn das direkt eingestellt ist.

Früher wurde zu jeder eingestellten Aktion zusätzlich das stopp ausgeführt.

 

Ich könnte mir vorstelle das der DVBViewer die Stopp Funktion aufruft um die Wiedergabe vor dem Löschen zu stoppen.

Da jetzt aber das stoppen von der Stopp Funktion komplett entfernt wurde. Scheitert auch das Stoppen vor dem löschen.

Link to comment

So wenn ich als Wiedergabe-Stop VolUp einstelle geht das Löschen bei laufender Wiedergabe bei mir auch nicht mehr.

 

Das heißt der DVBViewer verwendet wohl auch intern die Stopp Aktion die jetzt keine mehr ist wenn er sie wiedergebe stoppen möchte.

Link to comment
Da jetzt aber das stoppen von der Stopp Funktion komplett entfernt wurde. Scheitert auch das Stoppen vor dem löschen.

 

Hä? Wie bitte?? :D

 

Aber ich glaube, ich verstehe, was du meinst. In der Hinsicht gab es im DVBViewer Pro aufgrund gewisser Eigenwilligkeiten :whistle: schon immer eine ziemliche Begriffsverwirrung, die sich auch heute noch munter fortpflanzt.

 

Das Stoppen der Wiedergabe hat im DirectShow-Kontext eine klar definierte Funktion und Bedeutung: Wenn du es erleben willst, probiere Stop im DVBViewer GE. Der - weil unbeeinflusst von HTPC-Verrenkungen - hält sich nämlich daran, abgesehen davon, dass er bei Dateiwiedergabe zusätzlich die Abspielposition an den Anfang zurücksetzt. Die Wiedergabe wird angehalten und alle Puffer freigegeben, aber der Filtergraph bleibt bestehen (siehe Ansicht -> Filter). Die Wiedergabe kann also jederzeit durch Play neu gestartet werden. Eine geöffnete Datei wird dabei nicht geschlossen!

 

Im DVBViewer Pro wurde und wird Stopp dagegen weitgehend mit "Wiedergabe aus" gleichgesetzt, das den gesamten Filtergraph abräumt und auch eine geöffnete Datei schließt, so dass sie gelöscht werden kann.

 

Was du meinst ist also folgendes: Früher wurde beim Ende der Dateiwiedergabe (wie auch immer) grundsätzlich "Wiedergabe aus" ausgeführt und danach die unter Optionen -> Video konfigurierte Aktion. Was einen großen Teil der angebotenen Aktionen sinnlos machte, weil sie einen vorhandenen Filtergraphen voraussetzen. Zum Beispiel die von RalleN:

 

Aktion bei Wiedergabe-Ende ist bei mir "Jump Minus 10", was bei mir dazu führt, dass das Bild einfach stehen bleibt (soll auch so)

 

Wie willst du ein Bild stehenlassen, wenn es keinen Filtergraphen gibt? Dies und manches andere hat die Elimination des kategorischen "Wiedergabe aus" bei Wiedergabe-Ende ermöglicht.

 

Unglücklicherweise wird dem Löschen einer Aufnahmei Im DVBViewer Pro jedoch nicht das zwingend notwendiges "Wiedergabe aus" vorangestellt, wie ich gerade im Code gesehen habe, sondern das konfigurierbare Beenden der Wiedergabe (was ich nicht wusste). Und das beinhaltet jetzt nicht mehr unbedingt "Wiedergabe aus". Da liegt das Problem. Insofern hast du recht, und ich werde dafür sorgen, dass die Wiedergabe vor dem Löschen auf jeden Fall komplett abgeräumt wird.

Link to comment

Und such am besten im Code noch ob das konfigurierbare Beenden der Wiedergabe wo nur wenn das ausgewählt ist auch "Wiedergabe aus" ausgeführt wird noch irgendwo anders in Verwendung ist. Wo eine "Wiedergabe aus" erwartet wird ;)

 

Da jetzt aber das stoppen von der Stopp Funktion komplett entfernt wurde.

Hä? Wie bitte?? :D

 

1. Lerne unter Optionen > Eingabe ( > PVR ) eine Taste für den Befehl Stopp am.

2. Und stell für Aktion bei Wiedergabe-Stop "VolUp" ein.

Jetzt hast du einen Stopp Befehl der in keiner Form mehr die wiedergebe stoppt. Sondern nur die Lautstärke beeinflusst.

Auch der Stopp Knopf in der Kontrollleiste, stoppt jetzt nicht mehr die wiedergebe z.B. von einem Film sonder er ändert nur die Lautstärke.

Das heißt wir haben einen Befehl der Stopp heißt oder nach Stopp Knopf aussieht. Aber jetzt nur noch die Lautstärke ändert.
Wir haben also vom Stopp Befehl jegliche Stoppenden Funktionalität entfernt (da gibt es weder "Wiedergabe aus" noch ein pausieren der Wiedergabe was im "DirectShow Stop" heißt).

OP man Stopp jetzt auf "VolUp" oder "Jump Minus 10" umleitet ändert an der Sache nichts. ;)

Link to comment
Jetzt hast du einen Stopp Befehl der in keiner Form mehr die wiedergebe stoppt. Sondern nur die Lautstärke beeinflusst.

 

Nicht mein Problem. Das ist mir sowas von egal... ich habe schon mehr als einmal die HTPC-Fraktion aufgefordert, ein Konzept für die Wiedergabeende-Konfiguration bzw. eine Liste sinnvoller Befehle / Befehlskombinationen vorzulegen, die zur Auswahl angeboten werden sollen.

 

Aber da das ja mit Arbeit verbunden ist, wurde es danach immer auffällig still... bis wieder jemand kommt wie du jetzt und das irgendwie doof findet. Dann geht das Spiel von vorne los. Aber diesmal ohne mich :bye:

Link to comment

Ich habe mal alle Befehle die ich für quatsch halte entfernt und alle gekennzeichnet wo die wiedergab der aktuellen Datei zusätzlich gestoppt werden muss damit die Sinn machen.

 

Wenn es keine besseren vorschlägt gibt wäre ich dafür die zu übernehmen. :shiftyninja:

Ich habe daraus mal ein extra Topic gemacht

http://www.DVBViewer.tv/forum/topic/57101-aktion-bei-wiedergabe-endewiedergabe-stop-befehlsliste/

 

Die Zahl der Funktionen die ich Selber für Sinnvoll halte ist nochmal deutlich geringer. Aber man weiß ja nie was jemand haben will.

Edited by Tjod
Link to comment

Ich versuche Euch grade zu folgen :blink:

 

Ich verstehe es so, dass vor dem Löschen eine der Aktionen für das Beenden der Wiedergabe ausgeführt wird. Wie schon geschrieben sind die beiden bei mir so konf.:

  • Aktion bei Wiedergabe-Ende ist bei mir "Jump Minus 10", was bei mir dazu führt, dass das Bild einfach stehen bleibt (soll auch so)
  • Aktion bei Wiedergabe-Stop ist "Last Channel"

Welche von beiden müsste ich denn nun auf was ändern (also welche wird vor dem Löschen ausgeführt)? So wie ich es verstehe, müsste es ja dann die Aktion für "Wiedergabe-Ende" sein, oder? Bei Wiedergabe-Stop steht ja schon "Last Channel" und das kann ja nicht verhindern, dass eine Aufnahme gelöscht wird, oder?

 

Mir stellt sich aber auch grade die Frage, in welchem Kontext welche der beiden Aktionen verwendet wird.

Edited by RalleN
Link to comment

Dem Code entnehme ich, dass es nur mit "Aktion bei Wiedergabe-Stop = Stop" zuverlässig geht. Das entspricht auch Tjods Aussage.

 

Mit "Last Channel" müsste es theoretisch ebenfalls gehen, aber das wird aus irgendeinem dunklen Grund zeitverzögert ausgeführt und findet womöglich erst nach dem Löschversuch statt, also zu spät.

 

Im nächsten Release wird das Problem behoben sein.

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...