naudio / NAudio

Audio and MIDI library for .NET
MIT License
5.5k stars 1.1k forks source link

Windows-Independent Mp3FileReader, Load MP3 with NAudio.Core #1137

Open LSXAxeller opened 6 months ago

LSXAxeller commented 6 months ago

NAudio.Core, I encountered issues loading MP3 files on Android, I tried to use Mp3FileReaderBase but it requires AcmMp3FrameDecompressor which is part of NAudio.WinMM which is windows exclusive. I attempted to use NLayer to address this, but encountered the following error:

[monodroid-assembly] open_from_bundles: failed to load assembly NLayer.NAudioSupport.dll
[monodroid-assembly] open_from_bundles: failed to load assembly NLayer.dll
Loaded assembly: /data/user/0/com.bloodmoon.novelnodeplayer/files/.__override__/NLayer.NAudioSupport.dll [External]
Loaded assembly: /data/user/0/com.bloodmoon.novelnodeplayer/files/.__override__/NLayer.dll [External]
[AudioTrackExtImpl] AudioTrackExtImpl init
[AudioTrack] set() streamType -1, sampleRate 48000, format 0x5, channelMask 0x3, frameCount 14400, flags #0, notificationFrames 0, sessionId 0, transferType 3, uid -1, pid -1 cbf 1
[AudioTrack] set(): Building AudioTrack with attributes: usage=1 content=2 flags=0xa00 tags=[]
[AudioTrack] createTrack_l(375) on outputId(29) : 0x72679b9400, mCblk = 0x726addf000,  mLatency = 380, mAfLatency = 80, frameCount = 14400, mSampleRate = 48000, mFlags = 0x8, mReqFrameCount = 14400, mNotificationFramesAct = 7200
[ListServiceUtils] mListServiceUtils::init CallingPid 10260
[ListServiceUtils] mListServiceUtils::init this 0x71e214ac00
[AudioTrack] setVolume left 1.000 right 1.000 , callingPid 10260
[AudioTrack] start(375): prior state:STATE_STOPPED output 29 stream 3 session 3081
Thread started:  #8
[monodroid-assembly] open_from_bundles: failed to load assembly System.Runtime.Extensions.dll
Loaded assembly: /data/user/0/com.bloodmoon.novelnodeplayer/files/.__override__/System.Runtime.Extensions.dll [External]
[monodroid-assembly] open_from_bundles: failed to load assembly System.IO.dll
Loaded assembly: /data/user/0/com.bloodmoon.novelnodeplayer/files/.__override__/System.IO.dll [External]
[novelnodeplaye] Explicit concurrent copying GC freed 4126(267KB) AllocSpace objects, 2(120KB) LOS objects, 78% free, 3312KB/15MB, paused 22us,16us total 7.735ms
[ProfileInstaller] Installing profile for com.bloodmoon.novelnodeplayer
Thread started: <Thread Pool> #9

It seems NLayer is not functioning as expected. Can you suggest an alternative way to handle MP3 loading, since NAudio.Core only supports WAV files?