从NRECO.VideoConverter访问StandardInput?

时间:2017-08-14 14:33:30

标签: c# nreco

我目前正在使用this question的答案将一串位图传输到ffmpeg。它需要重定向StandardInput流并写入它。

与NRECO.VideoConverter有类似的东西吗?有没有办法访问正在运行的进程,或只访问StandardInput基本流?

1 个答案:

答案 0 :(得分:1)

如果要向stdin提供输入数据或从stdout(或两者)读取输出数据,可以使用http://ams.bhsfic.com方法;它具有针对不同使用场景的重载:

var videoConv = new FFMpegConverter();          
var ffMpegTask = videoConv.ConvertLiveMedia(
    "rawvideo",
    h264stream, 
    "h264",
    new ConvertSettings() {
        CustomInputArgs = String.Format(" -pix_fmt bgr24 -video_size 640x480 -framerate 5 ", 
            frameBmp.Width, frameBmp.Height)
    });
ffMpegTask.Start();
ffMpegTask.Write( bmpBytes );  // call N times for each input frame. Image size should be exactly 640x480
ffMpegTask.Stop();

如果需要,您可以将此代码段用于“image2pipe”。