string path = "X:/...Life.mp3";//mp3文件,文件路径 string url = string.Format("file://{0}", path); WWW www = new WWW(url); yield return www; Source.clip = NAudioPlayer.FromMp3Data(www.bytes); Source.Play(); }//Load an External MP3 File (not in Assets folder)

参考资料:

1. Unity3D动态读取外部MP3文件给AudioSource

2. Unity3D动态读取外部MP3文件给AudioSource

3. Unity AudioSource加载本地.mp3文件/UnityWebRequest

音频文件太多,在本地读取.mp3文件并且进行播放。参考资料1通过把要播放的.mp3文件转换为.wav文件进行播放。1MB的.mp3文件转换为11MB的.wav文件,文件会变大。直接通过NAudio.dll的数据流进行转换。using System.Collections;using System.IO;using NAudio.Wave;using UnityEngine;public class MusicLoad : MonoBehaviour{ ...
由于目前做的项目是发布在 Android 平台的,所以遇到了还蛮多的关于 Android 方面的问题的。 最近遇到一个问题,就是需要在程序中 读取 并播放外部(本地存储)的 wav 音频。 此问题已解决,现将解决方法整理分享如下。 解决方法: 1. 用 WWW 来加载本地的 wav 文件, 然后将 wav 文件加载为 AudioClip。 private AudioSourc...
Unity 外部动态 读取 声音的文件,他只支持wav,ogg格式的。但是由于客户要求要直接放 MP3 文件,最后终于在网上找到了一个dll库。有人封装的NAudio.dll,可以将 mp3 转换成wav,直接下载一个Naudio.dll。 private IEnumerator LoadMusic(string filepath, string savepath)//filepath: mp3 的路径,save
Unity 3D PC 平台本身是支持直接用www 读取 本地ogg,wav的,但是并不能 读取 byte[],字节数组格式,这对用习惯了bass,fmod的人来说有点不方便。 搜了一圈发现了一个C#的音频库叫NAudio,开源并且免费。 https://archive.codeplex.com/?p=naudio https://github.com/naudio/NAudio 简单粗暴的搞一份二进...
看到网上对本地 MP3 文件的 读取 多采用WWW加NAudio的方式。其中NAudio将 MP3 文件转为wav,再由WWW将wav文件加载为 unity 的AudioClip。 这里这么做的原因是WWW不支持 MP3 格式。这种做法较为陈旧。 unity 新版的 Unity WebRequestMultimedia已经支持了 MP3 格式。用法如下 private IEnumerator LoadMusic(str...
private List<AudioClip> audioClips;//存储音乐音频 private string paht = @"D:\CloudMusic";//存储音乐的本地文件夹 void Start()
一、Fragment 概述 Fragment 是从 Android 3.0 开始引入的,翻译过来就是碎片的意思。Fragment 的作用以及使用场景我就不赘述了,我们直接来看 Fragment 是如何使用的。 一、Fragment 的创建 要使用 Fragment,可以通过继承 Fragment 类来创建 Fragment,在多数情况下我们需要给 Fragment 定制一个 UI,但是,也可以为 Activity 创建一个没有 UI,只提供后台行为的 Fragment。Fragment 的创建一般有两种
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:backgroun...
unity 录音长度时提前设置的并且结束录音后大文件大小也是预设大小,保存文件的话就会有许多无效字节,这里提供一种方法截取真正的AudioClip大小。需要注意的是先调用获取真实大小录音的方法再调用Microphone.End(null);结束录音。 public AudioClip RecordedClip; void 开始录音(){ RecordedClip = Microphone.Start(null, false, 60, 1600); void 停止录音(){ byte[].
string filePath = Application.dataPath + "/file.txt"; string fileContent = File.ReadAllText(filePath); 在这个例子中,我们使用 `Application.dataPath` 获取到数据目录的路径,然后拼接文件名。最后,我们使用 `File.ReadAllText` 读取 文件内容,并将其存储在 `fileContent` 变量中。 注意:如果您试图 读取 文件夹外的文件,可能会遇到安全问题,并且可能无法 读取 。因此,如果要 读取 的文件不在 Unity 项目的数据目录中,您可能需要使用其他方法(例如,使用 Unity 的文件选择对话框让用户选择文件)。 [Unity][AssetStore][PacakageManager]2020.1版本后的AssetStore如何下载资源并导入编辑器以及Error refreshing packages解决办法 Lavender0910: 问题解决了,2021版本的,关闭防火墙并重新登陆就可以了,感谢! [Unity][UGUI]获得鼠标对应屏幕的坐标,图片跟随鼠标移动 sJx?: 通过在inspector中直接设置中心点位置,可以直接将鼠标位置坐标赋值给position,而不需要对中心点和锚点相对位置进行计算。go.GetComponent<RectTransform>().position = new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0); [Unity][Shader][特效]视野可视化Field of view visualisation (E03: stencil shader)战争迷雾War of fog programmer_ada: 现代游戏开发,有哪些常见的开发框架?