ffmpeg录屏原理(ubuntu自带录屏软件介绍)

  FFmpeg是领先的多媒体框架,是一个强大的处理音视频的开源库,能够解码、编码、转

  FFmpeg是领跑的多媒体系统架构,是一个强劲的解决音频视频的开源系统库,可以编解码、编号、转换格式、混流式、流媒体播放分离出来、ps滤镜和播放视频几乎所有的文件格式的音频视频內容。它既可以应用API对音频视频开展解决,还可以应用FFmpeg指令编写音频视频文档。

  包括用以声频、短视频和字慕流的好几个视频解码器和伺服电机,及其好几个位流过滤装置。

  技术分享|如何使用FFmpeg命令处理音视频libavutil: 是一个包括用以简单化程序编写的函数公式专用工具库,包含随机数生成器、算法设计、数学思维方法、关键多媒体系统应用工具这些。

  libavcodec: 是一个包括用以声频/视频编解码器的库。

  libavformat:是一个包括多媒体系统器皿文件格式的合成器和分离设备的库。

  libavdevice:是一个包括键入和外部设备的库,用以爬取和3D渲染很多常用的多媒体系统键入/导出软件框架,包含 Video4Linux、Video4Linux2、VfW 和 ALSA。

  libavfilter:是一个包括新闻媒体过滤装置的库。

  libswscale:是一个实行相对高度提升的图象调整图片大小和色彩空间/像素格式变换实际操作的库。

  libswresample: 是一个实行相对高度提升的声频重采样、rematrixing和样版格式转化实际操作的库。

  ffmpeg:ffmpeg是一个命令行工具,用以在命令完成FFmpeg具备的作用。

  ffplay: ffplay是一个应用 FFmpeg 库和 SDL 库的比较简单和便携式的多媒体播放器。它关键作为各种各样 FFmpeg API 的测试平台。

  ffprobe: ffprobe 是一个多媒体系统流分析工具。它从多媒体流中搜集信息内容,而且以人们和设备想读的方式印刷出去。它可以用于检验多媒体系统流的器皿种类,及其每一个多媒体系统流的文件格式和种类。它可以当作一个单独的运用来应用,还可以融合文字过滤装置实行更繁杂的解决。

  通过了解了FFmpeg的文件目录以及专用工具,下边文章内容主要详细介绍下到日常日常生活,大家怎么用FFmpeg命令解决音频视频文档。

  FFmpeg指令依据作用的区别,大概可以分成:视频录制指令,音频视频的生成和分离出来,音频视频的激光切割与合拼,照片、短视频相互之间变换等好多个大的控制模块。下边大家详细介绍下怎么使用FFmpeg命令解决音频视频完成以上的好多个作用。

  文中以Ubuntu电脑操作系统为例子,根据简洁的指令sudo apt-get install ffmpeg来安裝

  还可以在Windows,MacOS,别的Linux操作系统安装FFmpeg后实行一下指令

  1) 视频录制

  ffmpeg -f avfoundation -list_devices true -i “”

  2) 屏幕录制

  ffmpeg -f avfoundation -i 1 -r 30 out.yuv

  · -f 特定应用 avfoundation 采集数据。

  · -i 特定从哪里采集数据,它是一个文档索引号。在我的电脑上,1 意味着桌面上(可以根据以上的指令查看机器设备索引号)。

  · -r 特定帧数。按 ffmpeg 官方网文本文档说-r 与-framerate 功效同样,但具体检测时看到不一样。-framerate 用以限定键入,而-r 用以限定导出。

  3) 屏幕录制 响声

  ffmpeg -f avfoundation -i 1:0 -r 29.97 -c:v libx264 -crf 0 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 48k out.flv

  · -i 1:0 灶具前边的 “1” 意味着的显示屏索引号。灶具后边的”0″意味着的响声索相号。

  · -c:v 与主要参数 -vcodec 一样,表明视频编码器。c 是 codec 的简称,v 是 video 的缩写。

  · -crf 是 x264 的主要参数。 0 表式无损压缩。

  · -c:a 与参数 -acodec 一样,表明音频编码器。

  · -profile 是 fdk_aac 的主要参数。 aac_he_v2 表式应用 AAC_HE v2 缩小数据信息。

  · -b:a 特定音频码率。 b 是 bitrate 的简称, a 是 audio 的缩与。

  4) 拍视频

  ffmpeg -framerate 30 -f avfoundation -i 0 out.mp4

  · -framerate 限制视频的收集帧数。这一一定要依据提醒规定开展设定,如果不设置便会出错。

  · -f 特定应用 avfoundation 采集数据。

  · -i 特定视频监控设备的索引号。

  5) 短视频 声频

  ffmpeg -framerate 30 -f avfoundation -i 0:0 out.mp4

  6) 音频

  ffmpeg -f avfoundation -i :0 out.wav

  7) 录制音频裸数据信息

  ffmpeg -f avfoundation -i :0 -ar 44100 -f s16le out.pcm

  8) 提取声频流

  ffmpeg -i input.mp4 -acodec copy -vn out.aac

  · acodec: 特定音频编码器,copy 指出只复制,不做编解码。

  · vn: v 意味着短视频,n 意味着 no 也就是忽视频的意思。

  9) 变换为MP3文件格式

  ffmpeg -i input.mp4 -acodec libmp3lame out.mp3

  10) 提取视频流

  ffmpeg -i input.mp4 -vcodec copy -an out.h264

  · vcodec: 特定视频编码器,copy 指出只复制,不做编解码。

  · an: a 意味着短视频,n 意味着 no 也就是无音频的意思。

  11) 视频转格式

  ffmpeg -i video_test.mp4 -vcodec copy -acodec copy out_convert.flv

  上边的指令表式的声频、短视频都立即 copy,仅仅将 mp4 的封装形式文件格式转变成 flv。

  12) 除去视频声音

  ffmpeg -i video_auido.mp4 -vcodec copy -an video.mp4

  13) 压缩视频

  1)ffmpeg -i test_ffmpeg.mp4 (缩小的文档更高更清楚,一般情形下无需)

  2)ffmpeg -i out.MP4 -b:v 500k 512k_out.mp4(减小视频码率,压缩的更模糊)

  14) 音视频合并

  ffmpeg -i out.h264 -i out.aac -vcodec copy -acodec copy out.mp4

  15) 提取YUV数据

  ffmpeg -i input.mp4 -an -c:v rawvideo -pixel_format yuv420p out.yuv

  # 播放

  ffplay -s wxh out.yuv

  · -c:v rawvideo 指定将视频转成原始数据

  · -pixel_format yuv420p 指定转换格式为 yuv420p

  16) 视频YUV转H264

  ffmpeg -f rawvideo -pix_fmt yuv420p -s 640×480 -r 30 -i out.yuv -c:v libx264 -f rawvideo out.h264

  17) 提取音频PCM数据

  ffmpeg -i out.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm

  # 播放

  ffplay -ar 44100 -ac 2 -f s16le -i out.pcm

  18) PCM转WAV

  ffmpeg -f s16be -ar 8000 -ac 2 -acodec pcm_s16be -i input.raw output.wav

  19) 添加水印

  图片水印:

  ffmpeg -i out.mp4 -vf “movie=logo.png,scale=128:72[watermask];[in][watermask] overlay=96:54 [out]” water_img.mp4

  · -vf 中的 movie 指定 logo 位置。scale 指定 logo 大小。overlay 指定 logo 摆放的位置。

  文字水印:

  ffmpeg -i out.mp4 -vf “drawtext=fontfile=FZBaoHTJW_Xi.TTF: text=’anyRTC’:x=128:y=72:fontsize=24:fontcolor=red:shadowy=2” water_text.mp4

  20) 视频缩放

  fmpeg -i out.mp4 -vf scale=iw/2:-1 scale.mp4

  · -vf scale 指定使用简单过滤器 scale,iw/2:-1 中的 iw 指定按整型取视频的宽度。-1表示高度随宽度一起变化。

  降低视频的分辨率且转换视频格式

  ffmpeg -i input.avi -vf scale=640:360 out.mp4

  21) 视频裁剪

  ffmpeg -i VR.mov -vf crop=in_w-300:in_h-200 -c:v libx264 -c:a copy -video_size 1280×720 vr_new.mp4

  crop 格式:crop=out_w:out_h:x:y

  · out_w: 输出的宽度。可以使用 in_w 表式输入视频的宽度。

  · out_h: 输出的高度。可以使用 in_h 表式输入视频的高度。

  · x : X 坐标

  · y : Y 坐标

  如果 x 和 y 设置为 0,说明从左上角开始裁剪。如果不写是从中心点裁剪。

  22) 视频左右(上下)翻转

  ffmpeg -i out.mp4 -filter_complex “[0:v]pad=w=2*iw[a];[0:v]hflip[b];[a][b]overlay=x=w” duicheng.mp4

  · hflip 水平翻转

  · 如果要修改为垂直翻转可以用 vflip。

  23) 裁剪片段

  ffmpeg -i out.mp4 -ss 00:00:00 -t 10 out_cut.mp4

  · -ss 指定裁剪的开始时间,精确到秒

  · -t 被裁剪后的时长。

  24) 音视频合并

  首先创建一个 videolist.txt 文件,文件内容如下:

  file ‘test1.mp4’

  file ‘test2.mp4’

  然后执行下面的命令:

  ffmpeg -f concat -i videolist.txt -c copy output.mp4

  25) HLS切片

  ffmpeg -i out.mp4 -c:v libx264 -c:a libfdk_aac -strict -2 -f hls out.m3u8

  · -strict -2 指明音频使有 AAC。

  · -f hls 转成 m3u8 格式。

  26) 视频转JPEG

  ffmpeg -i video_test.mp4 -r 1 -f image2 image-%3d.jpeg

  27) 图片格式转换

  ffmpeg -i input.bmp out.jpg

  ffmpeg -i input.bmp out.png

  28) 视频按帧截图

  主要用于用户手动截图或上传视频生成缩略图

  此处:-ss position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格式也支持,-vframes 设置转换多少桢(frame)的视频,示例命令是获取第一秒第一帧的截图。

  注:生成的截图最好使用jpg格式,占用空间较小,如果需要使用其他格式,根据业务需求自行设置即可。

  ffmpeg -ss 00:00:01 -y -i video_test.mp4 -vframes 1 snap.jpg

  29) 视频转GIF

  ffmpeg -i video_test.mp4 -r 1 -f image2 image-%3d.jpeg

  30) 图片转视频

  ffmpeg -f image2 -i image-%3d.jpeg out_img_video.mp4

  31) 视频添加字幕srt

  ffmpeg -i video_test.mp4 -vf subtitles=subtitle.srt out_subtitle.mp4

  32) 视频添加音乐+字幕

  ffmpeg -i video_test.mp4 -i audio_bg.mp3 -vf subtitles=all_mp3_srt.srt out_mp3_subtitle.mp4

  FFmpeg是一个强大的专门音视频处理的库,很多播放器都是基于FFmpeg进行的开发。文章所提的功能只是小编罗列的FFmpeg可使用功能的一部分,更多FFmpeg命令行可实现处理音视频的功能,大家可以去FFmpeg官网查阅相关文档。

原创文章,作者:分享大师,如若转载,请注明出处:https://ziliaobaba.com/15082.html

(0)
分享大师分享大师
上一篇 2022年1月23日 04:22
下一篇 2022年1月23日 06:26

相关推荐

  • 中国十大品牌奶粉(口碑最好的国产奶粉)

    第一名 雅培 我们是一家全球性的多元化医疗保健公司,致力于探索维持健康的新药品、新技术和新方法。我们的产品跨越整个医疗护理领域,从营养品和诊断产品到医疗器械和医药治疗方案。我们全线产品系列贯穿各个年龄段…

    2022年10月17日
  • 十大智能家居公司排名?十大智能家居排行

    什么是智能家居?顾名思义,智能家居(英文:smart home, home automation)是以住宅为平台,利用综合布线技术、网络通信技术、 安全防范技术、自动控制技术、音视频技术将家居生活有关的设施集成,构建高效的住宅设施…

    2021年11月8日
  • 户型图在线绘制(如何绘制户型图)

    户型对于购房者来说十分的重要,所以作为专业的置业顾问不仅要会看还要懂得如何绘制户型图。先来了解一下什么是户型图:户型图是通过图片的形式来展示房屋结构的图形,即分别对每个独立的空间的功能、位置、大小进行…

    2022年10月24日
  • 积雪草面膜的功效与作用?积雪草的美容功效

    真是不理解,我一个单身狗,七夕怎么就能从太阳升起嗨到太阳升起,还给自己整成了烂脸……七夕过后不得不说,闺蜜比男人靠得住!早上从闺蜜家“顺走”的敷尔佳积雪草面膜功效真的有惊艳到我,本干敏皮女孩表示非常爱! …

    2021年11月14日
  • 手机中毒怎么清理最彻底?查杀手机病毒

    Android手机中了恶意软件后,通常的表现情况有: 1.恶意广告、营销广告的各种弹窗 2.自动下载来历不明的APP应用 3.劫持其他APP的一些服务 4.监控手机键盘的输入操作 5.发送一些需要扣费的短信信息 6.手机被恶意锁屏 …

    投稿 2022年10月26日
  • 鱿鱼怎么处理干净?鱿鱼须最简单的做法

    现在肉价贵,感觉顿顿吃肉有点花费不起,就把视线转移到海产品上,发现有的海产品也不便宜,想想反正都是贵,不如多吃些海产品。 这两天墨鱼,鱿鱼成为荤菜端上桌,很受家人欢迎。海产品通常是高蛋白低脂肪食物,营…

    2022年11月18日
  • 树葡萄的功效与作用是什么?树葡萄果的功效与作用

    树葡萄是一种俗称,因其像葡萄一样,只不过是直接长在树干上。那么,树葡萄多少钱一斤?下面来了解树葡萄的功效与作用。 树葡萄多少钱一斤 树葡萄一般指嘉宝果嘉宝果,又名珍宝果(Pliniacauliflora(Mart.)Kausel),属…

    2023年1月9日
  • 生完孩子脱发(生完孩子4招摆脱掉发烦恼)

    因为大多数女性都有着一头乌黑飘逸的长发,这也就使得女性往往比男性更加频繁地遭受脱发的困扰。平时洗头、梳头的时候,总是会出现掉发的情况,而对于那些正处于产后恢复的妈妈们来说,脱发的情况可能会更加严重,往往都是“不掉则已,一掉一大把”,这究竟是为什么呢?一般说来,往往是由于以下这几个原因:1.激素水平的变化在孕期,孕妇体内的雌激素水平会大幅上升,这也就使得毛囊里的

    2022年1月4日
  • 马桶出水口为什么有大便出来?马桶出水口尺寸

    家里马桶坏了,这个可是生活必需品,想着老马桶用了快十年了,不如趁这次正好换个新的,老婆催了好几天,今天的空赶紧就去就隔壁市场去挑了个回来,也用不着请工人装了,我毕竟干了这么多年装修,自己对装这点小东西…

    2021年11月18日
  • 中华民族近代以来最伟大的梦想是什么

    中华民族近代以来最伟大的梦想:实现中华民族伟大复兴 一、中华民族伟大复兴的梦想 中华民族伟大复兴的梦想,是中华民族近代以来最伟大的梦想。它源于中华民族的历史悠久、文化灿烂、传统良好的传统,更是受到近代中…

    投稿 2023年7月25日