Fortnite music ("UE4OPUS") by filament at 3:35 AM EDT on June 27, 2018
Hello,
Recently all music in Fortnite was converted to a strange format, "UE4OPUS". I just wanted to ask if there's currently any way of playing that back or converting it? I'd love to extract the music, convert it to something like wav and listen to it in high quality.
the OPUS makes it sound like there is/was a plain ogg file somewhere (using opus instead of vorbis). try having a look with something that can rip ogg files from binary blobs (i think vgmtoolbox has an option for this) or check the contents with a hex-editor, there should be a "OggS" string somewhere
It's proving harder that I hoped, can't guess packet sizes. Could you post a bunch of the smallest uexp+uassets+ubulk? (maybe with only uexp+uasset). Or maybe just post all the files, if they aren't too big.
Alright, here's a ZIP file (34,3 MB) with plenty of UE4OPUS samples. I think the smallest one is Menu_Enter_Lobby_Intro.
The directory with UE4OPUS music also contained some sounds in the Ogg format - I've included them in the archive as well - maybe it'll help?
EDIT: Also, some more info. For example, attempting to export the file Victory_Menu_Screen_Main_Loop produces this result in the UModel console: Pastebin
The line that I think will interest you the most is: *** USoundWave: streaming data: 11 chunks in format OPUS so Victory_Menu_Screen_Main_Loop apparently has "11 chunks of streaming data".
Output for another file, fortnite_login_screen is: *** USoundWave: streaming data: 4 chunks in format OPUS So that's four chunks. Maybe it'll help you discover the format?
I've added this for the next vgmstream release, in their extracted/raw form (.opus/lopus/ue4opus, examples).
However, getting the UE4OPUS from uexp/ubulk/uasset is a bit involved so I think I'll ask umodel's author to add extraction support. Otherwise I could cook some .bms later.
Yeah ark had lots of atrac9 but would love to give it another rip to get any missing ue4opus if they are there. Umodel is pretty good these days for the times the ue4 bms script fails to extract.