python基于ffmpeg转换m4a为MP3


#!/usr/bin/python3
# _*_coding:utf-8 _*_

# @Time        :2021/4/11 19:38
# @Author    :jory.d
# @File        :m4a_to_mp3.py
# @Software    :PyCharm


"""
不能在pycharm里run, 只能在 cmd等终端里  python m4a_to_mp3.py
"""

import os
import os.path as osp
import glob
import re

ffmpeg_tool = "I:/ffmpeg/ffmpeg-4.1-win64-static/bin"


def func1():
    """
    把文件名的特殊字符去掉
    :return:
    """
    m4a_path = "H:/spider_download/qqmusic-20210411"
    for f in glob.glob(f'{m4a_path}/*.m4a'):
        fname = osp.basename(f)
        fname = re.findall(r'[^\*"/:?\\|<>]', fname, re.S)
        fname = "".join(fname)
        new_filepath = f'{osp.dirname(f)}/{fname}'
        print(f)
        print(new_filepath)
        os.rename(f, new_filepath)


def func2():
    '''
    m4a ---> mp3
    :return:
    '''
    m4a_path = "H:/spider_download/qqmusic-20210411"
    mp3_path = 'H:/spider_download/qqmusic-20210411-mp3'
    for f in glob.glob(f'{m4a_path}/*.m4a'):
        fname = osp.basename(f)
        mp3_filepath = f'{mp3_path}/{fname[:-4]}.mp3'
        os.makedirs(osp.dirname(mp3_filepath), exist_ok=True)
        print(mp3_filepath)
        cmd = f'{ffmpeg_tool}/ffmpeg -i {f} {mp3_filepath}'
        os.system(cmd)
        print(f'{fname} is converted.')

    print('Done.')


if __name__ == '__main__':
    # func1()
    func2()

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM