audiotools.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:kur 作者: deepgram 项目源码 文件源码
def load_pydub(filename):
    """ Loads an MP3 or FLAC file.
    """
    try:
        from pydub import AudioSegment
        data = AudioSegment.from_file(filename)
    except ImportError:
        logger.exception('"pydub" is a required Python dependency for '
            'handling this audio file: %s.', filename)
        raise
    except FileNotFoundError:
        if os.path.isfile(filename):
            raise DependencyError()
        else:
            raise

    if data.channels > 1:
        data = functools.reduce(
            lambda x, y: x.overlay(y),
            data.split_to_mono()
        )

    raw = data.get_array_of_samples()
    raw = numpy.frombuffer(raw, dtype=raw.typecode)

    return {
        'signal' : raw,
        'sample_rate' : data.frame_rate,
        'sample_width' : data.sample_width * 8,
        'channels' : data.channels
    }

###############################################################################
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号