Programmabsturz nach wiederholendem Aufruf des Schnittfensters

Begonnen von Kay71, Januar 09, 2014, 13:07:06

« vorheriges - nächstes »

Kay71

Hi,
also ich bearbeite gerade meine Filmesammlung, d.h. ich schneide Anfang und Ende passend zu. Dabei tritt es immer wieder auf, das nach dem ca. 10ten Film und öffnen des Schnittfensters das Programm abstürzt.
----
Name der fehlerhaften Anwendung: TSDoctor.exe, Version: 1.2.107.4485, Zeitstempel: 0x52c280eb
Name des fehlerhaften Moduls: nvd3dum.dll, Version: 9.18.13.3221, Zeitstempel: 0x52b324bd
Ausnahmecode: 0xc0000005
Fehleroffset: 0x007187a8
ID des fehlerhaften Prozesses: 0x24fc
Startzeit der fehlerhaften Anwendung: 0x01cf0d2de026ec56
Pfad der fehlerhaften Anwendung: C:\Program Files (x86)\Cypheros\TSDoctor\TSDoctor.exe
Pfad des fehlerhaften Moduls: C:\Windows\system32\nvd3dum.dll
Berichtskennung: c9309692-7922-11e3-afe6-10bf4875e9e7
-----
Ausnahmecode und Fehleroffset sind immer gleich. Da ein Zusammenhang mit dem nVidia-Treiber besteht habe ich diesen aktualisiert - ohne Erfolg.
Die aktuelle Beta-Version des TS-Doctors brachte auch keine Besserung.

Die vorher hinzugefügten Filme zu Batch-Verarbeitung und Einstellungen bleiben erhalten. Also kann nach einem Neustart des TS-Doctor's die Arbeit weitergehen.
Trotzdem ist es nervig und es wäre gut wenn dies nicht passieren würde.

Kay
 

Kay71

Hi,

scheint wohl keinen zu Interessieren? Mich nervt es und leider ist es auch in der aktuellen Version nicht besser.

Übrigens war das ein Irrtum meinerseits das der Absturz nur beim Aufruf des Schnittfensters (Vorschaubilder werden erzeugt ... Crash) erfolgt, es passiert auch wenn innerhalb des Schnittfensters gearbeitet wird. Es scheint so als ob ein Puffer überläuft, denn nach Programmneustart geht's ja eine Weile.

MfG Kay
 

ErichV

Könntest du, sobald der Absturz wieder auftritt, das zugehörige DirectX-Log bei deinem nächsten Post anhängen?
Hinweis: Diese Log-Datei findest du Einstellungen --> Optionen --> Vorschau (Registerkarte) --> Zeige DirectX Log (Button)

In der Zwischenzeit würde ich wie folgt vorgehen:

  • Aktuelle Version vom Haali Media Splitter installieren und in den Vorschaueinstellungen als "Default MPEG Splitter" festlegen
  • Aktuelle LAV Filters installieren und in den Vorschaueinstellungen als "Default Audio bzw. Default Video Filter" festlegen
  • Den "Default Video Render" auf "Enhanced Video Render" stellen (sollte das nicht funktionieren, den normalen "Video Render" auswählen)
Bleibt der gewünschte Erfolg weiterhin aus, nehmen wir die nächsten, ins System tiefergreifenden Schritte vor.  ;)
1 x Humax ESD-160S, 1x TechniSat TechniBox S4, 2x TechniSat Skystar USB 2 HD CI, Nvidia Shield TV Media Streaming Player, TS Doctor 4.1.2, DVBViewer Pro 7.3.0.0 mit DVBViewer Media Server 3.3.0.0

Cypheros

Hi, der Fehler wird nicht durch einen Pufferüberlauf im TS-Doctor hervorgerufen, sondern von einer DLL, die der TS-Doctor verwendet. Der Fehler wird durch den NVidia-Treiber, bzw. die NVidia-Hardware ausgelöst:

ZitatName des fehlerhaften Moduls: nvd3dum.dll, Version: 9.18.13.3221, Zeitstempel: 0x52b324bd

Der TS-Doctor spricht den Treiber nicht direkt an, sondern er wird vermutlich im Zusammenhang mit der Videodarstellung (Videobescheunigung) im Schnittfenster vom Betriebssystem verwendet.
Welche Videofilter werden verwendet? Kann man am DirectX Log sehen, dass man unter Einstellungen/Optionen/Vorschau aufrufen kann. Am Besten mal posten.

Versuch mal unter Einstellungen/Optionen/Vorschau den Default Video Renderer auf "Video Renderer" zu setzen.
[attachimg=1]


Kay71

@Cypherios, @ErichV,

nach Umstellung des Default Video Renderer auf "Video Renderer" scheint es reibungslos zu funktionieren. Der "Enhanced Video Renderer" endete auch mit Abstürzen. Vorher stand übrigens alles auf "AUTOMATIC".
Der gefühlte Unterschied liegt jetzt in der etwas langsameren Arbeitsweise beim erstellen der Bildvorschau - das ist aber nicht weiter problematisch.

Danke euch beiden.

----
Eine Frage habe ich aber noch zu der Schnittgenauigkeit. Es kommt öfters vor da nicht exakt an der eingestellten Position geschnitten wird. Es macht auch keinen Unterschied ob es ein I-Frame ist oder eben nicht. Gerade wenn ich nur Anfang und Ende schneide kontrolliere ich den Schnitt nicht extra. Nun habe ich aber festgestellt das meist am Ende etwas mehr Film als gewollt übrig ist. Beim wegschneiden von Werbung ist mir vorher schon aufgefallen das erst ein oder zwei I-Frames später als eingestellt der Schnitt erfolgt. Kann man das noch optimieren? Gerade bei mehreren Schnitten ist es nervig das immer alle in der Vorschau abgespielt werden. Geht das nicht anders? Ich schneide übrigens ts-Dateien von einer et9200 - falls das eine Rolle spielt.

Kay

   


Cypheros

#5
Was it ET9000?

Teilweise hilft es die Aufnahme zuerst ohne zu schneiden durch den TS-Doctor zu schicken. Also Datei öffnen, dann "Neue Datei erzeugen" und dann die neue Datei öffnen und schneiden.

Djfe


Kay71

Zitat von: Cypheros am Januar 17, 2014, 23:21:26
Was it ET9000?

Es ist ein Xtrend ET9200 Receiver auf Linux Basis. Also nix besonderes oder exotisches. Wollte es nur erwähnen damit nicht das Dateiformat o.ä. in Betracht gezogen wird.

Eine neue Datei zu erzeugen und dann zu schneiden halte ich für zu zeitaufwendig. Es ist ja so das der Schnittpunkt klar definiert ist. Vielleicht sollte an den Schnittpunkten etwas langsamer gearbeitet werden damit die Stelle genauer getroffen wird?

Eine weiter Sache war mir auch noch aufgefallen. Manchmal werden nach dem Schnitt Fehler im Audio oder Video Stream angezeigt. Analysiere ich nachfolgend die Quelldatei bzw. die neu erstellte so stimmt die Anzahl der Fehler nicht überein. Werden z. Beispiel 8 Fehler nach der Batch-Verarbeitung angezeigt, so können es tatsächlich auch 400 sein. Wird die Datei beim Schnittvorgang nur "oberflächlich" untersucht?

Cypheros

Viele oder größere Fehler in der Aufnahme können zu Fehlern beim Schnitt führen. In solchen Fällen kann das Schnittergebnis verbessert werden, wenn man die Aufnahme zuerst reparieren läßt. Also Datei öffnen und dann auf "Neue Datei erzeugen" klicken. Die reparierte Datei solle dann keine Ausrutscher mehr bei den Schnittpunkten haben.

Leider machen sich manche Fehler auch durch falsche Timerangaben bemerkbar, die die Schnittgenauigkeit beeinflussen können.

Kay71

Die neu erstellte Datei enthält ja die gleichen Fehler wie das Original. Was soll denn da repariert worden sein? Meistens sind die Fehler auch so gering das sie nicht sicht- oder hörbar werden.
Die Schnittgenauigkeit war nicht auf "fehlerhafte" Dateien bezogen. Ich wollte nur erwähnen das die angezeigte Fehleranzahl nach dem Schnittvorgang abweichend zur Fehleranzahl nach der Überprüfung ist. 

Es ist auch schon in der Schnittvorschau zu sehen. Die tatsächlich durchgeführten Schnitte entsprechen nicht immer 100% der eingestellten Position - auch nicht bei absolut fehlerfreien Dateien. 

Djfe

das liegt entweder daran, dass der TS-Doctor bei dir so eingestellt ist, dass er immer nach I-Frames sucht um dort zu schneiden oder einfach daran, dass es das Konzept des TSDs ist nur nach Paketen zu schneiden und die verwendeten Decoder (LAV Filter) nur für die Wiedergabe aber nicht für den Schnitt geschrieben wurden.
das sorgt dafür, dass die Decoder zwar alles brav und richtig wiedergeben aber dem TSD nur Frameangaben liefern können, an denen geschnitten werden soll
es muss aber nicht so sein, dass diese stimmen, da bestimmte Fehler im Stream zu falschen Zeitangaben führen können, die die LAV Filter gar nicht erkennen, da sie wie gesagt nicht darauf ausgelegt wurden und auch nichts mit TS-Paketen anfangen können
sie bekommen einfach nur den Video/Audio Stream vom Haali Media Splitter überreicht (man könnte auch den LAV eigenen nehmen aber der ist nicht so gut) und spielen ihn dann ab, damit man weiß wo Werbung zu sehen ist

das größere Problem: wenn du dich im Framebereich an den Schnittpunkt herantastest, kann es sein, dass der Videodecoder nur unzureichend das richtige Bild darstellt, da er für eine kontinuierliche Wiedergabe geschrieben wurde und wie bereits erwähnt nicht für den Schnitt.

das veranlasst dich dazu den Schnitt an minimal falschen Stellen anzusetzen

ein weiteres Problem: auch Audiostreams sind in Frames aufgeteilt (mit I-Frames und ähnlichem), auf diese achtet der TSD bisher aber nicht beim Schneiden, weil man sie nicht sieht
dies kann wegen z.T. versetztem Audio im Quellmaterial dazu führen, dass man an Schnittpunkten plötzliche Artefakte im Audiostream hört (minimal) und/oder die letzten Worte vor der Werbung fehlen, da der TSD nach den Paketen geschnitten hat und er nach dem letzten Videopaket schluss gemacht hat, danach aber noch einige Audiopakete kamen, die zu de Bild gehörten, das führt dann zu kurzen stillen Momenten

Um speziell die Schnittpunkte sauberer darstellen und erkennen zu können (besonders in Bezug auf den Ton) müsste Cypheros folglich einen eigenen Decoder speziell für den Schnitt schreiben, der es ihm ermöglicht genaueren Aussagen darüber fallen zu können, welche Audiopakete beispielsweise noch wichtig sind (die LAV Decoder können das nicht, da sie nicht darauf ausgelegt wurden)
die Programmierung eines eigenen Decoders erfordert Zeit und Erfahrung, momentan hat Cypheros aber noch genug andere Wünsche/Probleme die er einfügen/beheben muss (Prioritäten)
ein eigener Decoder wäre eine von den aufwändigeren Sachen und gehört zu den Dingen, die dem Programm den letzten Schliff verpassen würden
(kommt erstmal nicht in absehbarer Zeit, leider; liegt vor allem daran, dass der TSD eine Software einer "Ein-Mann-Firma" ist und er so nur begrenzte Möglichkeiten hat sich in bestimmte Themen wie diese weiter einzuarbeiten)

hoffe du verstehst meine Komplexen/eventuell verwirrenden Ausführungen ;D

ansonsten frag einfach nochmal nach, falls du eine weitere Erklärung benötigst ;)


www.cypheros.de