C#: mkvmerge mit Umlauten + BePipe mit Nero-CLI

  • Hallo zusammen

    Wir haben hier sicherlich mindestens einen C#-Entwickler, der mir bei zwei Problemen helfen kann.

    Das erste: Ich starte aus C# über "Process" mkvmerge.exe. Dabei möchte ich eigentlich mindestens für das Outputfile Umlaute verwenden. Mache ich das in mkvmergeGUI von Hand, funktioniert alles. Mache ich das über mkvmerge.exe auf der Kommandozeile oder eben über C# als Process mit .Filename und .Arguments, werden die Umlaute nicht richtig verarbeitet und ein Source-File mit Umlauten kann nicht gelesen werden, resp. im Output-Filename wird anstelle des Umlautes irgendwas anderes gesetzt.

    Das zweite: Ich weiss wie man StdOut und StdErr grundsätzlich mit C# redirected. Allerdings habe ich es nicht geschafft den StdOut des einen Process (in dem ich BePipe.exe starte) einzulesen und an den Nero-Process StdIn weiterzuleiten. Auch in den .Arguments vom BePipe-Process direkt die Pipe mit Nero anzuhängen schaffe ich nicht. Diese Commandline möchte ich direkt intern in C# lösen:
    D:\PROGRAMME\BePipe.exe --script "import(^D:\RIP-WORK\TEST\ORIGINAL_GER.avs^)" | D:\PROGRAMME\neroAacEnc.exe -ignorelength -he -q 0.2 -if - -of "D:\RIP-WORK\TEST\ORIGINAL_GER.mp4"

    Kann hier evtl. jemand aus diesem Forum weiterhelfen?

    Gruss, Starship2000

  • Code-Page schien es gewesen zu sein. Wenn ich CHCP 1252 vor dem mkvmerge.exe in eine Batchdatei setze, werden Umlaute absolut korrekt von mkvmerge.exe verarbeitet. Warum das ganze bei direktem Processaufruf nicht funktioniert - keine Ahnung. Ebenso kann ich über 2 Processe (einer BePipe mit Redirect des StdOut einer Nero mit Redirect des StdIn) die Pipe nicht korrekt weiterleiten. Hier gehe ich auch über den Umweg eines Batchfiles und rufe das dann aus C# heraus auf - funktioniert ebenfalls....

    LigH, danke für Deinen hinweis

Jetzt mitmachen!

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