我想用简单的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获得错误
答案 0 :(得分: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