ffmpeg

[toc]

ffmpeg下载与配置

ffmpeg官网

image-20230722105015769

image-20230722105037916

image-20230722105115515

将下载下来的ffmpeg解压并且重命名为ffmpeg

image-20230722105352399

我习惯将该文件夹迁移到C:\Program Files文件夹内,然后在环境变量里写入C:\Program Files\ffmpeg\bin

image-20230722105603885

然后在cmd输入下面指令就能看到详细信息

1
ffmpeg -version

image-20230722110016567

ffmpeg简介

ffmpeg/ffplay/ffprobe区别

ffmpeg: Hyper fast Audio and Video encoder 超快音视频编码器(类似爱剪辑)

ffplay: Simple media player 简单媒体播放器

ffprobe: Simple multimedia streams analyzer 简单多媒体流分析器

帮助命令

1
ffmpeg -h

image-20230722110633308

播放视频

1
ffplay "视频名字.规格"

查看视频详细参数

1
ffprobe "视频名字.规格"

转码(转换格式、编码)

转格式

tsmp4

1
ffmpeg -i "input.ts" output.mp4

其他的也这样

转编码

查看编码器

1
ffmpeg -codecs

image-20230722123100557

MP4封装:H264视频编码+AAC音频编码

WebM封装:VP8视频编码+Vorbis音频编码

OGG封装:Theora视频编码+Vorbis音频编码

flac转mp3

由于我的监听耳机线烧了,我只能用蓝牙耳机(HUAWEI FreeBuds pro 2)听,细节还是在的,但是我没办法很准确说出来,得更加准确的监听耳机和音乐播放软件才能更好进行对比

1
ffmpeg -i "米津玄师 - Lemon.flac" "米津玄师 - Lemon.mp3"

也可以使用下面参数,不用默认也可:

采样率:-ar 44100

指定音频比特率:-ab 320k

指定声道数:-ac 2

1
2
3
4
5
6
7
8
9
Audio options:
-aframes number set the number of audio frames to output #设置输出音频帧数
-aq quality set audio quality (codec-specific) #设置音频质量
-ar rate set audio sampling rate (in Hz) #设置音频采样率(Hz)
-ac channels set number of audio channels #设置声道数,1为单声道,2为立体声
-an disable audio #取消音频输出
-acodec codec force audio codec ('copy' to copy stream) #指定音频编解码器(“复制”到复制流)
-vol volume change audio volume (256=normal) #设置录制音量大小
-af filter_graph set audio filters #设置音频滤镜

4K转1080P

懒得写了,没有4K的AV。。。

合并提取

视频去掉音频

1
ffmpeg -i "input.mp4" -vcodec copy -an output.mp4

保持原本编码格式:copy

静音:-an

视频中截取音频

1
ffmpeg -i "input.mp4" -vn -acodec copy output.m4a

剔除视频:-vn

保持原本编码格式:copy

提取的音频和提取的视频合并

1
ffmpeg -i output.m4a -i output.mp4 -c copy out.mp4

mp4提取mp3

1
ffmpeg -i "input.mp4" -q:a 0 -map a "input.mp3"

音频截取

截取1分到1分10秒这段音频

1
ffmpeg -i "input.mp3" -ss 00:01:00 -t 10 -acodec copy output.mp3

保持原本编码格式:copy

画面截取

截取视频画面第5秒的画面

1
ffmpeg -i "input.mp4" -ss 5 -vframes 1 img.jpg

设置要编码多少帧:-vframes

视频打上水印(有点难。。。没实现)

在视频左上方添加水印

1
ffmpeg -i "input.mp4" -i img.jpg -filter_complex "overlay=20:20" out.mp4

视频转gif

1
ffmpeg -i "input.mp4" -ss 5 -to 20 -s 640x320 -r 15 out.gif

[toc]

Hexo搭建的博客内部文章怎么跳转

Hexo博客的站内跳转方法:

如果站内有文章名为Hello-World.md的博客,则写法为:

1
{% post_link Hello-World %}

这里以我的版本切换工具篇.md博客作为跳转

版本切换工具篇

image-20230714004330105

渲染后则出现超链接

image-20230714004446117

点击则跳转站内文章

image-20230714004520461

从今天起,博客文章迎来大变局,从前像Manjaro-生存手册那样一篇博客14K字数的长篇大论的文章会大大减小。取而代之的会是各种模块的文章以超链接形式穿插其中

Hexo博客中提供下载文件功能

在这个数据时代,一个出色的博客不仅仅提供代码的复制和图片的展示,还应该提供文件的下载,这里将以超链接的形式将保存的文件,如:(txt、html)嵌入博客,以提供更好的学习需求。

在对应的博客文件夹里面放入文件,然后渲染博客文章

image-20230714101346750

记住该博客的日期date2023-03-17

image-20230714101031912

hexo g命令渲染博客文章,然后找到博客文件夹下的public找到2023 03 17python爬虫和数据分析可以看出文件都被渲染出来了,那么只需在对应的python爬虫和数据分析.md博客里面写好链接即可。

image-20230714101307648

只需要把文件丢对应的博客文件夹里,然后在博客文件里面写

1
[需要的下载文件名字](需要的下载文件名字)

image-20230714100610511

image-20230714102806646

点击即可完成跳转

image-20230714102935758

写好的html文件也是这样跳转