For this tutorial, you absolutely need SmileBASIC 3 (the one that's on the 3DS). From there, you will be able to transfer your file to SmileBASIC 4.
Note that there are definitely other ways to transfer audio files than using Petit Modem.
Step 1: convert to SBWAV
On your computer, convert your audio file to an SBWAV file.
Follow
this tutorial.
Unlike what that tutorial says, you probably don't need your audio file to be at 8180Hz, but keep in mind that audio with a higher frequency will take more time to transfer.
After you have your SBWAV file, make sure the file's name consists of only characters you would find in a SmileBASIC file name (e.g. letters, numbers, underscores). Do not put any extension at the end of the name (".something").
Step 2: transfer your file
Use
Petit Modem to transfer your file.
How to use Petit Modem is beyond the scope of this tutorial, but I would recommend using the "Send w/ARQ" method with the highest speed.
For reference, a 3 second audio sample at 8180Hz that I transfered was about 200KB large (in SB). I didn't check at the time, but I think it took somewhere around 15-20 minutes to transfer.
Once it's transfered, you can freely rename the file to whatever you want.
Step 3: listen to your audio!
If you are using SmileBASIC 3 and you own the DLC, then you will be able to use the PCMSTREAM command.
See
this post for how to use your audio file with the PCMSTREAM command.
If you do not own the DLC, one way to play your audio on SmileBASIC 3 is by using
this tool.
Step 4: transfer to SmileBASIC 4 (optional)
If you want to transfer your file to SmileBASIC 4, follow these steps: in SmileBASIC 3, upload your file and publish it to get a public key. Then, in SmileBASIC 4, download your file using the public key that you got.
Once your file is in SmileBASIC 4, you will be able to use the PCMSTREAM command to play it, just like in SmileBASIC 3.
That is all. If you have an easier method of transfering files to SmileBASIC in a legal way, please let us know!