2016-09-12 90 views
2

シンプルなWindowsフォームプログラムでビデオをトランスコードしたかったのです。VLCコマンドライン - トランスコード

引数を指定してプロセスを作成しています。

マイコード:

 string vlc = @"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"; 
     string [email protected]"C:\Users\pc\Desktop\test.mp4"; 

     ProcessStartInfo p = new ProcessStartInfo 
     { 
      FileName = vlc, 
      Arguments = @"% vlc C:/video.mpg :sout=#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100}:std{access=file{no-overwrite},mux=mp4,dst="+dest+"}" 
     }; 
     Process x = Process.Start(p); 
     x.WaitForExit(); 

問題は、それが機能していないということです。プログラムは、VLCを起動し、何もVLC

+0

あなたは1を持っていると仮定すると、あなたの質問を追加するのを忘れ。 – stuartd

+0

ああ、そうです。問題は、それが動作していないということです(質問は更新されました) –

+0

VLC内またはコマンドライン経由でパラメータのsoutチェーンを試しましたか?また、冗長モード-vvvを使用してログを有効にしようとすると、深く掘り下げる程度がわかります。また、インターフェイスを介してログを表示できるようにする必要があります。一般的に、まずVLCで動作させてから作業してみてください... –

答えて

0

からエラーが起こっていないかなってきますが、生成されたストリームの出力文字列、 使用オープンネットワークストリームを表示し、ファイルにあなたのタブを変更したい場合は、私は最近Similar Question

を尋ねました。

[再生]をクリックする代わりに、プルダウンを展開して[ストリーム]を選択します。

ウィザードの指示に従って、コピー先ファイルとトランスコードオプションを設定します。たとえば、あなたが使用できる文字列を取得しますストリーミングする前に

....

は:

:sout=#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100}:file{dst=C:\\Users\\Public\\Videos\\Sample Videos\\test.mp4,no-overwrite} :sout-keep 
関連する問題