python使用ffmpeg批量将flv转mp4

体积小

如果需要体积比较小,可以将h265格式的mp4封装。60M转为40M,花了583.61s,太慢了。

#
# ffmpeg -i test.flv -c:v libx265 -c:a copy -crf 20 test.mp4

把coderStr 的值改成下面这个。

 coderStr = " -c:v libx265 -c:a copy -crf 20 "

速度快

如果需要速度快,直接复制原数据。速度最快。体积没多大变化。

# ffmpeg -i test.flv -vcodec copy -acodec copy test3.mp4

脚本

用命令行批量转时,遇到了一些文件名含空格出错的事情。所以,这里通过python循环来批量执行命令。
脚本如下

import os
from os import path as mpath
import timedef ffmpeg_updatefile(path ,coderStr ,oldFormat ,newFormat ):# 获取文件路径,获取文件名称列表source = mpath.normpath(path)videoList = os.listdir(source)videoListTemp = [];# 只选择目录下的mkv文件for Sname in videoList:if Sname.endswith(oldFormat):videoListTemp.append(Sname)# 执行ffmpeg命令for i in videoListTemp:oldname = ioldname = os.path.join(path,oldname)output  = i[0:-4]newname = output + newFormatnewname = os.path.join(path,newname)otherStr = " "cmd = "ffmpeg -i "+ otherStr +"\""+ oldname +"\" "+ coderStr +" \""+ newname + "\""#os.system(cmd)#time.sleep(12)print(cmd)passif __name__ == '__main__':#path = r'F:\result\video2'#当前目录path = os.getcwd()oldFormat = '.flv'newFormat = '.mp4'coderStr = " -vcodec copy -acodec copy "ffmpeg_updatefile(path,coderStr,oldFormat,newFormat)   

ffmpeg常用命令

ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件] 参数选项:
(1) -an: 去掉音频
(2) -vn: 去掉视频
(3) -acodec: 设定音频的编码器,未设定时则使用与输入流相同的编解码器。音频解复用在一般后面加copy表示拷贝
(4) -vcodec: 设定视频的编码器,未设定时则使用与输入流相同的编解码器,视频解复用一般后面加copy表示拷贝
(5) –f: 输出格式(视频转码)
(6) -bf: B帧数目控制
(7) -g: 关键帧间隔控制(视频跳转需要关键帧)
(8) -s: 设定画面的宽和高,分辨率控制(352*278)
(9) -i:  设定输入流
(10) -ss: 指定开始时间(0:0:05)
(11) -t: 指定持续时间(0:05)
(12) -b: 设定视频流量,默认是200Kbit/s
(13) -aspect: 设定画面的比例
(14) -ar: 设定音频采样率
(15) -ac: 设定声音的Channel数
(16)  -r: 提取图像频率(用于视频截图)
(17) -c:v:  输出视频格式
(18) -c:a:  输出音频格式
(18) -y:  输出时覆盖输出目录已存在的同名文件-vcoder 设定视频的编码器,未设定时则使用与输入流相同的编解码器

参考资料

ffmpeg常用命令

python使用ffmpeg批量将flv转mp4相关推荐

  1. python爬虫+ffmpeg批量下载ts文件,解密合并成mp4

    标题 python爬虫+ffmpeg批量下载ts文件,解密合并成mp4 文章目录 标题 前言 一.分析目标 二.寻找url规律 三.写代码 总结 前言 (第一次写博客,写的不好请见谅哈~~) 目标是大 ...

  2. 基于Python使用ffmpeg批量缩放图片

    基于Python使用ffmpeg批量缩放图片 一.前言 ​ 笔者因为项目原因或者个人撰文需要,经常要写大量技术文档,文档中通常需要配图,但配图就有一个比较讨厌的问题:截图大小不一,宽度通常要手动调整, ...

  3. 用python和ffmpeg批量合成bilibili缓存的m4s成mp4

    我的目录格式是这样的 所以直接脚本处理一下就好了 ffmpeg安装:https://ffmpeg.zeranoe.com/builds/win64/static/ 直接去上面链接里找一个下载解压 哪个 ...

  4. Python使用ffmpeg批量去水印

    一.安装模块 1.Windows安装ffmpeg ffmpeg官网 下载完了是一个压缩包解压,把bin目录加入环境变量 2.Linux系统安装ffmpeg sudo add-apt-repositor ...

  5. ffmpeg批量转换mpg为mp4

    1.新建一个txt文件,并复制如下代码进入,然后保存. @echo off & titlecd /d %~dp0md resultfor %%a in (*.mpg) do (ffmpeg - ...

  6. ffmpeg批量转换avi为mp4

    1.新建一个txt文件,并复制如下代码进入,然后保存. @echo off & titlecd /d %~dp0md resultfor %%a in (*.avi) do (ffmpeg - ...

  7. html5 mp4转换ogv格式,FFmpeg 批量转换HTML5视频(mp4/webm/ogv)

    现在Html5也逐渐普及了,设备对于mp4/webm/ogv的支持也逐渐广泛,但是Html5视频的转换软件却不是太多,这个Ffmpeg确实不错.而且功能也强大. REM "H.264 / A ...

  8. Win10 使用python和ffmpeg批量合并音视频

    将m4a文件和mp4文件合并为MP4 具体代码如下 import os,sys import io import subprocess #在vscode运行时输出内容含中文不乱码,其他软件运行未知 s ...

  9. 使用 FFmpeg 批量转换视频格式 mp4转ts(bat命令行)

    第一步:官网下载 FFmpeg 打开 http://ffmpeg.org/ 点 download 按钮,找到自己的系统对应格式(比如我的Windows 64位下载之后是个压缩包ffmpeg-20181 ...

  10. ffmpeg flv转MP4 一点心得

    在使用ffmpeg转码的过程中,由于我的flv文件使用的视频编码是h264,音频是aac,所以转码的过程中flv->mp4,仅仅是容器改变了,编码方式几乎没有变化 ffmpeg -i input ...

最新文章

  1. asp.net MVC3 无法打开项目文件“E:\我们的项目\Project\HeatingMIS.Web\HeatingMIS.Web.csproj”。此安装不支持该项目类型。...
  2. 老李分享:Web Services 组件 2
  3. mysql如何进行压测_详解MySQL如何按表创建千万级的压测数据
  4. 按键精灵 getcursorpos没有用_给你们想要的一键输出II按键精灵脚本开发教程
  5. Vue + Element UI 实现权限管理系统 前端篇(八):管理应用状态
  6. oracle虚拟机导入表,在Linux虚拟机上安装Oracle数据库超完整版!)
  7. android快速打包工具下载,【Android】多渠道打包,其实可以更快
  8. java-web前端 javascript
  9. html获取此次点击的id,github项目解析(八)--Activity启动过程中获取组件宽高的三种方式...
  10. piblog 0.1
  11. POJ 2590 Steps (ZOJ 1871)
  12. springBoot整合redis使用介绍(详细案例)
  13. ATmega328p使用硬件SPI与模拟SPI驱动74HC595,protues仿真
  14. 【渝粤教育】 国家开放大学2020年春季 1054流通概论 参考试题
  15. 华为路由器怎么配置DNS?
  16. Filco圣手二代键盘蓝牙连接方法
  17. numpy_absolute函数
  18. OPCUA协议: 复杂服务器C语言初步实践(回调与方法)
  19. 曾仕强讲易经:元、亨、利、贞
  20. C# IDE SharpDevelop的一些缺陷

热门文章

  1. ireport 实现动态合并单元格
  2. glassfish基本使用
  3. 爬取豆瓣排名前100的电影
  4. 55-硅谷课堂1(项目概述+MyBatisPlus使用+搭建项目环境+开发讲师管理接口)
  5. EDGEX FOUNDRY配置参数 --- sys-mgmt-agent
  6. 格式化字符串漏洞例子(二)hijack GOT
  7. Linux 安装PostgreSql
  8. 数学建模(NO.7相关系数—假设检验)
  9. 进程调度时间计算方式
  10. 360浏览器打不开html5文件,为什么电脑总是打不开360浏览器