我正在使用 FFMPEG 库来操作用户上传的视频。
public async Task ManageVide(IFormFile file)
{
... process file
string command = $"-i inputFile.mp4 -vf -s 800x600 outFile.mp4";
...
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用内存流作为 ffmpeg 命令的输入和输出?我在某处读到可以使用 ffmpeg 管道。但我不知道如何构造命令
public async Task ManageVide(MemoryStream stream)
{
string command = $"-i pipe:{stream} -vf -s 800x600 test.mp4";
...
}
Run Code Online (Sandbox Code Playgroud)
我一直在使用CliWrap库来处理 FFMPEG。一个从内存流读取和写入的简单示例:
await Cli.Wrap("Path/to/exe")
.WithArguments(arguments)
.WithStandardInputPipe(PipeSource.FromStream(source))
.WithStandardOutputPipe(PipeTarget.ToStream(destinationStream))
.ExecuteAsync(cancellationToken);
destinationStream.Position = 0;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1421 次 |
| 最近记录: |