Anleitung für Avidemux

  • Hallo,


    ich wünsche ein Forhes Fest gehabt zu haben!



    Avidemux 2.6.1 macht hier unter XP-Prof SP3 was es will, aber nicht das, was ich erwarte :-)


    1. Wenn ich ein QT-Script speichere und es später wieder lade, dann wird der Audiocodec (LAV_aac) aus dem Script nicht übernommen.
    Wenn ich ein Spidermonkey-Script speichere, wird dagegen auch der Audiocodec geladen.


    2. Wenn ich statt avidemux.exe avidemux_cli lade, dann werden nur haufenweise Statusmeldungen runtergescrollt und dann wird das Fenster ohne Fehlermeldung geschlossen.
    Mit der Version 4576 hat avidemux2_cli.exe noch funktioniert.


    Als Workarround kann ich das Spidermonkey-Script per Batchdatei mit avidemux.exe aufrufen. Das Script wird dann auch von er GUI abgearbeitet, also das Video wird dann auch transcodet. Allerdings bleibt anschließend die GUI offen und man könnte den Transcoding-Prozess jederzeit, auch versehentlich abbrechen.



    Ich habe nach einer Anleitung für die Benutzung der CLI-Version gesucht, aber es scheint keine aktuelle zu geben, denn es wird immer von der avidemux2_cli.exe geschrieben, nicht aber über die in der Version 2.6.1 vorhandenen avidemux_cli.exe.


    Als ich mir vor einigen Jahren eine Batchdatei für ein einfaches Transcoden von kleinen Videoschnippseln erstellt habe, war es schon ziemlich mühselig. Avidemux kann man praktisch nur mit der Trial+Error-Methode bedienen. Die CLI ist noch schlechter beschrieben und es gibt sehr viele unerwartete Verhaltensweisen, um nicht zu sagen Bugs.
    Kennt jemand eine brauchbare Anleitung für avidemux_cli?



    Ach ja, ich möchte lediglich eine möglichst kompakte Batchdatei haben, mit dem ich Videoschnippsel meiner Digicam vom Format h264/PCM in MOV nach h264/aac in MP4 transcoden kann.

  • Ich habe mich gestern mal durchgebissen und mit der spärlichen Dokumentation, die ich gefunden habe, mit meinen kümmerlichen Englisch-Fähigkeiten und vor allem der Trial+Error-Methode einen Weg gefunden, wie ich unter XP Avidemux per Batch dazu bekomme, mir ein Video zu transcoden.


    Ich habe dazu folgendes Tinypy-Script benutzt, welche ich mit der GUI erstellt und anschließend manuell modifiziert habe:



    Code
    1. #PY <- Needed to identify ##--automatically built--#Dateiname: q23_v261.pyadm = Avidemux()#adm.loadVideo("F:/zz/MVI_0048_.MOV")#adm.clearSegments()#adm.addSegment(0, 0, 4704000)#adm.markerA = 0#adm.markerB = 4704000adm.videoCodec("x264", "general.params=AQ=23", "general.threads=99", "general.fast_first_pass=True", "level=31", "vui.sar_height=1", "vui.sar_width=1", "MaxRefFrames=2", "MinIdr=100", "MaxIdr=500", "i_scenecut_threshold=40", "MaxBFrame=2", "i_bframe_adaptive=0", "i_bframe_bias=0", "i_bframe_pyramid=0", "b_deblocking_filter=False", "i_deblocking_filter_alphac0=0", "i_deblocking_filter_beta=0", "cabac=True", "interlaced=False", "analyze.b_8x8=True", "analyze.b_i4x4=False", "analyze.b_i8x8=False", "analyze.b_p8x8=False", "analyze.b_p16x16=False", "analyze.b_b16x16=False", "analyze.weighted_pred=0", "analyze.weighted_bipred=False", "analyze.direct_mv_pred=0", "analyze.chroma_offset=0", "analyze.me_method=0", "analyze.mv_range=16", "analyze.subpel_refine=7", "analyze.chroma_me=False", "analyze.mixed_references=False", "analyze.trellis=1", "analyze.psy_rd=0.000000", "analyze.psy_trellis=0.000000", "analyze.fast_pskip=True", "analyze.dct_decimate=False", "analyze.noise_reduction=0", "analyze.psy=True", "analyze.intra_luma=21", "analyze.inter_luma=21", "ratecontrol.rc_method=0", "ratecontrol.qp_constant=0", "ratecontrol.qp_min=0", "ratecontrol.qp_max=0", "ratecontrol.qp_step=0", "ratecontrol.bitrate=0", "ratecontrol.vbv_max_bitrate=0", "ratecontrol.vbv_buffer_size=0", "ratecontrol.vbv_buffer_init=0", "ratecontrol.ip_factor=0.000000", "ratecontrol.pb_factor=0.000000", "ratecontrol.aq_mode=0", "ratecontrol.aq_strength=0.000000", "ratecontrol.mb_tree=False", "ratecontrol.lookahead=0")adm.audioClearTracks()adm.audioAddTrack(0)adm.audioCodec(0, "LavAAC");adm.audioSetDrc(0, 0)adm.audioSetShift(0, 0,0)adm.setContainer("MP4", "muxerType=0", "useAlternateMp3Tag=True")



    Die Modifikation betrifft die Auskommentierung der Zeilen von adm.loadVideo bis adm.markerB. Sonst wird immer das gleiche Video geladen, mit dem das Script erstellt worden ist und man kann das Video nicht über die Kommandozeile von XP übergeben.



    Der Aufruf unter XP sieht so aus:

    Code
    1. rem set programm=avidemux.exe
    2. set programm=avidemux_cli.exe
    3. set Konfigdatei=q23_v261.py
    4. set Ausgabe="%~dpn1_q23_v261.mp4"
    5. %programm% --load "%~1" --run %Konfigdatei% --save %Ausgabe%



    Vielleicht kann man das noch optimieren, weshalb ich für Verbesserungsvorschläge dankbar wäre.
    Es macht aber schon mal, was ich brauche. Vielleicht hilft es jemandem, der ein ähnliches Problem hat.