-1

我从服务器下载了 .mp3 文件并将其存储在我的 android persistentDataPath 中。但我不知道如何将 .mp3 文件连接到 AudioClip。请让我知道是否有解决方法。

4

1 回答 1

0

更新

正如评论中指出的那样,WWW现在支持 .mp3 文件使其成为可行的方法。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public string url;
    public AudioSource source;
    void Start() {
        WWW www = new WWW(url);
        source = GetComponent<AudioSource>();
        source.clip = www.audioClip;
    }
    void Update() {
        if (!source.isPlaying && source.clip.isReadyToPlay)
            source.Play();

    }
}

原答案:

音频剪辑不接受文件。它接受一个浮点数组。

您可以使用NAudio将压缩的 MP3 转换为 WAV 文件。

using NAudio;
using NAudio.Wave;
// ....

using (Mp3FileReader reader = new Mp3FileReader(mp3File))
{
    WaveFileWriter.CreateWaveFile(outputFile, reader);
}

然后,您将需要读取波形文件,该文件基本上有一个标题,后面是块数据。块数据可以转换为浮点数并发送到您的音频剪辑。

于 2017-07-06T01:20:19.653 回答