我可以使用ffmpeg将JPEG输出到内存流而不是文件吗?
我有一个C#应用程序。 我有100个JPEG(例如)。
我可以轻松地将其编码为video文件。
当它在客户端应用程序上完成编码后,我将FTP上传到我的服务器。
如果我不能将video文件写入光盘而是将其写入内存流(或字节数组)并通过Web服务上传,那将是“更整洁”?
我已经查看了ffmpeg文档,但作为C#开发人员,我发现理解C示例并不自然。
我想我的第一个问题是可能的,如果有的话,任何人都可以在C#中发布示例代码吗? 目前我在C#中使用进程类来执行ffmpeg。
您的流程方法已经很好,只需要调整:
- 设置
StartupInfo.RedirectStandardOutput = true
和StartupInfo.UseShellExecute = false
。 - 使用
pipe:
调用ffmpeg而不是输出文件名,这将使其写入标准输出。 此外,由于无法再根据文件名确定格式,因此请确保使用-f
开关。 - 开始这个过程。
- 从
Process.StandardOutput.BaseStream
(.BaseStream
读取,因此StreamReader
,即.BaseStream
不会弄乱任何东西),同时进程正在运行到您的内存流中。 - 读取
Process.StandardOutput.BaseStream
仍保留缓冲的任何内容。 - 利润。
我一会儿编写了一个缩略图 (BSD 2子句),它有实际的代码来certificate这一点。 无论是最终来自ffmpeg的图像还是video都无关紧要。
上述就是C#学习教程:我可以使用ffmpeg将JPEG输出到内存流而不是文件吗?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1023094.html