yasirkula / UnitySimpleFileBrowser

A uGUI based runtime file browser for Unity 3D (draggable and resizable)
MIT License
819 stars 111 forks source link

Audio Not Played on Android #20

Closed Nameless77 closed 3 years ago

Nameless77 commented 4 years ago

first of all thank you for this great plugin. i have a problem and that is i want to pick a mp3 file from my local storage(from device) and then using audiosource i want to play it. i have done this using this script:

using System.Collections; using System.Collections.Generic; using UnityEngine; using System.IO; using UnityEngine.UI; using System.Runtime; using System.Runtime.InteropServices; using System.Runtime.Serialization.Formatters.Binary; using System.Runtime.Serialization; using NAudio; using NAudio.Wave; using UnityEngine.Networking; using SimpleFileBrowser; public class ReadMp3 : MonoBehaviour { private AudioSource audioSource; public Text pathText;

private void Start()
{
    audioSource = GetComponent<AudioSource>();
}
public void ReadMp3Sounds()
{
    FileBrowser.SetFilters(false, new FileBrowser.Filter("Sounds", ".mp3"));
    FileBrowser.SetDefaultFilter(".mp3");
    StartCoroutine(ShowLoadDialogCoroutine());
}
IEnumerator ShowLoadDialogCoroutine()
{
    yield return FileBrowser.WaitForLoadDialog(false, null, "Select Sound", "Select");
    pathText.text = FileBrowser.Result;
    if (FileBrowser.Success)
    {
        byte[] SoundFile = FileBrowserHelpers.ReadBytesFromFile(FileBrowser.Result);
        yield return SoundFile;
        audioSource.clip = NAudioPlayer.FromMp3Data(SoundFile);
        audioSource.Play();
    }
}

}

in this script i used NAudio.dll file to accomplished it. now my problem is that i successfully play audio song from my computer but when i build it for android all things worked properly(i could select mp3 from my android device),but the song was didn't played. can you please tell me how can i do that for android or i made any mistake or something.

yasirkula commented 4 years ago

The "yield return SoundFile;" line is redundant. If omitting it doesn't change anything, perhaps NAudioPlayer doesn't support mp3 files on Android? You can try using UnityWebRequest instead to see if it supports mp3 or try picking wav files instead of mp3.

yasirkula commented 3 years ago

Closing due to inactivity.