ffmpeg提取视频文件音频流和视频流

       下面代码主要实现利用python调用FFmpeg来实现对视频文件中的音频流和视频流的批量提取和保存,以及视频格式的转换。

实现环境为Ubuntu环境下 python3.6.5。

# coding=UTF-8
import os, sys
import subprocess
from scipy.io import wavfile

def ffmpeg_VideoToAudio(VideoPath):
    files = os.listdir(VideoPath)
    # files_list存放的为所有视频文件的文件名+路径
    files_list = [VideoPath + f for f in files if f.endswith(('.avi','.mp4'))]
    for file in files_list:
        wavName=os.path.splitext(file)[0]
        wavNameNew=wavName+'_Changed'
        # 提取视频中的音频信息
        strcmd="ffmpeg -i " + file + " -f wav " + wavNameNew + ".wav"+ " -y"
        subprocess.call(strcmd,shell=True)
        # 提取视频中的视频信息
        strcmd2="ffmpeg -i " + file + " -vcodec copy -an -r 25 " + wavNameNew + ".avi"+ " -y"
        subprocess.call(strcmd2,shell=True)

VideoPath='./'
ffmpeg_VideoToAudio(VideoPath)

    在Ubuntu环境下,也可以直接使用下面代码直接提取视频流中的音频信息。

ffmpeg -i 你的视频文件名 -f wav 你要保存的文件名.wav -y

若要直接提取视频流中的视频信息,则可以:

ffmpeg -i 你的视频文件名 -vcodec copy -an -r 你要保存的帧率 你要保存的文件名 -y

 如有问题请指出。

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值