【问题标题】:Splitting 15-hour-long audio file into one-hour long files将 15 小时长的音频文件拆分为 1 小时长的文件
【发布时间】:2020-11-02 14:08:35
【问题描述】:

我正在尝试将 15 小时长的有声读物拆分为更短的 1 小时长 .mp3 文件。这是我为此制作的功能:

from pydub import AudioSegment
import re, os, math

def process(fname, title):
    
    head_dir = title + ' (split)'
    if head_dir not in os.listdir():
        os.mkdir(head_dir)
    
    book = AudioSegment.from_file(fname)
    seconds = book.duration_seconds
    iters = math.ceil(seconds / 3600)
    
    one_hour = 3600_000
    thirty_sec = 30_000
    left_off = 0
    
    for i in range(1,iters+1):
        
        last_iter = i == iters
        
        if not last_iter:
            segment = book[left_off:one_hour+thirty_sec].fade_in(1_500).fade_out(3_000)
            left_off += one_hour
            
        else:
            segment = book[left_off:].fade_in(1_500)
            
        segment.export(f'{head_dir}/{i:02d}.mp3')

我已经用一个大约一个半小时长的文件进行了尝试,它成功了,将它分成一个小时长的文件和一个三十分钟长的文件,大约需要 5-6 分钟。但是用 15 小时长的文件运行它是行不通的。它似乎永远持续下去。

我可以使用其他库来完成这项任务吗?

【问题讨论】:

标签: python audio pydub


【解决方案1】:

如果有帮助,您可以使用名为 LightWorks 的工具上传您的音频,然后分成 60 分钟的间隔。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 2020-06-29
    • 2021-03-09
    • 1970-01-01
    • 2018-03-19
    相关资源
    最近更新 更多