C#实现 ffmpeg视频转码、播放
c# 实现 视频 播放 FFMPEG 转码
2023-09-27 14:20:25 时间
主要是转码的操作过程,能够实现了从相机获取的MP4转换成普通播放器播放的MP4格式;
//转码方法
private void Test1()
{
Process p = new Process();
p.StartInfo.FileName = path +"ffmpeg.exe";
p.StartInfo.UseShellExecute = false;
string srcFileName = "";
string destFileName = "";
srcFileName = path + "InitVideo1.mp4";
destFileName = path + "InitVideo.mp4";
p.StartInfo.Arguments = "-i " + srcFileName + " -y -vcodec h264 -b 500000 " + destFileName; //执行参数
p.StartInfo.UseShellExecute = false; 不使用系统外壳程序启动进程
p.StartInfo.CreateNoWindow = true; //不显示dos程序窗口
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;//把外部程序错误输出写到StandardError流中
p.ErrorDataReceived += new DataReceivedEventHandler(p_ErrorDataReceived);
p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived);
p.StartInfo.UseShellExecute = false;
p.Start();
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.BeginErrorReadLine();//开始异步读取
p.WaitForExit();//阻塞等待进程结束
p.Close();//关闭进程
p.Dispose();//释放资源
}
相关文章
- 2021 编程语言排行榜出炉!C#年度语言奖
- 微信公众号开发C#系列-3、搭建微信本地调试环境-借助花生壳实现内网穿透
- C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现[转载]
- 让我们再为C#异步编程Async正名
- C#_Math函数总结
- C#批量插入数据到Sqlserver中的四种方式
- C#实现单链表的定义、插入、删除、查找
- 转载 [深入学习C#]C#实现多线程的方式:使用Parallel类
- 简单的c# TCP通讯(TcpListener)
- C# OpenCV | 手把手教你用传统方法实现骰子识别
- C#之winform实现文件拖拽功能
- C#多线程Thread.Join()的详解
- 【数据结构】C# 实现常用数据结构总结
- C#问题——interface && class
- Unity3d C# 基于UGUI实现类似WX聊天气泡功能(含源码)
- Unity3d C#实现打包自动更新软件版本号且UGUI同步显示功能
- .NET(C#) 设计模式六大原则 里氏替换原则
- .NET(C#)/.NET Core 不安装MS Office实现创建Excel(.XLS和.XLSX)文件
- C# 获取当前程序运行路径
- C# 真正完美的 汉字转拼音
- C#简单工厂模式实现松耦合度四则运算