Доступ к StandardInput из NRECO.VideoConverter?
В настоящее время я использую ответ на этот вопрос, чтобы передать строку растровых изображений в ffmpeg. Требуется перенаправление потока StandardInput и запись в него.
Есть ли что-то подобное в NRECO.VideoConverter? Есть ли способ получить либо доступ к запущенному процессу, либо доступ только к базовому потоку StandardInput?
1 ответ
Решение
Если вы хотите предоставить входные данные для стандартного ввода или прочитать выходные данные из стандартного вывода (или оба), вы можете использовать ConvertLiveMedia
Способ; у него есть перегрузки для разных сценариев использования:
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", если это необходимо.