C# 如何正确重定向StdIn/StdOut以控制VLC?
我正在编写一个独立于平台的C#应用程序(我的目标是Windows和Raspbian)。我想使用VLC进行音频播放 我尝试使用远程控制接口C# 如何正确重定向StdIn/StdOut以控制VLC?,c#,redirect,process,vlc,C#,Redirect,Process,Vlc,我正在编写一个独立于平台的C#应用程序(我的目标是Windows和Raspbian)。我想使用VLC进行音频播放 我尝试使用远程控制接口VLC-irc启动VLC,并重定向StdIn/StdOut,以便发送命令和接收VLC进程的信息: vlcproc = new Process(); vlcproc.StartInfo = new ProcessStartInfo(VLCPath, "-I rc"); vlcproc.StartInfo.UseShellExecute = false; vlcpr
VLC-irc
启动VLC,并重定向StdIn/StdOut,以便发送命令和接收VLC进程的信息:
vlcproc = new Process();
vlcproc.StartInfo = new ProcessStartInfo(VLCPath, "-I rc");
vlcproc.StartInfo.UseShellExecute = false;
vlcproc.StartInfo.RedirectStandardInput = true;
vlcproc.StartInfo.RedirectStandardOutput = true;
bool res = vlcproc.Start();
vlcproc.OutputDataReceived += vlcproc_OutputDataReceived;
但它并没有像预期的那样起作用。如果我使用vlcproc.StandardInput.WriteLine()
编写一些命令,VLC似乎什么也得不到。我尝试在本地文件和流上使用add…
。使用C#,不播放-手动输入,播放。我也没有得到任何标准输出信息(由事件处理程序中的Console.Write()
打印)
我做错了什么
PS:一个可靠的、跨平台的音频/视频播放器,支持文件和网络流,并且可以集成到Mono/.NET支持的GUI框架中,这将比这一尝试更好。问题是VLC不作用于stdout/stin。我可以通过
script-c”“
运行stdout来解决这个问题