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

news2024/9/23 5:35:30

【日期】

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);
}

文章小尾巴

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/67581.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker部署项目

文章目录前言一、下载安装docker:1.前提工作1.1 查看linux版本1.2 yum包更新到最新1.3 安装工具包1.4 设置yum源并更新yum包索引2.安装docker2.1 安装docker-ce2.2 启动docker2.3 查看已安装docker版本2.4 设置docker开机自启动2.5 配置镜像加速3.docker常用命令二、…

思科模拟器 | 交换机的vlan配置和truck配置

vlan 与 truck一、vlan配置【实现同一vlan的主机通信】1、基本配置和接线2、vlan配置与端口连接3、测试连接二、truck配置【实现连接在不同交换机上的同一vlan的主机通信】1、基本配置和接线2、vlan配置与端口连接3、打truck做连接3、测试连接一、vlan配置【实现同一vlan的主机…

vue Pinia 全局主题切换

文章目录vue Pinia 全局主题切换基本环境结果展示过程解析vue Pinia 全局主题切换 目的 : 实现单页面上切换主题,例如 关灯或开灯; 环境: vue3.0 vite Pinia 基本环境 // tsconfig.json 文件中 新增路径配置 导入自定义文件时可以之间导入 {"compilerOptions": {&…

Java多态

Java多态\color{black}{\huge{Java多态}}Java多态 多态 1. 什么是多态? 多态:同种类型的对象,执行同一个任务,会表现出不同的行为特征,这就是多态(这种解释顶级抽象) 再细致一点说多态就是为不同的数据类型提供了同…

RK3399平台开发系列讲解(内存篇)ARM64虚拟地址空间布局

🚀返回专栏总目录 文章目录 一、虚拟地址空间划分二、用户虚拟地址空间布局三、内核地址空间布局沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇章让我们一起看一下ARM64虚拟地址空间的布局。 一、虚拟地址空间划分 因为目前应用程序没有那么大的内存需求,所…

知识点9--Docker容器的数据卷

我前面介绍容器命令的时候,最后说过一个cp命令,可以把容器和宿主机之间的文件互相拷贝,保证数据的持久化,但是这种持久化偏向于比较独立完整的文件,大家有没有想过如果遇到成体系的数据保存,比如我整个数据…

精彩数据:2021年我国民旅客周转量6530亿公里,审定受理飞机2803架

2021年是特殊的一年,全体民航成员在努力克服疫情防控、经营亏损、安全压力等困难交织叠加的影响下,切实的推动了民航的高质量发展,再各项工作上都取得了较好的成绩。下面是小编使用可视化互动平台对民航发展统计报告进行报表数据处理分析后得…

超市商城小程序开发,在线盈利途径

随着消费意识的提高和零售业的不断升级,小程序已经成为目前重要的线上发展形势之一且具有很强的发展活力,在此发展机遇下,很多企业开始布局线上渠道,进入电商行业。超市作为日常生活中最常见、数量最多的线下门店,当然…

[基因遗传算法]原理思想和python代码的结合理解之(一) :单变量

读《遗传算法的Python实现(通俗易懂)》佳文的思考与笔记整理. 我们拥有一个目标函数y10⋅sin(5x)7⋅cos(4x)y10 \cdot sin(5x)7\cdot cos(4x)y10⋅sin(5x)7⋅cos(4x) def aim(x):return 10*np.sin(5*x)7*np.cos(4*x)约束范围(这里是定义域):x∈[0,5]x \…

如何选择分度带(中央子午线)

如何选择分度带(中央子午线) 发布时间:2018-01-17 版权: 同步视频教程:如何选择中央子午线或者分度带 播放 什么是中央子午线? 什么是分度带? 【百度百科】 第一步:查看你所下载(或者要套合的范围)的图像的经纬…

盘点| 爆款小游戏的开发引擎

微信推出小游戏已有4年,期间不断涌现爆款。作为可以不用下载安装直接在线玩的小程序游戏,小游戏渐渐成为不少人的心头好。今天就来盘点一下那些爆款小游戏用到的游戏开发引擎: 一、Cocos 必须得把Cocos放在第一个讲,毕竟近期的羊了…

计量经济学

计量经济学 复习题 题型:选择2*10;填空2*10;名词解释4*5;综合题10*4 一 选择填空考点 1. 截面数据,时间序列,面板数据定义。P12/1.3.3 截面数据:同一时间(时期或时点)某个…

艾美捷胆固醇肉豆蔻酸酯说明书和相关研究

艾美捷胆固醇肉豆蔻酸酯以结晶固体形式提供。储备溶液可以通过将胆甾醇肉豆蔻酸酯溶解在所选溶剂中来制备。肉豆蔻酸胆甾醇可溶于有机溶剂氯丨仿,应使用惰性气体吹扫,浓度约为10mg/ml。 艾美捷胆固醇肉豆蔻酸酯基本参数: CAS#:19…

vue中使用图像编辑器tui-image-editor(一)

vue中使用图像编辑器tui-image-editor(一) 场景:需要对图片进行旋转、缩放、裁剪、涂鸦、标注、添加文本等。 效果-图1 1、基本介绍 官网:https://ui.toast.com/tui-image-editor 官方GitHub地址:https://github.com/nhn/tui.image-edito…

数据库设计

概述 数据库设计是一项十分复杂的操作,首先需要理清数据之间的关系,绘制ER图,接着根据ER图设计Relation Schema,最后添加字段属性和索引生成数据表。一个好的ER图是一个数据库的基础。 数据库设计的好坏中最重要的一项指标就是重…

完整版在xcode打测试专用ipa包流程​

前言:有时候,想要把自己的程序运行在别人的iphone手机上,但又不能通过本地真机调试的方法安装,这个时候我们就要打一个测试专用的ipa包给远方的测试小伙伴们测试。​ 步骤:​ 首先希望你的发布证书已经安装好了。​ 1.…

分布式文件存储系统FastDFS[2]-上传和下载文件工具类

一、文件上传流程 1 时序图 2 流程说明 客户端访问Tracker Tracker 返回Storage的ip和端口 客户端直接访问Storage&#xff0c;把文件内容和元数据发送过去。 Storage返回文件存储id。包含了组名和文件名 1 添加依赖 <dependencies><dependency><groupId&g…

基于jsp+mysql+ssm峰值预警停车场管理系统-计算机毕业设计

项目介绍 随着城市建设与经济的不断发展,城市车辆的数量也不断增涨,为解决停车问题修建停车场。基于经营、安全、管理等多角度的考虑&#xff0c;希望在目前传统的大型车库管理系统中有机地结合车牌识别技术&#xff0c;以求得日后在停车库运营时更安全、管理上更细致、经营中…

13个小众有趣的网站,只有程序员才看得懂

欢迎来到程序员的世界&#xff0c;分享一些关于程序员的小众网站&#xff0c;不仅干货满满的实用类网站&#xff0c;也有一些有趣的娱乐网站&#xff0c;有些网站只有程序员才看得懂。1、程序员音乐 地址&#xff1a;https://musicforprogramming.net/ 一个仿代码样式的背景音乐…

使用JAR签名进行代码签名

JavaArchive(JAR)包格式可用于打包Java应用程序和库。 签名的JAR文件可以选择包含来自TSA时间戳响应&#xff0c;使用RFC#3161格式。 添加JAR签名者添加JAR签名者的链接&#xff0c;SignServer中的JAR签名器称为JArchiveSigner。 要配置JArchiveSigner&#xff0c;请按照以下…