Beiträge von andreasp

    Tja, gestern abend LSmash nochmal ausprobiert (siehe hier http://forum.gleitz.info/showthread.php…ll=1#post451558 ),
    --> alles nicht wirklich erfreulich:

    - Es macht keinen Unterschied, ob der Index generiert wird, oder nicht. Die Wartezeiten sind die gleichen.
    - Es macht keinen Unterschied, ob man zuerst Audio oder Video lädt. Die Wartezeiten sind die gleichen.
    - Wenn der Index generiert wird und die Index-Datei noch nicht da ist, wird die Datei praktisch sofort in voller Länge hingeschrieben, die restlichen 15-45 Sekunden ändert sich weder Länge noch Datum der Datei.
    - Ein Reload (F2) im Virtualdub ändert nichts an der Indexdatei (weder Länge noch Datum), egal ob man am Script was geändert hat, oder nicht (macht Sinn, da am Originalvideo durch das Script ja nichts geändert wird).

    Hinzu kommt:
    - Springen nach vorne im VirtualDuib (ALT-Rechts) geht ein paar mal recht flüssig (=fast sofort), dann geht wieder das Gewarte los.
    - Springen zurück über den Punkt hinaus, den man gerade am laufen hatte, dauert ebenfalls 15-45 Sekunden - jeder Sprung! Man kann das an "Decoding Frame xxx" im Virtualdub schön sehen.

    Das ist alles völlig unpraktikabel und wäre für mich ein Grund, LSmash (zumindest für die Video-Bearbeitung) sofort wieder zu vergessen - ist das denn wirklich normal? Was rechnet der da bloß so lange??

    Grüß,
    Andreas

    Zum Neuladen: Da habe ich mich unklar ausgedrückt:

    Ich meinte F2 im VirtualDub. Das bewirkt, daß die Quelldatei neu geladen wird (also das ggf. geänderte Script). Bei DirectShowSource kann man schön im Editor "CTRL-S" drücken, im VirdualDub "F2" - das dauert das dann 1-3 Sekunden und der geänderte Stream ist auf dem Schirm - an der gleichen Frame-Nummer, wie vorher. Sehr praktisch für kleine Änderungen, die man sich im Vergleich zu vorher anschauen möchte (Subtitles früher/später, Überblendungen wann anders). Mit LSmash ist es halt wie oben beschrieben: Immer mehr als 30 Sekunden, bis was passiert, teilweise bis zu 45 Sekunden!

    LSMASH...Source ist nur für ISO-Media-Container (MP4, MOV, 3GPP) geeignet. Für die meisten Container sollte man eher LwLibav...Source benutzen.

    OK. Danke. Könnte die Software natürlich auch mit einer Fehlermeldung mal mitteilen statt eine Access Violation zu verursachen... Den Containerinhaltstyp kann man doch vorher auslesen / bestimmen...?

    Beim ersten Laden des Scriptes erzeugt LwLibav...Source einen Index, man kann aber einstellen, ob der als Datei auf Platte gecacht wird (*.lwi).

    Wo stelle ich das ein? Hiier http://avisynth.nl/index.php/LSMASHSource/LSMASHVideoSource finde ich leider nichts dazu.

    Im Gegensatz zu FFMS2 erkennt LSMASHSource leider nicht, wenn man dann die Quell-Datei mit einer gleichnamigen ersetzt, dann wird versucht, die alte Indexdatei darauf anzuwenden.

    Also beim Ausprobieren hatte ich den lanczosresize() auf eine andere Größe gesetzt - da sieht man die Änderung sofort, wenn sie eintritt (also nach 35 Sekunden dann) - aber der Index könnte in diesem Fall doch letztlich der gleiche bleiben, oder? Auch wenn man die AVS nur nochmal speichert (also gleiche Datei, nur anderes Datum und mit sicherheit "alt-index-fähig"), dauert es so lange.

    Ich kann mir nicht vorstellen, daß LSmashSource wirklich so lange braucht, um den Index zu erzeugen - es ist eine 500MB-Datei, also nichts wirklich großes. FFMS2 brauchte *einmalig* unter 10 Sekunden auf dem gleichen Rechner...?!

    Dass das Schließen des Skriptes lange dauert, bedeutet vielleicht, dass das Plugin seinen benutzten Speicher gewissenhaft aufräumt, wer weiß... Wenn bei dir aus Mangel an RAM die Auslagerungsdatei verwendet werden musste, wäre das wahrscheinlich.

    Das ist es sicherlich nicht: 4x3,7GHz, 16GB RAM, keine anderen Anwendungen am laufen (bis auf den Editor und den Datei-Explorer). Speicher aufräumen kann damit nicht so lange dauern. Er swappt auch nix auf der Platte herum (LED nur selten kurz an, also praktisch Leerlauf).

    Was könnte sonst noch sein?

    Es ist wie gesagt kein FFDShow auf dem Rechner, kein FFMPEG, keine LAV-Filters, nichts. Kann das einen Einfluss haben? Fehlt ihm noch was?

    Grüße,
    Andreas

    Ist ja alles nicht wahr, was das immer für einen Aufwand macht...:-/

    Gibt es eigentlich irgendwo eine *Anleitung*, wie man das eine oder andere Paket installiert...?

    Also gut:

    --> Lsmash runtergeladen, ausgepackt und nur die DLL aus dem AVISYNTH-Unterordner in das AVISYNTH-Pluginverzeichnis kopiert

    --> Script abgeändert:
    cam1a=LSmashAudioSource("C:\temp\00000.MTS")
    cam1v=LSmashVideoSource("C:\temp\00000.MTS")
    audiodub(cam1v,cam1a)
    lanczosresize(640,360)

    --> Mit Virtualdub aufgemacht:
    Fehlermeldung dass irgeneine MSVC..120.DLL fehlt (war ja eigentlich klar).
    Immerhin steht ja auch hier http://avisynth.nl/index.php/LSMASHSource dass man das vcredist-Paket braucht...

    (Un-)Lustigerweise hat er bei erneutem Öffnen der AVS-Datei diese Meldung nicht noch einmal gebracht, sondern dann nur noch, daß er den Befehl LSmashAudioSource nicht kennt...?!?!?! Wenn man also beim ersten mal nicht aufgepasst hat, tappt man im Dunkeln...
    ==> Anregung: Kann man da nicht einfach die Meldung ausgeben, daß dieses vcredist-Paket fehlt? Vielleicht gleich mit Link auf die MS-Seite? Wäre doch echt sinnvoller...

    --> vcredist_x86.exe über o.g. Link geladen (ging nur *ohne* Javascript!?!?) und installiert.

    --> Erneut das Script mit Virtualdub geöffnet:
    Access Violation...:-/

    --> Mal die beiden Befehle getauscht:
    das gleiche...:-/

    --> Das Script abgeändert in die beiden anderen verfügbaren Befehle:
    cam1a=LWLibavAudioSource("C:\temp\00000.MTS")
    cam1v=LWLibavVideoSource("C:\temp\00000.MTS")
    audiodub(cam1v,cam1a)
    lanczosresize(640,360)

    Und geht !!!!! ....ächts...

    Video läßt sich laden, ist synchron, man kann auch springen (z.B. ALT-RECHTS), wobei der allererste Sprung etwas dauert...aber danach, so wie man es von DirectShowSource oder DSS2 kennt.

    Kein längliches Indexfile-geschreibe wie bei FFMS2 und auch (bislang) kein VirtualDub-Absturz.


    Nun denn, er mal DANKE für die Hilfe!!!

    Aber das mit der Anleitung sollten wir noch noch mal klären... :)

    Grüße,
    Andreas

    Also, fangen wir mit den einfachen Dingen an: Script (habe ich mal reduziert aufs Minimum):

    cam1a=FFAudioSource("C:\temp\00000.MTS")
    cam1v=FFVideoSource("C:\temp\00000.MTS")
    audiodub(cam1v,cam1a)
    lanczosresize(640,360)

    Gibt im Virtualdub beim Anzeigen mit "ENTER" eine Verzögerung des Bildes gegenüber dem Ton um ca. eine viertel Sekunde. Ist überall gleich wird also nicht mehr im Laufe des Abspielens.

    An den subtitles oder dem dissolve-Befehl liegt es also schon mal nicht.

    Kann es der Splitter sein? Welcher wird überaupt verwendet? Es ist nur Win7 und ffms2 drauf. Nix sonst.
    Und die Einbindung:
    ffms2.* und ffmsindex.exe ins AVISYNTH-Plugins-Verzeichnis kopiert. Sonst nichts!

    Da ist doch bestimmt der Wurm versteckt...?

    MTS-Datei ist eine dieser Art (nicht genau die, sondern viel länger):

    Allgemein
    ID : 0 (0x0)
    Vollständiger Name : C:\temp\00000.MTS
    Format : BDAV
    Format/Info : Blu-ray Video
    Dateigröße : 22,3 MiB
    Dauer : 11s 700ms
    Modus der Gesamtbitrate : variabel
    Gesamte Bitrate : 15,9 Mbps
    maximale Gesamtbitrate : 18,0 Mbps

    Video
    ID : 4113 (0x1011)
    Menü-ID : 1 (0x1)
    Format : AVC
    Format/Info : Advanced Video Codec
    Format-Profil : High@L4
    Format-Einstellungen für CABAC : Ja
    Format-Einstellungen für ReFrames : 2 frames
    Format_Settings_GOP : M=3, N=12
    Codec-ID : 27
    Dauer : 11s 440ms
    Bitraten-Modus : variabel
    Bitrate : 15,0 Mbps
    maximale Bitrate : 16,0 Mbps
    Breite : 1 920 Pixel
    Höhe : 1 080 Pixel
    Bildseitenverhältnis : 16:9
    Bildwiederholungsrate : 25,000 FPS
    ColorSpace : YUV
    ChromaSubsampling : 4:2:0
    BitDepth/String : 8 bits
    Scantyp : Interlaced
    Scanreihenfolge : oberes Feld zuerst
    Bits/(Pixel*Frame) : 0.290
    Stream-Größe : 20,5 MiB (92%)

    Audio
    ID : 4352 (0x1100)
    Menü-ID : 1 (0x1)
    Format : AC-3
    Format/Info : Audio Coding 3
    Format_Settings_ModeExtension : CM (complete main)
    Format-Einstellungen für Endianess : Big
    Codec-ID : 129
    Dauer : 11s 520ms
    Bitraten-Modus : konstant
    Bitrate : 256 Kbps
    Kanäle : 2 Kanäle
    Kanal-Positionen : Front: L R
    Samplingrate : 48,0 KHz
    Video Verzögerung : -80ms
    Stream-Größe : 360 KiB (2%)

    Mal zu FFMS2:

    Installiert auf einem frischen Windows 7 Rechner. Kein(!) FFDSHOW oder FFMPEG drauf.
    Nur: AVISYNTH, Virtualdub und FFMS2 (Plugin-Verzeichnis).
    Im Script eine MTS-Datei mit 500MB schön mit
    FFVideosource und FFAudiosource geladen und mit audiodub zusammengehängt.
    Dann ein wenig trim(), ein wenig fadein() und ein bisschen subtitle() mit dissolve()
    --- und schon sind Video und Audio asynchron (Video halbe Sekunde zu spät)
    --- beim Anspringen von Positionen in Vidtualdub (Maus auf Balken oder auch "Go") braucht er ewig (10 Sekunden) oder stürzt ab ("reagiert nicht")...??

    Ist FFMS derart instabil oder ist irgendwas anderes faul??

    Grüße,
    Andreas

    Entweder Matroska (MKV) oder Transport-Stream (M2TS). Das sind zwei völlig unterschiedliche Kontainer.

    Sorry, natürlich MTS war gemeint, wie im Thread-Betreff angegeben.

    Für beide wird heutzutage empfohlen, entweder "L-SMASH Works" (LwLibavVideoSource) oder eine ganz aktuelle Version von FFMS2 (FFVideoSource) – ohne Abhängigkeit vom Haali Media Splitter – in AviSynth zu verwenden; alternativ käme noch DSS2Mod in Frage,

    Brauche ich den FFDShow gar nicht installieren, wenn diese verwende?

    Den DSS2Mod habe ich unter XP schon ausprobiert. Frame-genaues Schneiden geht gut, er ist auch recht schnell, aber Nachteil: DSS2Mod kann leider keinen Ton verarbeiten. Den muss man erst aus der Originaldatei heraus-demuxen und hinterher mit Audiodub hinzufügen, wie weiter oben beschrieben - und schon geht das Schneiden wieder langsamer, weil noch eine Datei parallel eingelesen werden muß, obwohl die Audiodaten ja eigentlich in der Originaldatei enthalten sind. Besonders, wenn man den Ton gar nicht verändern will, ist das suboptimal, weil zusätzlicher Schritt.

    Der L-Smash-Link (auch weiter oben zu finden) geht irgendwie gerade nicht...

    oder zur Not noch DirectShowSource, wenn als DirectShow-Splitter/Decoder die "LAV Filters" verwendet werden.

    Wie "frame-genau" wäre diese Lösung? Dann braucht man den FFDShow auf jeden Fall, oder?

    Viele Grüße,
    Andreas

    Ja, sorry. Es soll halt erst mal irgendwie laufen...:-)

    Was ist am Haali schlecht? "Nur" Frame-Ungenauigkeit oder eher was in Richtung Absturzfreudigkeit?

    Was Windows 2000 angeht:
    - LAV: Bereits die Uraltversion (Installer) LAVFilter-0.23.exe meckert "This Software works only on Windows XP SP2 and newer."

    - FFMS2: FFMS2-2.20-icl.7z: Nirgendwo steht, wie man den installieren soll. ffmsindex.exe ergibt nur die Fehlermeldung "[...] ist keine zulässige Windows32-Anwendung"

    Grüße,
    Andreas

    Hi !

    Verzweiflung - es läuft einfach nicht:

    WINXP-Rechner mit
    - Avisynth 2.60
    - VirtualDub 1.10.4
    - ffdshow (aktuelle Version)

    Gelesen werden soll eine kurze MTS-Datei 00000.MTS aus einer CANON HF-100 Videokamera.

    AVS-Datei "test.avs":

    directshowsource("00000.mts")
    scaleby2

    Mit Virtual-Dub "Datei/Öffnen" "test.avs" kommt die Fehlermeldung:


    avisynth open failure:
    DirectShowSource: Could not open as video or audio

    Video returned: "DirectShowSource: couldn´t open file 00000.mts:
    "Die Datei kann nicht wiedergegeben werden, das Format wird nicht unterstützt."

    Audio returned: "DirectShowSource: couldn´t open file 00000.mts:
    "Die Datei kann nicht wiedergegeben werden, das Format wird nicht unterstützt."

    (c:\test.avs, line 1)


    Der Windows Media Player spielt die MTS-Datei auch nicht ab (?). Der Media Player Classic kann es aber und der VLC auch.

    Was paßt nicht?!?!

    Grüße,
    andreas