星辰儿啊 2024-04-18 09:44 采纳率: 43.1%
浏览 8

llinux系统中的报错问题

语言:python
问题:我想将mp3文件转为pcm格式,
代码如下:

audio = AudioSegment.from_mp3(os.path.join(model_name_or_path, "statics/voice_file/voice.mp3"))

系统为centos7.9,现在走到这一步会报错,
报错如下:

  warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)

辛苦帮我看一下,linux系统上不行,我本地mac电脑上也跑不了,求解决方案!

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-18 09:44
    关注

    引自免费微信小程序:皆我百晓生

    看起来你在尝试使用pydub库将MP3文件转换为PCM格式,但在运行时遇到了警告。这个警告表明你的系统可能没有正确安装FFmpeg(ffprobe是其一部分)或者avprobe,这两个工具通常用于处理音频和视频文件。

    为了解决这个问题,你需要确保你的系统上安装了FFmpeg。在CentOS 7上,可以按照以下步骤安装FFmpeg:

    1. 打开终端。

    2. 安装依赖包:

      sudo yum install epel-release -y
      
    3. 添加多媒体存储库:

      sudo yum-config-manager --add-repo http://download1.rpmfusion.org/free/el7/top/rpmfusion-free-release-7.noarch.rpm
      sudo yum-config-manager --add-repo http://download1.rpmfusion.org/nonfree/el7/top/rpmfusion-nonfree-release-7.noarch.rpm
      
    4. 更新并安装FFmpeg:

      sudo yum update -y
      sudo yum install ffmpeg -y
      
    5. 验证安装:

      ffmpeg -version
      

    完成上述步骤后,你应该可以在Linux系统上使用ffprobe,从而避免警告。然后再次运行你的Python代码,它应该能正常工作。

    对于Mac电脑,你可以通过Homebrew进行安装。首先确保已经安装了Homebrew,如果没有,可以通过在终端执行以下命令来安装:

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/main/install.sh)"
    

    然后安装FFmpeg:

    brew install ffmpeg
    

    同样地,在Mac上验证安装:

    ffmpeg -version
    

    之后,再次运行你的Python代码,也应该能正常工作。

    如果你仍然遇到问题,可能是由于pydub库的问题。你可以尝试更新到最新版本,或者使用其他库,例如soundfile来实现同样的功能。这是一个使用soundfile的示例:

    from pydub import AudioSegment
    import soundfile as sf
    
    # 使用pydub读取mp3文件
    audio = AudioSegment.from_mp3(os.path.join(model_name_or_path, "statics/voice_file/voice.mp3"))
    
    # 将音频数据提取出来
    data = audio.get_array_of_samples()
    frame_rate = audio.frame_rate
    
    # 使用soundfile写入pcm文件
    sf.write('output.pcm', data, frame_rate, 'PCM_16')
    

    这段代码将从MP3文件中提取数据,并将其保存为pcm格式的文件。注意,这里我们使用的是16位的pcm格式,你可以根据需要调整。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月18日

悬赏问题

  • ¥15 远程访问linux主机超时
  • ¥15 odoo17存货管理优势于中国国内该行业传统ERP或MES的详细解读和举例
  • ¥15 CPU卡指令整合指令数据都在图片上
  • ¥15 火车票关联12306问题
  • ¥15 odoo17处理受托加工产品
  • ¥15 如何用MATLAB编码图三的积分
  • ¥15 圆孔衍射光强随孔径变化
  • ¥15 MacBook pro m3max上用vscode运行c语言没有反应
  • ¥15 ESP-PROG配置错误,ALL ONES
  • ¥15 结构功能耦合指标计算