# Playlist-file # ############# # # Tip for play MIDI-audio # ======================= # # Java Se supports MIDI audio platonically, becomes outdated and very user-unkindly. # The user has to go after every installation of Java Se (also after every update) # the sound bank for MIDI once more Java provide: By hand. # Moreover, the user must procure this sound bank file even by download, # if he wants to use the maximum quality. However, this file changes since many # years no more. # # The applet can be also provided with a sound bank, with applet start # it is loaded, because the applet uses internal MIDI sound (sound bank file to # Applet has the maximum sound quality and must lie in the CLASS path of the applet). # # It is better to provide the sound bank, in addition, Java, then already from that # Java-run time environment is loaded. # # By the user by download procured sound bank with maximum quality has to go # # precisely under the name soundbank.gm # # to following places are copied by hand (namely after EVERY Java update) # # /jre/lib/audio # # Example: c:\programs\Java\jre6\lib\audio\soundbank.gm # # and /sdk_dir/jre/lib/audio # # Example: c:\programs\Java\jdk1.6.0_23\jre\lib\audio\soundbank.gm # # # Tip: c:\Programme\Java\jre6\ was created during install of Run-Time of Java # (during install of SDK of Java). # # Tip: c:\Programme\Java\jdk1.6.0_23\ was created during install of SDK of Java # (please always install Run-time too during install of SDK). # path of playlist and soundfiles # =============================== # # Playlist has the same path of Class-files of applet. # (Eclipse project_folder\bin\ ) # # # All soundfile have has the same path of Class-files of applet, # or they places in inside subdirectory of path of Class-files of applet. # # # Example project_folder\bin\ there class-files an playlist-file # # project_folder\bin\t\ there soundifles # # in playlist /t/mp3pl4p.mid # or \t\mp3pl4p.mid # # but NOT project_folder\bin\ there Class an playlist-file # # project_folder\t\ there soundifles # # in playlist ../t/mp3pl4p.mid not possible # or ..\t\mp3pl4p.mid not possible # Syntax description # ================== # # Comment line begins with # as the 1st character # 1 data line exists of following fields which are separated by at least 1 blank character # filename without additional character, without blank character, no escape-chars like \n \u etc. # path see above. # least entry as a duty entry. # It gives no standard. # Being the given value wrong, the line is completely ignored. # sound type It filename must have been given before. # allowed values are # 0 for mp3 mono in stereo # 1 for midi type 0 and 1, mono or in stereo # 2 for wave, ouch, mono or in stereo, max. 48 kHz, 16 bits # least entry as a duty entry. # It gives no standard. # Being the given value wrong, the line is completely ignored. # having to do the sound type do not correspond precisely to the sound contents, it becomes # file as existent recognised and by an internal sound does not replace. # in the comment of the sound is automatically pointed out to it. # The applet checks data not after the suffix of the filename, e.g., not after "mp3". # filenames must not contain the sound type in the suffix. e.g., is for one # mp3 sound the filenames test.em_pe_drei or test.wav valid. # sound duration can be given (optionally) # if that the sound type must have been given before. # > = 0 during milliseconds, # if <0 so is valid # sound duration is the absolute amount (> 0) # at the end of the reproduction of the sound the applet is quit without comment. # It is possible, that to itself the player after the end of the reproduction exactly of one by chance selected song # closes and, in addition, the whole player has no GUI, so the whole player is invisible: # In addition it must be submitted: # 1. ALL sound duration entries must be negative # and 2. in GUI-Conf-File ButtonCreateMinimal set to 123 # and 3. autostart of player set automatically actively # Eclipse has a specific feature: # If the applet window of the GUI is not visible, the HTML document is not closed to the applet! # If the applet window of the GUI is visible, the HTML document is also closed to the applet! # Eclipse starts appletviewer from Java and him the applet window of the HTML page, the Eclipse generates # automatically generates and passes in appletviewer. The HTML page owns the applet tag # with the class file which generates eclipse automatically by run (with all class of the project.) # standard is 0 # having to go the sound duration to the real duration do not correspond, then becomes the sound # end after real duration. Indeed, the position of play becomes in the player in percent # because of wrong sound length as 100% indicated (position during milliseconds is correct). # number of the frames to be played # can be given (optionally) # if that the sound duration must have been given before. # > =0 of the frames to be played from sound beginning, and 0 for whole file # with MIDI are this the milliseconds from the sound beginning # with Wave, however, without effect # if <0 thus standards uses # standard is 0 whole sounds # waiting period before start of every reproduction # can be given (optionally) # if that the number of the frames must have been given before. # > =0 during milliseconds before start of the next sound # if <0 thus standards uses # standard is in 3000 3 seconds # by the 1st start of a sound after start of the applet ignors sound duration: # The 1st sound starts without waiting period before. # comment can be given (optionally), no standard # if that the waiting period must have been given before. # puts all entries behind the waiting period nothing or any text # also with German umlauts and blank characters # however, no escape-chars like \n \u etc. # blank characters at the end of the line are ignored # becomes as a comment the sound is indicated # # The order of the above entries is firm. Gaps in the order of the entries are not permitted. # # Space is ignored. A space includes except the line end nothing else. # Comment line is ignored. A comment line contains in the 1st character precisely the number cross # # and can have afterwards other characters (also line end). # # Least entries as duty entries are # filename # sound type # they have no default. # having to do one of the least entries related to value have been wrong given, # the whole line is ignored for them (as the line would be commented out). # # optional entries are # Sound duration # Number of frames # waiting period break # comment Break # however, in firm order. Gaps are not permitted. # having to do one of the optional entries related to value have been wrong given, # becomes for also for all even further possible entries the respective default # uses, all the same what was given in the line. (Comment has no default). # reason: A false statement could mean, e.g., also omission of an entry, # , however, gaps are not permitted. # around valid entries, standard is used and therefore it has to go # line are not ignored. # # Should a sound from the list physically not exist, the applet activates # instead of not existing an internal sound. # in the comment of the sound is automatically pointed out to it. # # Should the sound type not correspond precisely to the sound contents, it becomes # file as existent recognised and by an internal sound does not replace. # in the comment of the sound is automatically pointed out to it. # # The applet checks data not after the suffix of the filename, e.g., not after "mp3". # filenames must not contain the sound type in the suffix. e.g., is for one # mp3 sound the filenames test.em_pe_drei or test.wav valid. # # Java does not reject suitable data from the sound file. Foreign data # as a Trojan horse, is not possible, because in Java are the routines # of the data processing for sound (sound type 2 and 3) predefines. # exception: The mp3 library used for the sound type 0 of the provider # http://www.javazoom.net/javalayer/javalayer.html could be unsafe ev. # # Should the sound duration not correspond to the real duration, becomes the sound # end after real duration. Indeed, the position of play becomes in percent # because of wrong sound length as 100% indicated (position during milliseconds is correct). # maximum 1000 records (text lines) in this file (excessive ones are ignored) # #test.em_pe_drei 0 66000 0 3000 relaxe ... mp3pl1b.mp3 # --------------------- -------------------- ................... .......................... .................... ~~~~~~~~~~~~~~~~~~~~~~ # Filename is a duty sound type duty sound duration is optional # optionally number of the frames # optionally duration break # optionally comment # # examples # test.mp3 4 # This line is completely ignored, because the sound type 4 is invalid. # test.mp3 -4 # This line is completely ignored, because the sound type 4 is invalid. # test.mp3 2 # It is expected that test.mp3 contains data of a WAVE. # # test.mp3 1 # It is expected that test.mp3 contains data of a MIDI. # test.mp3 0 # It is expected that test.mp3 contains data of a MP3. # test.mp3 2 -60 0 # 60 milliseconds # Play all frames. # The applet is quit at the end of the reproduction without comment. # test.mp3 2 60 -1 # 60 milliseconds # Play all frames. # test.mp3 2 60 0 3000 # 60 milliseconds # Play all frames. # Per song 3 seconds wait. # test.mp3 2 -60 0 -5000 # 60 milliseconds # Play all frames. # Per song 3 seconds wait. # The applet is quit at the end of the reproduction without comment. # test.mp3 2 60 0 3000 kommentar-text # 60 milliseconds # Play all frames. # Per song 3 seconds wait. # comment exist. # test.mp3 2 -60 0 -5000 kommentar-text # 60 milliseconds # Play all frames. # Per song 3 seconds wait. # The applet is quit at the end of the reproduction without comment. # comment exist. # test.mp3 2 kommentar-text # Faulty line. # test.mp3 2000 kommentar-text # Faulty line. # If all sound duration are are negative, the applet ends after # to 1. played song which could also have been selected by chance # and or automatically or by Play button click starts. # Should at least 1 song have a positive duration, the applet ends only, # if a song with negative duration was activated. # Attention: There applet is always activated with chance choice of the 1st song! # Warning: The applet works with regard to GUI and sound with parallel working threads. # This thread need separated resources and run time - also during deinstallation # of the applet. Unfortunately, are Java Se and, perhaps, also MS Windows # not able to realtime, so that the following problem appears: # Should only 1 sound be played precisely and end directly afterwards the applet, # if the sound list may receive only exactly 1 sound. # or if the sound list may receive more than 1 sound, but # the breaks between the titles must be big enough, # so that Java and Windows also have time, around the applet # in the sound part can quit. # Should the break be too low, though ends the GUI # of the applet within the break, but it the next is able # Sound become already audibl (if automatically the next # Sound may start) which is exited exactly then right in the middle, # if the sound part of the applet was just quit and, besides # more time needs than the break encloses. # One must test the break. # If becomes, however, the Close-cross of the window of the player-GUI (that of the company system # how Windows uses provided cross), Java and HTML are asynchronous: # Then closes the GUI of the applet, but the sound part remains active and # ends when the window of the HTML document is closed or java remove the applet. # ONLY creation and mangement of applet with JavaScript an dynamic ressources can # manage the problem of ansynchron sound and GUI ! # Do not use static management of applet ! # Tip: The applet is always activated with chance choice of the 1st song! # The control of the buttons the player occur like Random or Play etc. # by configuration file of the GUI. mp3pl4b.mp3 0 66000 0 3000 1 relaxe ... mp3pl4b.mp3 mp3pl4a.mid 1 74000 0 3000 2 ... mp3pl4a.mid mp3pl4c.wav 2 11000 0 3000 3 Intro mp3pl4c.wav mp3pl4d.wav 2 56000 0 3000 4 Dialog mp3pl4d.wav mp3pl4e.mid 1 138000 0 3000 5 Bach Gitarre mp3pl4e.mid mp3pl4f.mid 1 100000 0 3000 6 Bach Orgel mp3pl4f.mid mp3pl4g.mp3 0 204000 0 3000 7 Good Time mp3pl4g.mp3 mp3pl4h.mp3 0 98000 0 3000 8 Intermezzo mp3pl4h.mp3 mp3pl4i.mp3 0 46000 0 3000 9 Simpsons 1 mp3pl4i.mp3 mp3pl4j.mp3 0 181000 0 3000 10 Longest Journey mp3pl4j.mp3 mp3pl4k.mp3 0 118000 0 3000 11 Wonderful World mp3pl4k.mp3 mp3pl4l.mp3 0 143000 0 3000 12 Here and there and everywhere mp3pl4l.mp3 mp3pl4m.mp3 0 164000 0 3000 13 Is This The World mp3pl4m.mp3 mp3pl4n.mp3 0 188000 0 3000 14 Highway to Hell mp3pl4n.mp3 mp3pl4o.mp3 0 303000 0 3000 15 orchestral mp3pl4o.mp3 mp3pl4p.mid 1 100000 0 3000 16 Simpsons 2 mp3pl4p.mid