zoukankan      html  css  js  c++  java
  • ffmpeg录屏

    使用gdigrab录制屏幕

      //            gdigrab 录屏
                //-s 1920x1080 录制的屏幕宽度、高度
                //- offset_x 100  偏移
                // - offset_y 200  偏移
                //  需要注意宽度、高度分别加上偏移以后不能超出屏幕
                //例如 - s 1920x1080 - offset_x 100 - offset_y 200
                //会有以下报错
                //Capture area(10, 20),(1930, 1100) extends outside window area(0,-1440),(2560, 1080)desktop: I / O error
                //   - i desktop 录制屏幕
                //-thread_queue_size 此选项设置从文件或设备读取时排队数据包的最大数量。低延迟 / 高速率的直播流,如果不及时读取数据包可能会被丢弃;设置此值可以强制 ffmpeg 使用单独的输入线程并在数据包到达时立即读取数据包。默认情况下,ffmpeg 仅在指定了多个输入时才执行此操作。
                //-r 帧率
                //libx264 使用 libx264 编码所有视频流并复制所有音频流。
                //-acodec 设置音频编解码器,copy: 所选流的数据包应从输入文件传送并在输出文件中混合
                //- f 强制输入或输出文件格式。通常会自动检测输入文件的格式,并根据输出文件的文件扩展名猜测格式,因此在大多数情况下不需要此选项。
    

    常用操作

    1. 抓取整个屏幕保存图片
    ffmpeg -f gdigrab -i desktop test.png
    
    1. 截屏指定区域
    //调整截图区域需要在输入-i之前
    ffmpeg -f gdigrab -s 500x500 -offset_x 100 -offset_y 100 -i desktop   -frames:v 1 test.png
    
    1. 截屏指定窗口
    //通过title指定窗口标题
    //输出为jpg,若为png将存在透明窗口的问题
    ffmpeg -f gdigrab -i title="Windows 7sp1 x64_677408 - VMware Workstation"   -frames:v 1 test.jpg
    
    1. 截屏指定窗口指定区域
    ffmpeg -f gdigrab  -s 500x500 -offset_x 100 -offset_y 100  -i title="Windows 7sp1 x64_677408 - VMware Workstation"   -frames:v 1 test.jpg
    
    1. 录制屏幕为视频文件
    ffmpeg.exe -r 1 -f gdigrab  -i desktop -vcodec libx264  a.mp4
    
    1. 录制屏幕指定区域
    ffmpeg.exe -r 1 -f gdigrab -s 500x500 -offset_x 100 -offset_y 100  -i desktop -vcodec libx264  a.mp4
    
    1. 录制屏幕为直播流
    ffmpeg -thread_queue_size 1000 -r 30 -f gdigrab -s 1820x880 -offset_x 100 -offset_y 200 -i desktop -vcodec libx264 -acodec copy -preset:v ultrafast -tune:v zerolatency -max_delay 10 -g 50 -sc_threshold 0 -f flv rtmp://xxxxxx
    
    留待后查,同时方便他人
    联系我:renhanlinbsl@163.com
  • 相关阅读:
    centos5.8下用shell脚本监控服务器
    linux下IPTABLES配置详解
    centos设置计划任务(cron)
    32位CentOS系统安装kernel-PAE支持4g以上内存
    Excel同时打开多个独立的窗口
    yum安装LAMP
    多字段指定不同方向排序
    MySQL基础
    Python 网络编程
    Python 并发编程
  • 原文地址:https://www.cnblogs.com/ives/p/15439976.html
Copyright © 2011-2022 走看看