mkv weiterentwicklung und abspielprobleme...

  • Matroska wird offensichtlich noch weiter entwickelt. Wie mir scheint aber nicht vollständig Abwärtskompatibel. Das ist wirklich ein Ärgernis.

    Bei https://trac.bunkus.org/wiki/FAQ%3AImp…lityWithPlayers scheint mir das Fazit zu sein: Wenn es zu Abspielproblemen kommt, haben die Hardware Hersteller Mist gemacht und sollen gefälligst ein Update raus bringen. Theoretisch haben sie ja recht, aber praktisch funktioniert das nicht und hinterlässt Frust. Zumindest bei mir.

    Die irgendwann eingeführte "Header Compression" wurde ja zum Glück wieder ausgeschaltet.

    Momentan habe ich aber Probleme mit dem Spulen und den Kapitelmarken, seit ich mkvmerge von v5.x auf v6.x gewechselt habe. Auch die Option --clusters-in-meta-seek bringt keine Besserung.

    Nun könnte ich die FAQ weiter durch gehen und eine Optionen nach der anderen durch probieren. Aber so richtig Lust habe ich dazu nicht.

    Konkret geht es um den Sony BDP-S490 Blu-Ray-Player... Kennt jemand bei dem die richtige Kombination der Optionen?
    Ansonsten werde ich einfach wieder "downgraden" auf v5.x

  • Welche Version funktioniert denn als letzte? Dann kann man es vielleicht anhand des Changelogs eingrenzen.

    Neu ab 5.9.0 ist (was man auch abschalten und testen kann):

    * mkvmerge, mmg: enhancement: Added options for turning off
    writing "CueDuration" elements ("--engage no_cue_duration") and
    "CueRelativePosition" elements ("--engage
    no_cue_relative_positions").

    Probier das mal aus, auch wenn es nicht sehr wahrscheinlich klingt.

    mfg

  • v5.3.0 hat auf jeden Fall funktioniert.

    In MediaInfo sieht man auch u.a. das:

    alte Datei:

    Code
    Format : Matroska Format-Version : Version 2 Kodierendes Programm : mkvmerge v5.3.0 ('I could have danced') built on Feb 9 2012 10:38:07 verwendete Encoder-Bibliothek : libebml v1.2.3 + libmatroska v1.3.0

    neuere Datei, bei der das Spulen nicht mehr geht:

    Code
    Format : Matroska 
    Format-Version : Version 4 / Version 2 
    
    
    Kodierendes Programm : mkvmerge v6.0.0 ('Coming Up For Air') built on Jan 20 2013 09:52:00 
    verwendete Encoder-Bibliothek : libebml v1.3.0 + libmatroska v1.4.0
  • * mkvmerge, mmg: enhancement: Added options for turning off
    writing "CueDuration" elements ("--engage no_cue_duration") and
    "CueRelativePosition" elements ("--engage
    no_cue_relative_positions").

    Probier das mal aus, auch wenn es nicht sehr wahrscheinlich klingt.

    Doch, ich vermute, Du liegst mit Deinem Tip richtig. LG und Sony (sowie einige Software-Player wie VLC) scheinen damit teilweise Probleme zu haben.

  • OK, Danke für die Hinweise, ich werde das mal versuchen.

    Eine richtige Übersicht, wann welche Features rein gekommen sind, gibt es aber nicht, oder? Also was anderes als Changelogs durchwühlen...

  • Nun könnte ich die FAQ weiter durch gehen und eine Optionen nach der anderen durch probieren. Aber so richtig Lust habe ich dazu nicht.


    Und? Hast du Lust dazu, einfach bei der letzten "funktionierenden" Version zu bleiben, statt sinnlos jedes Update mitzumachen? Mal abgesehen davon, kann man die neuen Features auch per Kommandozeilen-Paste in den neuen Versionen abstellen.


    MultiMakeMKV: MakeMKV Batchverarbeitung (Win)
    MultiShrink
    : DVD Shrink Batchverarbeitung
    Offizieller Übersetzer von DVD Shrink deutsch

  • Nicht updaten verschiebt ja nur das eigentliche Problem...

    "--engage no_cue_duration" und "--engage no_cue_relative_positions" bringt ein wenig Besserung:
    Anspringen von Kapitelmarken geht damit wieder verzögerungsfrei.
    Das Spulen klappt auch besser, aber nicht immer einwandfrei. Oft steigt der Player früher oder später aus :(

  • eventuell mag der Player auch keine simple blocks, audio lacing oder clusters im meta seek Teil,...
    Bei https://trac.bunkus.org/wiki/FAQ%3AImp…lityWithPlayers stehen eigentlich immer eventuelle Optionen die Probleme mit Hardwareplayern machen könnten,...
    --engage no_cue_duration
    --engage no_cue_relative_position
    --engage no_simpleblocks
    --disable-lacing
    --clusters-in-meta-seek
    wären neben er header compression die typischen Optionen auf die man achten muss, wenn man für HardwarePlayer muxed,...

  • --engage no_cue_duration
    --engage no_cue_relative_position
    --engage no_simpleblocks
    --disable-lacing
    --clusters-in-meta-seek


    Ich probiere die mal alle... Mal sehen...

    IMHO wäre es besser, wenn die matroska Jungs Versionen verwenden und neue Features an diese Koppeln und wenn Hardwarehersteller angeben, welche Version unterstützt wird. Dann kann man einfacher wählen, welchen Versionsstandart man einhalten muß...

    Aber so führen die einfach irgendwelche neuen Sachen ein und mal sehen ob es denn klappt... Das ist aus Anwendersicht irgendwie murks...

  • Zitat

    IMHO wäre es besser, wenn die matroska Jungs Versionen verwenden und neue Features an diese Koppeln


    Du wirst da die Matroska Spezifikation und die Features von mkvtoolnix durcheinander. :D

    Zur Matroska Spezifikation:
    Unter http://matroska.org/technical/specs/index.html werden alle existierenden Elemente von Matroska Dateien aufgeführt und wie man bei http://matroska.org/technical/specs/notes.html sehen kann, wird durch die Spalten auch klar welches Feature ab welcher Version in Matroska erlaubt ist bzw. existiert.
    Mehr kann man, meiner Ansicht nach, doch eigentlich nicht verlangen.
    Das Problem ist, dass die meisten (alle?) Hersteller sich nicht darum scheren und vermutlich keine der Spezifikationen richtig (= funktionierend und komplett) unterstützen, weshalb sie so etwas wie 'Matroska v3 - kompatible' nicht in ihre Spezifikationen der Geräte schreiben können.

    Zu mkvtoolnix:
    Ich stimme Dir zu, dass wenn die Hersteller es schaffen würden zu sagen, dass ihr Gerät voll kompatible zu Matroska Version X ist es sicher eine nette Option wäre, wenn man in z.B. mkvmerge einstellen könnte, dass ein file erstellt werden soll, welches Version X entspricht.

    Bin mir nicht sicher, vermute aber, dass

    Code
    |+ Doc type: matroska|+ Doc type version: 2|+ Doc type read version: 2


    bei einem:

    Code
    mkvinfo "pfad zu einem mkv file"


    angibt welche Spezifikation das File verwendet.
    Man könnte also zu einem existierenden File durchaus sehen welcher Spezifikation es entspricht.
    Das einzige was Mosu (der MkvToolnix-Entwickler) machen könnte wäre eine Option in mkvmerge einbauen, welche sicherstellt, dass der Output zu Matroska Version X kompatibel ist.
    (ich mach mal einen entsprechenden Eintrag im Matroska-Tracker gemacht: https://trac.bunkus.org/ticket/858#ticket)

    => meiner Ansicht nach ist das Problem aber wie gesagt nicht bei den Matroska/mkvtoolnix Entwickler(n) sondern viel mehr bei den Hardware-/Playerherstellern, welche einfach keinen guten Job machen.

    Zitat

    Aber so führen die einfach irgendwelche neuen Sachen ein und mal sehen ob es denn klappt... Das ist aus Anwendersicht irgendwie murks..


    Ist der einzige Weg wie man Leute dazu bekommt sich mit Matroska/mkvtoolnix genauer zu beschäftigen. :D
    Und ich bin mir sicher, wenn die Hardwarehersteller wirklich ehrlich sagen könnten, dass ihr Gerät die komplette Spezifikation X von Matroska unterstützt Mosu, das gewünschte Feature des 'Kompatibilitätserzwingens' implementieren würde.

    Cu Selur

  • Du wirst da die Matroska Spezifikation und die Features von mkvtoolnix durcheinander. :D


    Das ist mir mittlerweile klar. Leider wird es auch nicht richtig gut kommuniziert.

    Das Problem ist, dass die meisten (alle?) Hersteller sich nicht darum scheren und vermutlich keine der Spezifikationen richtig (= funktionierend und komplett) unterstützen, weshalb sie so etwas wie 'Matroska v3 - kompatible' nicht in ihre Spezifikationen der Geräte schreiben können.


    Genau, das ist das eigentlich Problem. Da müßte man ansetzten, damit der Endanwender es einfacher hat. Um nicht irgendwelche Optionen durchprobieren zu müßen.

    ich mach mal einen entsprechenden Eintrag im Matroska-Tracker gemacht: https://trac.bunkus.org/ticket/858#ticket


    Das ist schon mal eine gute Idee.

    Doch woher kamen eigentlich meine Probleme? Man hat in der Weiterentwicklung von mkvtoolnix neue Features eingebaut und direkt mal aktiviert.
    Bei der Kompression hat man es ja anscheinend gemerkt: Erst eingebaut und aktivuert. Später einen Schaltet zu deaktivieren in den Einstellungen eingefügt und diesen später wieder entfernt und Kompression im Urzustand ausgeschaltet.

    Man sollte also IMHO neue Features immer per default ausgeschaltet einbauen. So kann jeder gezielter neue Sachen aktivieren...

  • Das Problem ist, daß viele der aktuellen Features eigentlich auch mit älteren Playern kompatibel sein müßten. Als die Probleme mit der "Header Removal Compression" losgingen, war das Feature auch beileibe nicht neu, sondern mkvmerge hat es nur standardmäßig für einige Formate aktiviert. Hier wäre weniger wohl mehr gewesen, weil der Nutzen des Features derart minimal ist, daß man es der Einfachheit halber lieber hätte weglassen werden sollen.
    cue_duration und cue_relative_position hingegen sind tatsächlich neu und wurden von den Opus-Entwicklern gefordert, bringen aber auch Vorteile für z.B. Untertitel. Allerdings ist Matroska so ausgelegt, daß Player unbekannte Elemente einfach ignorieren sollten, und wie man sieht, haben auch viele Player keinerlei Probleme mit den neuen Dateien: z.B. LAV oder die Samsung-Geräte, obwohl diese neuen Elemente für sie unbekannt sind. Über die Matroska-Version wird man das Problem nicht lösen können, weil die Features bzw. die Kompatibilität nicht unbedingt an Versionen gebunden sind. Ich gehe daher davon aus, daß Mosu das Ticket als "Invalid" schließen wird.

  • Doch woher kamen eigentlich meine Probleme?


    Das hab ich dich weiter oben schon gefragt, aber ich kann es ja gerne noch mal machen: Welchen Grund hattest du, auf die neue MKVToolnix-Version zu wechseln, obwohl dir die 5.8 lauffähige MKVs erstellt hat?

    cue_duration und cue_relative_position hingegen sind tatsächlich neu und wurden von den Opus-Entwicklern gefordert, bringen aber auch Vorteile für z.B. Untertitel.


    Welche zum Beispiel?

    Ich gehe daher davon aus, daß Mosu das Ticket als "Invalid" schließen wird.


    Ich auch.


    MultiMakeMKV: MakeMKV Batchverarbeitung (Win)
    MultiShrink
    : DVD Shrink Batchverarbeitung
    Offizieller Übersetzer von DVD Shrink deutsch

  • Welche zum Beispiel?

    Es bringt vor allem Vorteile beim Seeken. Wenn ich zum Beispiel zu einem bestimmten Kapitel springe und der Untertitel fängt einen Frame vor dem Kapitel an, so wird er mir nicht angezeigt, weil der Splitter nicht weiß, daß er eigentlich ein Untertitel-Paket von etwas weiter vorne holen müßte. Das wird dadurch behoben. Ähnliches gilt für Audio-Formate wie z.B Opus. Daß wir sagen, Tonspuren könnten überall geschnitten werden, weil sie praktisch nur "I-Frames" enthalten, ist eigentlich eine nicht ganz korrekte Vereinfachung. In Wirklichkeit brauchen viele Audio-Codecs für die korrekte Dekodierung auch Daten aus den vorhergehenden Paketen, weshalb wir häufig mit dem Encoder-Delay leben müssen. Auch hier wird durch das neue Feature dafür gesorgt, daß der Splitter dem Audio-Decoder alle benötigten Daten gibt, also bereits Daten kurz vor dem Seek liest. Im Moment ist der Vorteil allerdings theoretisch, weil ich kein Programm kenne, welches diese neuen Elemente bereits nutzen kann.

    3 Mal editiert, zuletzt von sneaker2 (16. März 2013 um 15:22)

  • Ich bin auf den Beitrag gestoßen, weil ich mal schauen wollte, ob sich an der Problematik etwas getan hat, aber anscheinend werde ich die nächste Zeit noch bei der 5.8.0 hängen bleiben.

    Wenn ich das ganze richtig verstanden habe war die Antwort auf Selurs ticket dass dem Entwickler bisher keine Player bekannt sind, welche eine frühere Version benötigen? Wenn ja ist das völliger Mumpitz. Alleine Google spuckt eine Menge Infos aus. Ich z.B. habe mit meinem BD390 von LG die PRobleme.

    Klar kann der Entwickler meinen dass man so die Hersteller dazu bringt, neue Versionen zu unterstützen...aber ist es nicht ein wenig naiv zu denken, dass Hersteller noch Geräte, welche bereits 3-4 Jahre auf dem Buckel haben, mit Updates versorgen? Für mich birgt solch ein Verhalten eine gewisse "Arroganz". Leider gibt es zu dem Tool keine wirklich Alternative, sonst würden vielleicht gerade diese Nutzer abwandern.

    Und als Entwickler kann ich sagen, dass eine Wahl für die Version nun nicht wirklich ein großer Aufwand ist. Auch wenn ich die Arbeit der Entwickler hier wirklich zu schätzen weiß, hat das ganze für mich eher etwas mit dem Durchdrücken eigener Ansichten zu tun. Das ist natürlich das Recht eines jeden Entwicklers, ob man sich damit einen Gefallen tut steht auf einem anderen Blatt...

  • "Getan" hat sich schon ab und zu was, aber meistens drum herum. So unterstützen die Programmierer von Konverter-GUIs oft kompatible Parameter-Kombinationen als Vorauswahl für ihren Multiplexprozess. Zum Beispiel kann man mit Zathor, dem aktuellen Programmierer der MeGUI, darüber gerne reden.

  • Klar kann der Entwickler meinen dass man so die Hersteller dazu bringt, neue Versionen zu unterstützen...aber ist es nicht ein wenig naiv zu denken, dass Hersteller noch Geräte, welche bereits 3-4 Jahre auf dem Buckel haben, mit Updates versorgen?

    Genausowenig wie die Hardwarehersteller ewig ausgelaufene Gerätefamilien supporten, ist von den Softwareentwicklern zu erwarten, das die bis zum Sanktnimmerleinstag Schalter einbauen, um Kompatibilität zu Uraltversionen herzustellen und so ungewarteten "schlechten" Code mitschleppen. Wohin das führt siehst du am besten bei Windows.

  • @fryk
    Der Vergleich hinkt wohl ein wenig. Es geht hier nicht um Geräte, welche 10 Jahre alt sind, sondern um welche, die gerade mal 3 Jahre oder so auf dem Buckel haben. Ich kann es mir jedenfalls in diesen Zeitsbständen neue Geräte nicht leisten. Und warum ist älterer Code direkt ungewartet und schlecht? Das eine hat mit dem anderen erst einnmal gar nichts zu tun.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!