ffshow?开发桌面录制录音
大家好,ffshow相信很多的网友都不是很明白,包括开发桌面录制录音也是一样,不过没有关系,接下来就来为大家分享关于ffshow和开发桌面录制录音的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
日常工作中有没有发现找个录音或者桌面录制软件很难找,就算找到了软件使用时要么一堆广告,要么有水印或者需要VIP等,接下来看我们自己如和去开发;
首先看看使用录屏指令(ffmpeg执行文件可上网搜寻下载);
ffmpeg-fgdigrab-idesktop屏幕录像.mp4
2.录制麦克风声音,不同电脑麦克风设备可能不一样,需要录制电脑播放声音需要安装“SetupScreenCapturerRecorderv0.12.10.exe”
ffmpeg-y-fdshow-iaudio="耳机(ConexantISSTAudio)"-acodeclibmp3lamewindow.mp3
3.录制做桌面+麦克风(也可以与桌面声音一起录制,代码中再加一个声音设备即可virtual-audio-capturer)
ffmpeg-y-fgdigrab-idesktop-r10-vcodeclibx264-s1366x768-b:v10000-crf24-pix_fmtyuv420p-fdshow-iaudio="耳机(ConexantISSTAudio)"-preset:vultrafast-tune:vzerolatencyMyDeskto1p.mp4
4.查看支持设备列表(在ffmpeg根目录下执行cmd)
ffmpeg-list_devicestrue-fdshow-idummy
在C#中如何调用
1.写一个指令执行方法,调用CreateAudio方法,传入指令参数
publicvoidCreateAudio(stringinstruction)\\n{\\nAudioRecorderProcess=newProcess();\\nAudioRecorderProcess.StartInfo.FileName=@"FFmpeg\\\\ffmpeg.exe";\\nAudioRecorderProcess.StartInfo.Arguments=instruction;//参数\\nAudioRecorderProcess.StartInfo.UseShellExecute=false;//不使用操作系统外壳程序启动\\nAudioRecorderProcess.StartInfo.RedirectStandardError=true;//重定向标准错误流\\nAudioRecorderProcess.StartInfo.CreateNoWindow=true;//默认不显示窗口\\nAudioRecorderProcess.StartInfo.RedirectStandardInput=true;//这句一定需要,用于模拟该进程控制台的输入\\nAudioRecorderProcess.ErrorDataReceived+=newDataReceivedEventHandler((s,message)=>\\n{\\nConsole.WriteLine(message.Data);\\n\\nmsgs=message.Data;\\n//异步输出返回信息\\n\\n\\n});\\n\\nAudioRecorderProcess.Start();//启动\\nintAudioRecorderProcess_ID=AudioRecorderProcess.Id;\\nAudioRecorderProcess.BeginErrorReadLine();//开始异步读取\\n\\n\\n}
2.停止录制方法,录制完成文件默认保存在ffmpeg根目录下
publicvoidStopRecord()\\n{\\nif(AudioRecorderProcess!=null)\\n{\\n\\nAudioRecorderProcess.StandardInput.WriteLine("q");//在这个进程的控制台中模拟输入q,用于暂停录制\\nAudioRecorderProcess.Close();//关闭进程\\nAudioRecorderProcess.Dispose();//释放资源\\n}\\n}
ffmpeg同样也可以实现区域录制,窗口录制,更多内容后续分享
关于ffshow和开发桌面录制录音的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。