Hyperradio js OXP

From Elite Wiki
Revision as of 23:39, 23 January 2008 by Svengali (talk | contribs)

OVERVIEW


I've often missed some background music while playing Oolite. Yes, it was possible to use other software
for this (like Winamp, iTunes,...), but that's not the way it should be. Oolite was a little bit 'incomplete'.

That was yesterday.

HANDLING


Just place your soundfiles (.ogg or .wav) in the OXPs Sounds-folder.<br\> Open descriptions.plist in the Config-folder (you can use a simple text-editor) and add your filenames to the array.

Example:

 <key>hyperradio_songlist</key>
   <array>
     <string>example.ogg</string>
     <string>my_first_sound.ogg</string>
     <string>my_second_sound.ogg</string>
     <string>My_first_music.ogg</string>
     <string>my_second_music.ogg</string>
   </array>

Save your additions. That's it. Totaly easy.

Step to the game. Buy the Hyperradio, launch from the station and press F7 (SYSTEM_DATA_SCREEN)
and step back to the cockpit view (F1). When the song is over... F7, back to F1,...

!!!! Because of the handling of variables in Java-Script don't use filenames with a leading zero or other numerics.

Example:

   01.ogg -> interpreted as 1 (without 0 and .ogg)	does not work
   a0.ogg -> interpreted as a0.ogg			works
   So the best would be to use a syntax like:
   artist-songname.ogg
   Tchaikovsky-Swan_Lake_Act_II_Scene_Moderato.ogg
   Leon_Willett-Dreamfall.ogg

DOWNLOAD


There are 2 different version available:
Don't use them together, because they are using the same namespaces and variables.

Hyperradio_js_1_02.zip (406 KB)
This version runs ONLY under Oolite v1.70!
It uses Java-Script and has some functionallity that can't be done with the old legacy scripting method.

Hyperradio_legacy_1_00.zip (405 KB)
This version runs on Oolite v1.65 - v1.70.

TESTED FORMATS


This is a list of all formats that have been tested for the Hyperradio. Working formats are marked with YES, not working formats as no.
Please help to fill in the Mac- and Linux-Part.

22050Hz Mono, 22050Hz Stereo, 44100Hz Mono, 44100Hz Stereo, 48000Hz Mono, 48000Hz Stereo
Format Header WIN MAC LINUX
raw headerless A-Law no
raw headerless U-Law no
raw headerless 16Bit DWVW no
raw headerless 24Bit DWVW no
raw Signed 16Bit PCM no
raw Signed 24Bit PCM no
raw Signed 32Bit PCM no
raw 32Bit Float no
raw 64Bit Float no
wav MS Signed 16Bit PCM YES
wav MS ADPCM YES
wav MS IMA ADPCM YES
wav MS 32Bit Float no
wav MS 64Bit Float no
wav MS U-Law no
wav MS A-Law no
wav MS Signed 24Bit PCM no
wav MS Signed 32Bit PCM no
wav MS 32kbs G721 ADPCM no
wav MS GSM 6.10 no
wav NIST A-Law no
wav NIST U-Law no
wav NIST Signed 16Bit PCM no
wav NIST Signed 24Bit PCM no
wav NIST Signed 32Bit PCM no
ogg Ogg-vorbis YES
flac 16Bit L5 no
flac 24Bit L5 no

NOTES


Using IN_GAME_MUSIC is a special thing. Currently it is possible to use the Ogg-Vorbis (.ogg) and Wave (.wav) -format. This file should not contain more than two channels, because Oolite does not support any surround-audio-files. It seems that Oolite reduces these files to stereo. And various kbps are handled by using a average kbps-rate.

Creating background music:
The background music max db should be between -12 and -8 db, because a lot of players are using customsound-OXPs and the player should hear if something happens. And the new functionallity of Oolite will cause that more and more OXPs will use their own sounds. That means that sounds (like laser fire) should be between -6 and -3 db at a max. Higher values can result in digital clipping, but if you are familiar with mastering you can use higher values, but better not.