我想将一些原始帧编码为nvenc_h264,然后通过UDP流传输。现在,我需要为每个帧添加一些数据,例如捕获时间,作为其元数据或字幕(仅适用于该帧,或者在元数据中指定它仅与哪个帧相关。)。
现在我在C#中使用此命令来启动FFmpeg,以使用管道接收原始帧并通过UDP流传输它。
"-f rawvideo -vcodec rawvideo -pixel_format rgba"
+ " -colorspace bt709"
+ " -s " + width + "x" + height
+ " -framerate " + frameRate + " -vsync 0 "
+ " -loglevel warning -i - "// +// preset.GetOptions()
+ " -c:v h264_nvenc -preset ll -zerolatency 1 -cq 10 -bf 2 -g 150 -f mpeg pipe:10" //udp://172.20.82.106:2000?" //outputPath
我使用的基本代码在这里: https://github.com/keijiro/FFmpegOut
,我使用此命令来接收和保存文件:
ffmpeg -i udp://127.0.0.1:2001 -c:v h264_nvenc video.mp4
正如我所说,我希望时间可以作为以后可以处理的数据,而不仅仅是帧上的水印。如何添加?有什么办法吗?