主题: FFmpeg小记 (DCMS资源区/编程开发) TommyBay (2023 05 02 14:17) [b]1. 视频转码[/b] [i]前言:假如在那个Nokia 5530的时代有这个论坛,那么,将从B站下载的视频转码成640x480的MP4文件、甚至是144P的3GP文件就尤为必要(后者能方便那些真正的老人机来播放)。[/i] 1.1 FFmpeg没有直接转码的命令,用户只是指定了新视频的分辨率、码率、帧率等参数罢了。 1.2 -i 参数 这是一个可以指定原视频路径的参数,可以让FFmpeg知道原视频在哪。默认情况下是相对路径,但只需要使用英文引号括起来,就可以指定绝对路径,并且允许中文。 示例:[blue]-i "D:/视频下载/输入的视频文件.mp4"[/blue] 1.3 -s 参数 这个参数指定了新视频的尺寸(size)。 示例:[blue]-s 256x144[/blue] 1.4 -b 参数 这个参数指定了新视频的比特率(bitrate),俗称码率。 此外,可以用-minrate -maxrate分别指定最大、最小码率(跟可变码率VBR有关)。 示例:[blue]-b 256k -minrate 128k -maxrate 256k[/blue] TommyBay (2023 05 02 14:18) 1.5 -c 参数 这个参数指定了新视频的视频编码(codec)。 [i]然而我不是很懂冒号代表了什么。[/i] 示例:[blue]-c:v mpeg4[/blue] 1.6 -ar 参数 这个参数指定了新视频的音频的采样率。由于我们要转码成3gp格式,因此必须指定其值为8000。 a开头的参数似乎都是跟音频有关的。 示例:[blue]-ar 8000[/blue] 1.7 -ac 参数 这个参数指定了新视频的音频的声道数。。由于我们要转码成3gp格式,因此必须指定其值为1,即单声道。 示例:[blue]-ac 1[/blue] 1.8 总结出一条命令 [blue]ffmpeg -i "D:/视频下载/星铁抽卡列车脱轨实录.mp4" -s 256x144 -b 256k -minrate 128k -maxrate 256k -c:v mpeg4 -ac 1 -ar 8000 "E:/转码结果/老人机专用视频.3gp"[/blue] 参考文献:[url=https://ffmpeg.org/ffmpeg.html#Video-and-Audio-file-format-conversion]Conversion[/url] TommyBay (2023 05 02 15:44) AGOMG, 对,小尺寸视频还是很适合小窗广告的,比如说油管就还保留着240p甚至144p的规格,我认为很大程度上是为了方便投放广告 Zlle008 (2023 05 02 15:53) TommyBay, 你会翻墙? TommyBay (2023 05 02 15:56) homo170648, 什么翻墙不翻墙,我当然不会了,我会的是代理 TommyBay (2023 05 02 16:07) [b]2. 视频截取[/b] [i]前言:录制完游戏录像之后,需要把其中最重要的一小部分截取出来,可以使用已有的一些工具,比如视频剪辑软件等;但是FFmpeg可以直接截取出来,只需要一条命令即可。[/i] (注2:这段我也不太懂,只知道怎么用) 2.1 -i 参数 指定了原视频路径,在第1.2节有介绍到。 2.2 -ss 参数 是一个hh:mm:ss的时间格式,指定了截取片段的起点。 2.3 -t 参数 也是一个hh:mm:ss的时间格式,指定了截取片段的持续时长。 TommyBay (2023 05 02 16:08) 2.4 -vcodec 和 -acodec 参数 不太懂,应该是指定了视频和音频部分的编码格式。用copy作为它们的值,意思是保持不变。 示例:[blue]-vcodec copy -acodec copy[/blue] 2.5 总结出一条命令: 下面命令意为:从原视频的12分34秒处,开始截取时长为15秒的片段。 [blue]ffmpeg -i "D:视频录制刚刚的游戏录像.mp4" -ss 00:12:34 -t 00:00:15 -vcodec copy -acodec copy "E:短视频兔兔伯爵拿下百万核爆.mp4"[/blue] TommyBay (2023 05 02 16:15) [b]Tips 1. 也许不必下载FFmpeg[/b] 其实很多软件都自带了FFmpeg,你完全可以直接使用已有的。打个比方: [b]DownKyi[/b]是一个开源的B站视频下载工具,它可以解析视频链接,分别下载视频部分和音频部分,再用FFmpeg混流成完整的视频。 于是,DownKyi用户并不需要额外下载FFmpeg,他们只需要进入DownKyi程序目录里就能找到FFmpeg.exe及其附属组件。 DownKyi主页:[url=https://leiurayer.github.io/downkyi/]哔哩下载姬DownKyi[/url] DownKyi源码:[url=https://github.com/leiurayer/downkyi]GitHub[/url] AGOMG (2023 05 02 18:12) homo170648, 翻墙简单啊,搞个VPN就行,比较有名的有佛跳墙 GuGuan123 (2023 05 08 08:18) --报价-- TommyBay (2023 05 02 15:56): homo170648, 什么翻墙不翻墙,我当然不会了,我会的是代理 ---------- TommyBay, 所以能不能给个Clash for Linux的教程,机场也没有linux版的教程,最好是Ubuntu的 [ikundoge] GuGuan123 (2023 05 08 08:20) 我真不想再一次重装系统了... TommyBay (2023 07 30 17:15) 3. 音视频合并 前言:包括B站、油管在内的视频网站,一般会采取音频和视频分开存储、同时播放的策略。我不懂原因和作用,这里只记录如何合并。 ffmpeg -i "D:/B站视频下载缓存目录/video.mp4" -i "D:/B站视频下载缓存目录/audio.mp4" -c:v copy -c:a copy "D:/B站音视频合并导出.mp4" P.S. 反斜杠发不出来 来源: http://dcms.net.cn/forum/3/26/164/