1. Some Context
2. Understanding Your Audio
3. Exporting Your Audio
4. Extracting Your Audio
5. Splicing Your Audio
6. Importing Your Audio
7. Optimizing Your Audio
The lore of this guide.
I recently came across an interesting conversation on Twitter regarding imported music. I’ve done it myself a few times with music made in Dreams, and it’s a great way of optimizing for better performance and saving thermo; however a point was brought up on how this could be seen as cheating the system and encouraging imports of non-Dreams music.
While I understand this concern, the previously stated benefits are too hard to ignore, especially for big, complex projects. But I also want to help address this issue, so my recommendation for Dreamiverse musicians is to export their music, then import it as a low cost alternative for the more nitpicky game devs out there. Of course I’m not saying you need to do this to survive on Dreams, and some of you may feel like this should be done by the person wanting to use your music, but I believe having a catalogue of imported versions of your work can help make your stuff appear more appealing to people looking for ready-made thermo friendly music.
I’m assuming most veteran Dreamers know how to export and import audio, but for the new players unaware of how to do it, or for those just curious on how I go about it, this guide will go over the entire process of exporting, extracting, slicing, importing, and optimizing audio in the easiest way possible (at least that I know).
Understanding Your Audio
Reading this segment isn’t required to export/import audio (but please do because I wrote all of this lol) but it’ll help explain why some of the steps are necessary. Keep in mind that this is from my own understanding of things so I may be completely wrong. I’m also not a musician nor do I have any expertise in audio engineering. Reader beware!
You may have noticed that sometimes there’s a delay or a faint pop or some other weird artifact in your track. This is because of how Dreams handles audio. Mm has a great breakdown of this system, and from what my little gamer noodle has been able to comprehend I think it works something like this:
Audio gadgets usually contain slices of audio. For a slice to play instantly and properly, it must be stored in memory, or “loaded”, ahead of time. Dreams can only load so much audio (est. at 19 min.), and each slice contributes to that limit. Dreams compromises by choosing random slices from each sound gadget so it can always have something ready for that sound gadget. This concept of having random sounds ready in from memory is called “sound readiness,” but because it’s random it’s also why you’ll sometimes hear a note being off pitch. However, if the stored memory has been maxed out, a “Delayed Sounds” warning appears and some slices will play delayed or not play at all.
The best way to avoid these issues is to copy a sound gadget and place the copy before the original sound gadget plays, then set the copy’s volume to 0%. Even with no sound being produce it will load all of the slices that the sound gadget uses, so when the original sound gadget plays it’ll have all the slices ready to go, pitch perfect and everything!
Other things to be aware of are sound instances (a sound gadget playing), audio cost (the amount of effects and instances going off at once), and loudness (AAAAAAAAAAAAA). Too many sounds instances at once can cause playback issues like sounds cutting off (limit is 128 instances). Too much audio cost will also cause playback issues (limit is a thermo). Too many loud sounds will cause nasty compression (limit is a person’s tolerance). Sound instances are rarely, if ever, a problem for making music and is more of a game dev problem when doing the audio design for a scene, so we’ll focus on audio cost and loudness.
Audio cost issues usually occur when you have too many sounds with lots of effects, like dank levels of reverb, going on. To fix that, use a neat tool called Audio Analyser. It’ll show you the audio cost level throughout your track, so if you spot a section that is exceeding the limit try reducing those effects.
Loudness is more or less a mixing issue. I personally just slap a Master Mixer gadget down then look at the frequencies during a playback to determine what sections of a track are too loud, then go through each sound gadget and mess with their frequencies/volumes until everything sounds just right. Everybody has their own methodology, though, so you can tackle this problem any way you like.
With that out of the way, let’s actually start doing stuff!
Exporting Your Audio
Bake-to-Sound gadget when?
First we need to make sure your gameplay recording settings can cover the full length of the track if you’re on PS4 (yes I know, “oh what I have to record gameplay I thought there was a tool to export in Dreams,” yeah believe me we all wish there was). If you need a refresher, it’s in Settings > Sharing and Broadcasts > Length of Video Clip. On PS5 you can just select Save Short Clip and choose the length you need when you press the SHARE button.
Once you’ve got that sorted out, open your track in Edit mode, and then copy the Timeline gadget containing your track. On the copied version, lower the volume to -100%. Place a Timer gadget and hook up its Timer Finished output to the original Timeline’s power. The Timer’s default value of 5 seconds is good enough so leave as is. Now all that’s left is to make sure the original Timeline is set to ‘Play Once’.
If you read the ‘Understanding Your Audio’ section above, you may be wondering why we’re doing a whole timeline instead of the sound gadgets. I’ll be blunt: I’m lazy and this method covers all the sound gadgets at once. Anyways, with sound readiness out of the way, do any final adjustments and mixing.
So from my own experience on a PS4 Pro, a track can still have playback issues because Edit mode does some funky stuff to performance, so head into Play mode. Let the track play through the whole thing. If you’re satisfied with how it sounds, save the gameplay footage using the SHARE button, then head over to your Media Gallery and play the clip just to make sure it recorded properly. I like to use Trim while I’m here to remove unnecessary parts of the clip because moving lots of files at once takes forever if I leave them all at full length.
Finally, either send the clip to your YouTube account and download it through there, or go the boring route and use a flash drive.
Extracting Your Audio
and Enhancing Your Audio
Since you’re reading this guide, I’m going to take a wild guess and say you don’t have an audio editing program on your computer. If you don’t, then may I suggest Audacity? It comes at the low cost of FREE.99 and it’s simple to use.
- At this point, if you sent your clip to your YouTube account and downloaded the audio from it, then you can skip the rest of this section.
Unfortunately, Audacity can’t extract audio from videos right out of the gate. You’ll need to install FFmpeg to have that option. Once you have it installed, run Audacity then open your clip through ‘File > Open’ (or you can just drag and drop it into the program).
And that’s it!
If you’d like, you can use this time to play around with the audio by adding some effects, adjusting the EQ, removing unwanted noise, and the whole works. There’s plenty of tutorials online for that stuff, so feel free to experiment when you get the chance.
Splicing Your Audio
Important note: I’ll be using a few keyboard shortcuts to speed up the process. Do try to get used to them, because this part is kind of tedious without them. If at any point a keyboard shortcut doesn’t work, it may be because of a weird bug with Audacity. The easiest fix is to go to ‘Edit > Preferences > Keyboard’ then search for the shortcut and change it.
If you’re not aware by now, Mm limits the amount of audio you can import. They cover this as well as a bunch of other details in their Audio Importer Guide, but the pic above goes over the general import limits. The audio also has to be in .wav format. So, we’ll need to splice our audio into pieces and convert it to .wav in order to meet that criteria.
Cut off any unwanted audio from both the start and ends of your track if you haven’t already. You can do this by selecting that portion of the track then hitting the ‘Delete’ key. Now, see those numbers in the bottom left window? You can select portions of a key track more precisely by specifying a start point and end point. Make your first slice by adjusting those numbers according to your import limit, then press ‘Ctrl + I’. This will split the track at the portion you selected. Do this for the entirety of the track. The last slice will probably shorter than the others, but that’s fine.
I know this is a bit slow, and you’re probably wondering “Why not just select the portions with the mouse?” I strongly suggest you don’t because if it’s not an exact length the audio won’t align properly in Dreams. You can try and zoom in a timeline all the way down to the individual frames and it still won’t align, even with ‘Grid Snap’ on or off, and it’ll be a small but noticeable delay during playbacks. It’s also why when I splice my audio I take a few seconds off my limit (which is at 30 seconds): I’m paranoid the audio importer will goof up and nick a few milliseconds off my slice if I try to import at the full limit.
So I like to slice at 25 second increments. It feels safer, it aligns perfectly on a timeline with ‘Grid Snap’, and admittedly I don’t like doing even basic math so I go for something simple. Speaking of not doing math, here’s a lazy tip: if you’re about to go over 59 seconds and need to convert minutes, you can just type the seconds out and Audacity will convert it for you. So if your next slice ends at 75 seconds, type it out and it’ll convert 1m15s. A slice ends at 1m65s? Converted to 2m05s.
Hooray for laziness!
POV: you tried to be one step ahead and exported, but realized the entire track was exported and not the slices by themselves. If I got that right, don’t worry. I speak from experience.
So Audacity won’t export the slices separately unless we label them. To do that, select the first slice on the left. If you haven’t already figured how to select an entire slice, you can either select click name on the top of the slice or just double click on it. “How did you kno-“, again… experience.
Once you have it selected, hit ‘Ctrl + B’. You’ll notice a bar thingy appear below the slice. Now hit ‘Alt + >’. You’ll notice the next slice was selected. You can use ‘Alt + <’ and ‘Alt + >’ to move between slices quickly. Anyways, apply a label to every slice in the track.
Finally, press ‘Ctrl + Shift + L’ to begin exporting. Make sure the format is set to WAV (.wav), and choose where you’ll want to save your files. On the bottom right there’s an option called “Name files:”. You can leave it as is, but I like to choose “Numbering after File name prefix” and setting the name to “part”. That way my files are saved as “part-1”, “part-2”, “part-3”, and so on.
Good job! Everything should be ready to go, but you if want you can play all the files (in your music player of choice) back-to-back to make sure the slices were done right. Also, if at any point I might have lost you in this process, you can check out this guy who explains it a lot better.
Importing Your Audio
To use the Audio Importer you’ll have to be in Dreamshaping (create mode) in Dreams and be online. When you’re ready, head on over to indreams.me and sign-in with your PSN account. Click on your profile on the top right and select ‘Audio Importer’ from the drop down list. Mm will remind you what you can import so you better read it before proceeding.
Drag and drop your .wav file into one of the boxes. It doesn’t matter which one, so I usually pick the middle one because purple. Once it’s done analyzing, click ‘Send to Console’. You’ll notice your imp have a sound gadget on its tip. Place it in the scene with R2 or X. If there’s nothing on your imp but you see the loading swirly thingy on the bottom right and indreams.me says there’s an error, then it usually means you have a slow or bad internet connection. Sorry, but I can’t help you there.
For those enlightened few with fast speeds, you can continue with importing the rest of your files. Just drag on top of the exiting slice and you’ll be given an option to replace it (the middle box), then you can just plop the file down on the field. And no, you can’t just put all the files in and import them in one go. Remember the import limit? Oh by the way, I hope you remembered what you can import and don’t you forget it.
Success! That wraps up importing. Take a moment to see your thermo. Your imported sound gadgets more than likely cost next to nothing in gameplay thermo compared to your original track, and maybe a bit less in graphics/audio, too (I’m still baffled how sounds can take up graphics thermo)! Now we just need to combine the sound gadgets together to make the full track. A Timeline is the easiest way to do this, but that’s lame, and did you read the ‘Understanding Your Audio’ portion? Sound readiness loads a slice from each sound gadget. If we leave our imported sound gadgets as is then they’ll take up quite a bit of memory.
Time to optimize!
Optimizing Your Audio
And this… is to go… EVEN FURTHER BEYOND!
Is the allure of a music note icon too great? Want to flex on the homies? Obviously, the answer is yes: that’s how we roll around these parts.
Use L1+square on the first sound gadget and change its sound type to ‘Instrument’ if it wasn’t already. Close the window, then press L1+X on the sound gadget to open Freeform View. Then click on the Slice Mapper tab on the top right. This is where slices reside. Now grab the next sound gadget and stick it right next to the first slice. It'll be converted from a gadget into a slice. Repeat this process until all sound gadgets are in the Slice Mapper in the order they’re meant to be played.
Now press L1+square on the first slice. You’ll notice on the top left corner it’ll say ‘C4’. This is the default base note it’s set to. For the first one we can leave it as is. Go through the rest of the slices and change their notes so they’re all different from each other. It doesn’t matter what notes you choose, but you’ll have to remember which ones are assigned to which slice.
When you’re done with that, click on the Piano Roll tab on the top right of the window. Click on the numbers on the top right that says 1:1 (Beats). It’ll change to 0:00:00 (Clock Time). Now that we can see the seconds on the piano roll, stretch the window out until it cover the length of your track. Go to the start of the piano roll, then open the Tools menu and select ‘Draw Notes’. On the base note that your first slice is set to (again, the default being C4), draw the note as long as you made your slices. Since they’re all the same length (well except maybe the last slice) you only need to draw one note and then copy it.
When copying notes, your audio is going to start playing during the process and, depending on where you’re placing your notes, it might sound like a vaporwave or nightcore remix. Don’t worry. This is just Dreams being silly. It’s how we roll around here. Just remember what note was assigned to each slice and in what order you need to play them so the track plays correctly.
So now we’re done, right? Almost! Once again we must face our arch nemesis: sound readiness. If we don’t address this here then sometimes the track will play the slices off pitch.
Starting with the first note, grab it and move it one gridblockthing or whatever you’d like to call it on the piano roll. Copy the note and place it one gridblockthing behind the original note. Hover over the copied note then press <down> on the D-Pad and you’ll see the note start to shrink. Keep holding <down> until the note becomes a thin line (and hold <down> for maybe a second or two more just for good measure). This will completely silence the note, but Dreams will still load it into memory for the original note to play. Do the same thing for all the remaining notes on the piano roll.
Light on resources and compact in design, your track has reached peak perfection. Timeline enthusiasts weep, your adoring fans cheer, and game devs breathe a sigh of relief knowing you’ve mastered the art of exporting and importing audio within Dreams.
Please sign in to leave a comment.