• 【BUG日记】【Processing】NullPointerException,unable to decode sound file “xxx“


    【日期】

    2022/12/6

    【问题】

    报错:unable to decode sound file pig.mp3
    想进行操作的是读取本地的图片或者音频,都会出现这个问题。
    研究半天还一直以为是引入的 sound 库有问题。

    音频的 bug

    音频的 bug.png

    图片的 bug

    图片的 bug.png

    【原因】

    不知道什么原因,一直没法显示,或者为空。

    【如何发现】

    想给我的 pig 小 demo 项目添加音频的时候发现;在第一次使用读取本地图片的时候,也已经发现同是 png 类型格式的图片,有个图片就是不行。(肉眼可见

    【如何修复】

    读取出现的 bug修复途径(解决办法)
    图片 png 类型读取不出来可以使用软件进行重新保存 png 格式类型,或导出其他格式类型,如jpg、jpge、png等(我使用的是 pptx 进行重新保存为 png 格式)
    音频 mp3 类型 出现存在读取不到使用软件进行重新导出格式,或者换其他类型(如 wav、flac等其他类型,这里我是重新导出又失败,就选择是导出另外的 wav 格式的音频)

    【详细修改】

    图片 png 类型读取不出来(pptx 进行操作

    ① 找个随便找个地方(目录)新建一个 pptx,或者打开旧的 pptx(只要有 pptx 就行)。
    ② 图片拉入(拖入)到 pptx 里。
    ③ 右击进行导出,选择 png 格式

    图片 png 类型读取不出来(pptx 进行操作.png

    成功的效果

    图片 png 类型读取不出来(pptx 进行操作)成功的效果.png

    音频 mp3 类型读取不出来(格式工厂(pcfreetime.com))进行操作

    格式工厂官方(下载)地址:http://www.pcfreetime.com/formatfactory/CN/index.html

    音频 mp3 类型读取不出来-1.png 音频 mp3 类型读取不出来-2.png

    成功的效果

    音频 mp3 类型读取不出来,成功的效果.png

    【额外小知识】如何添加外来 sound 库

    ① 点击“速写本”
    ② 点击“引用库文件…”
    ③ 点击“Manage Libraries…”
    ④ 弹出的对话框中搜索 ‘sound’
    ⑤ 找到 “Sound | …”,点击
    ⑥ 点击右下角“Install”,进行安装
    ⑦ 安装成功,再次重复 ①和②,会发现有新出一个“Sound”库,再点击,会引入到代码中

    image.png

    【总结】

    Processing 面向图像编程,有问题还是挺难找到原因的。还是需要继续去探索,玩起来!

    主要需要注意的点:
    ① 注意 Processing 的提供的函数方法是否支持当前的音频、图片格式
    ② 尝试修改后缀来进行格式变化,不可行。

    【代码分享】

    // 引入新添的 “sound” 库(如何安装和引入可看 本文的额外小知识 )
    import processing.sound.*; 
    
    SoundFile song; // 音频
    void setup(){
      size(200, 200);
      song = new SoundFile(this,"pig.mp3"); // 路径
      song.loop();
      //song.play();
    }
    void draw() {
      background(255);
      //float volume = map(mouseX, 0, width, 0, 1);
      //song.amp(volume);
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    文章小尾巴

    文章写作、模板、文章小尾巴可参考:《写作“小心思”》

      感谢你看到最后,最后再说两点~
      ①如果你持有不同的看法,欢迎你在文章下方进行留言、评论。
      ②如果对你有帮助,或者你认可的话,欢迎给个小点赞,支持一下~
      我是南方者,一个热爱计算机更热爱祖国的南方人。

      (文章内容仅供学习参考,如有侵权,非常抱歉,请立即联系作者删除。)

  • 相关阅读:
    Python从零基础入门到精通:一个月就够了
    23062QTday1
    C++ 类和对象
    达摩院SPACE对话大模型:预训练语言模型,预训练对话模型,知识注入
    C++:写ini文件(附完整源码)
    ElasticSearch 搜索推荐
    【计算机毕业设计】旅游网站ssm源码
    [deeplearning]pytorch实现softmax多分类问题预测训练
    Informer--用于长序列时序预测【2021AAAI Best Paper】
    获取操作系统信息服务器信息JVM信息cpu内存磁盘信息
  • 原文地址:https://blog.csdn.net/qq_43263647/article/details/128213567