电视连续剧 ffmpeg 批量去掉片头片尾

思路:

一、用python获取每集的总时长

二、把每集的时间,拼接成想要的ffmpeg的剪切命令命令。

1、用python获取每集的总时长

        1,安装moviepy库,直接安装太慢,换成国内的源
pip install moviepy -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
import os.path

from moviepy.editor import VideoFileClip

def get_file_names(path):
    return [os.path.join(path, f) for f in os.listdir(path) if f.endswith('.ts')]


if __name__ == '__main__':
    l = get_file_names("D:\\3misc\\2debugProj\\movie\\")
    print(l)

    for f in l:
        #print(f)
        clip = VideoFileClip(f)
        #计算视频的时长,单位为分钟
        print(f, round(clip.duration / 60, 0))
        clip.close()

2、把每集的时间,拼接成想要的ffmpeg的剪切命令命令。

        1、ffmpeg的剪切命令格式如下:

        把aaa.mp4,保留从第xx秒开始,到第xx秒结束这个区间的内容。以下两种方式,都可以

    ffmpeg -ss 5 -to 15 -i aaa.mp4 -c copy output.mp4

    ffmpeg -ss  00:01.20 -to 48:56.0 -i aaa.mp4 -c copy output.mp4

       2、用excle拼接成具体的命令
       3、把所有拼接的内容放到bat脚本中,然后运行这个脚本

3、扩充

0.5倍,音视频同步慢放

ffmpeg -i a.mp4 -filter_complex "[0:v]setpts=2*PTS[v];[0:a]atempo=0.5[a]" -map "[v]" -map "[a]" out11.mp4

2倍,音视频同步快放

ffmpeg -i a.mp4 -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2[a]" -map "[v]" -map "[a]" out11.mp4

音视频合并

ffmpeg -i a.mp4 -i a.mp3 -c:v copy -c:a aac -strict experimental out.mp4 

如果视频拥有多条独立音轨,分别提取。比如MV,伴奏、原声 

ffmpeg -i a.mkv -map 0:1 -b:a 128k -f mp3 -vn a.1.mp3   

ffmpeg -i a.mkv -map 0:2 -b:a 128k -f mp3 -vn a.2.mp3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
批量片头片尾batffmpeg是一种使用bat脚本和FFmpeg命令来实现批量去除视频片头片尾的方法。 首先,需要安装好FFmpeg软件,并将其路径添加到系统环境变量中,以便能够在命令行中直接使用FFmpeg命令。 接着,可以创建一个bat脚本文件,并使用文本编辑器打开它。在脚本文件中,可以使用for循环遍历存放待处理视频文件的文件夹,并逐个处理视频文件。 在每个视频文件的处理过程中,可以使用FFmpeg命令来去除片头片尾。对于片头,可以使用命令"ffmpeg -ss [片头时长] -i [输入文件路径] -c copy [输出文件路径]",这样可以截取掉片头部分,并将剩余的视频内容保存为一个新的文件。对于片尾,可以使用命令"ffmpeg -i [输入文件路径] -c copy -t [总时长-片尾时长] [输出文件路径]",这样可以截取掉片尾部分。 在完成去除片头片尾的处理之后,可以将处理后的视频文件保存到一个新的文件夹中,或者直接覆盖原始视频文件。 最后,保存并运行bat脚本文件。脚本会自动遍历待处理视频文件夹中的所有视频文件,并按照设定的规则去除片头片尾,从而实现批量处理的效果。 需要注意的是,由于视频文件的格式和编码不同,可能需要调整FFmpeg命令的参数来适应不同的视频文件。此外,对于批量处理大量视频文件时,可能需要考虑使用多线程或并行处理来提高处理速度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值