C# FFmpeg获取码率

GetInfo("ffmpeg"," -i "+sourcename);

static void GetInfo (string exe,string arg)

{
Process p = new Process (); 
try
{
p.StartInfo.FileName = exe;
p.StartInfo.Arguments = arg;
p.StartInfo.UseShellExecute = false;    
p.StartInfo.CreateNoWindow = true;  
p.StartInfo.RedirectStandardError = true ;
//启动进程
p.Start();
//等待进程结束
p.WaitForExit();
string Errorstr = p.StandardError.ReadToEnd();
string ss1 = "bitrate:";
string ss2 = "kb/s";
string kbps =  Errorstr.Remove(0,Errorstr.IndexOf(ss1)+ss1.Length);
string kbpsstr = kbps.Substring(0,kbps.IndexOf(ss2));
bitratestr = kbpsstr.Trim();
Console.WriteLine("码率:"+bitratestr);
p.Close();         
}
catch(Exception ex) {
Console.WriteLine (ex.Message);
}
finally {

}
}

时间: 2024-10-11 21:04:21

C# FFmpeg获取码率的相关文章

FFmpeg获取DirectShow设备数据(摄像头,录屏)

这两天研究了FFmpeg获取DirectShow设备数据的方法,在此简单记录一下以作备忘.本文所述的方法主要是对应Windows平台的. 1.       列设备 ffmpeg -list_devices true -f dshow -i dummy 命令执行后输出的结果如下(注:中文的设备会出现乱码的情况).列表显示设备的名称很重要,输入的时候都是使用"-f dshow -i video="{设备名}""的方式. 我自己的机器上列出了以下设备: [dshow @0

FFMpeg的码率控制

mediaxyz是一位研究ffmpeg有三年的高人了,这几天一直在折腾ffmpeg中的x264,就是不知道该如何控制码率,主要是参数太多,也不知道该如何设置,在google上search了一下,这方面的介绍为0,那就找mediaxyz请教请教吧,这些可都是经验,非常宝贵! 以下是与mediaxyz在QQ上聊天的记录,只有一部分,因为QQ把之前的谈话删除了,但基本上精髓都可这里了. mediaxyz 23:40:26 你说的qsable是c->global_quality吧 Leon 23:40:

mediaxyz访谈录:ffmpeg的码率控制

mediaxyz是一位研究ffmpeg有三年的高人了,这几天一直在折腾ffmpeg中的x264,就是不知道该如何控制码率,主要是参数太多,也不知道该如何设置,在 google上search了一下,这方面的介绍为0,那就找mediaxyz请教请教吧,这些可都是经验,非常宝贵! 以下是与mediaxyz在QQ上聊天的记录,只有一部分,因为QQ把之前的谈话删除了,但基本上精髓都可这里了. mediaxyz 23:40:26你说的qsable是c->global_quality吧 Leon 23:40:

FFmpeg 获取h264裸码流

有时候我们需要获取h264裸码流进行分析.本文介绍如何通过FFmpeg 获取h264 码流.获取到的h264码流文件 可以直接通过vlc 等播放器直接播放. 如下图 是通过WinHex工具 分析的一个h264文件 ffmpeg 获取h264 思路如下: 1,写4位头(00,00,00,01) 2,写sps 3,写4位头(00,00,00,01) 4,写pps 5,将读到的AVPacket.data 的前4位替换成(00,00,00,01)写文件. sps pps的获取参考上篇博文. 详细代码如下

ffmpeg获取文件的总时长(mp3/mp4/flv等)

使用ffmpeg.exe获取文件属性信息,C#中可以在进程外异步调用这个工具,如下: using (System.Diagnostics.Process pro = new System.Diagnostics.Process()) { pro.StartInfo.UseShellExecute = false; pro.StartInfo.ErrorDialog = false; pro.StartInfo.RedirectStandardError = true; pro.StartInfo

通过 ffmpeg 获取视频第一帧(指定时间)图片

最近做一个上传教学视频的方法,上传视频的同时需要上传视频缩略图,为了避免用户上传的缩略图与视频内容不符,经理要求直接从上传的视频中截图视频的某一帧作为缩略图,并给我推荐了FFMPEG.FFMPEG 功能很强大,做视频必备的软件. FFMPEG下载地址:https://ffmpeg.org/download.html 1.VideoThumbTaker.java 获取视频指定播放时间的图片 package video;import java.io.IOException;import java.i

asp+ffmpeg获取视频的时长

<% '视频数据定义 ffmpeg = "C:\ffmpeg\bin\ffmpeg.exe" video  = "D:\test\ffmpeg\test2\m1080p1.wmv" 'wscript脚本定义 set WshShell = CreateObject("Wscript.Shell") str2 = "cmd.exe /c "&ffmpeg&" -i "&video&

Android 音视频深入 十七 FFmpeg 获取RTMP流保存为flv (附源码下载)

项目地址https://github.com/979451341/RtmpSave 这个项目主要代码我是从雷神那弄过来的,不愧是雷神,我就配个环境搞个界面就可以用代码了. 这一次说的是将RTMP流媒体保存成为一个本地的FLV文件.因为播放视频本身占有很多技术难点,我先不做边获取RTMP流边播放了,这一次主要说如何获取RTMP流. 说说代码 初始化组件和网络环境 av_register_all(); //Network avformat_network_init(); 打开RTMP流,获取RTMP

使用ffmpeg获取视频时长等

查看视频信息的命令:ffmpeg -i 视频文件,如下: ffmpeg -i ryzh.mp4 控制台输出: 原文地址:http://blog.51cto.com/4754569/2324534