跳转至

Python 使用FFmpeg操作mp4

更新日期 2019-10-09
  • 2019-10-09 创建文档

使用FFmpeg

FFmpeg是一套可以用来记录、处理数字音频、视频,并将其转换为流的开源框架,采用LPL或GPL许可证,提供了录制、转换以及流化音视频的完整解决方案。

首先得了解FFmpeg的用法。

ffmpeg -i red.mkv -f flac -vn red.flac

如果音频(视频)比字幕快(或慢),则在裁剪的时候统一加上或减去一个时间差。

FFmpeg

PyCharm 报错 'ffmpeg' 不是内部或外部命令,也不是可运行的程序

虚拟环境中需要找到FFmpeg的绝对路径

ffmpeg_bin = 'E:/ffmpeg-20191019-31aafda-win64-static/bin/ffmpeg'
subprocess.call(get_mp3_cmd, shell=True)

Python

python 读取文件时报错 UnicodeDecodeError: 'gbk' codec can't decode

错误UnicodeEncodeError: ‘gbk' codec can't encode character ‘\xa0' in position

在网上一查,发现是 Windows 的控制台的问题。控制台的编码是 GBK,Python 是 UTF-8,造成了冲突。

第一种方法:直接替换出错的内容

import requests 
url = 'https://blog.csdn.net/jianhong1990/article/details/17349537'
print(requests.get(url).text.replace('\xa0', ' '))

第二种方法:再解码

先用 GBK 编码,加个 ignore 丢弃错误的字符,然后再解码。

import requests
url = 'https://blog.csdn.net/jianhong1990/article/details/17349537'
print(requests.get(url).text.encode('gbk', 'ignore').decode('gbk'))

int与string之间的转化

str转成数字

ms = int(ms)

数字转成str

补零

'{:0>2d}'.format(1)  # output 01

获取当前时间

import time

time.time() # 格式化时间戳为标准格式
print(time.strftime('%Y%m%d-%H%M%S', time.localtime(time.time())))

# 获取30天前的时间(通过加减秒数来获取现在或者未来某个时间点)
print time.strftime('%Y.%m.%d',time.localtime(time.time()-2592000))

参考

  • http://www.zimuku.la/detail/123853.html
  • http://assrt.net/
本站说明

一起在知识的海洋里呛水吧。广告内容与本站无关。如果喜欢本站内容,欢迎投喂作者,谢谢支持服务器。如有疑问和建议,欢迎在下方评论~

📖AndroidTutorial 📚AndroidTutorial 🙋反馈问题 🔥最近更新 🍪投喂作者

Ads