2

我想用简单的 Windows 窗体程序对视频进行转码。

我正在创建带有参数的过程。

我的代码:

        string vlc = @"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe";
        string dest=@"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 得到错误

4

1 回答 1

1

我最近问了一个类似的问题

如果您想查看生成的流输出字符串,请使用打开网络流并将您的选项卡更改为文件。

展开下拉列表以选择 Stream,而不是单击 Play。

按照向导说明设置目标文件和转码选项。

在流式传输之前,您将获得可以使用的字符串....

例如:

: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
于 2016-09-20T14:53:49.697 回答