gatech-csl / jes

The Jython Environment for Students allows students to write Jython programs that can manipulate pictures, sounds, and videos.
http://mediacomputation.org/
59 stars 38 forks source link

Tons of Bugs.You're Welcome. #98

Closed ghost closed 8 years ago

ghost commented 8 years ago

Wrong repository. Sorry !

mjguzdial commented 8 years ago

None of these are JES bugs. You found the wrong github site. You're looking for Bill Manaris's fork of JES which incorporates JMusic. None of the bugs you describe are in JES.


From: bdm57 notifications@github.com Sent: Thursday, June 2, 2016 5:24:02 PM To: gatech-csl/jes Subject: [gatech-csl/jes] Tons of Bugs.You're Welcome. (#98)

Closing a Display while an AudioSample is playing will not stop the audio. It will continue playing. Pressing the stop button after will also not stop it.

Your Sliders, DropDowns, and various other UI elements should be able to pass arguments to the functions they call. Instead of having a single function for every Slider or DropDown that can identify which UI element called it by the argument, you currently have to copy and paste separate functions for every single UI element. Say I have 10 sliders, changing the value on one of them will send its new value to the specified function. I need 10 functions for that. Or you could have each Slider pass an argument to the same function and reduce redundancy.

Having the entire Display just be a JLabel is pretty... I don't even know what to say. Just throw all of the Swing layouts in the trash and meticulously calculate X and Y coordinates? Also means you can't .pack() the frame and have to calculate the new height and width to resize/shrink the Display.

Mod.repeat() is broken in some situations. Mod.repeat() on a part with multiple phrases will simply individually Mod.repeat() each phrase it contains. So what results is the phrases overlapping each other and making a jumbled mess.

You should be able to Mod.transpose just a single pitch value / pitch of a single note.

Part.addPhrase() done on the same phrase seems to not work multiple times and causes JEM to crash.

You should be able to Phrase.addNoteList([note, note, note...]). Curently you can only do it with separated lists of durations and pitches.

AudioSample doesn't work with relative filepaths. Maybe that's a JSyn problem though.

AudioSample initialization seems to give them somewhat random volumes and pitches. Maybe that's a JSyn problem.

Creating AudioSamples puts out waaaaayyyyyy too much junk into the console. It makes it unreadable and you can't find any of your own output in that mess.

You should be able to pitch bend the percussion channel (maybe that's just a problem with MIDI, but I'm sure you could code a way to do it. Like export the MIDI sound as an AudioSample and change the pitch from there.)

Also... multi-line search and replace would be nice.

Also, the program/libraries should come with some extra MIDI sound banks.

You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/gatech-csl/jes/issues/98, or mute the threadhttps://github.com/notifications/unsubscribe/AELfpm0yDQHvxTzHg9JBnnVrnpExwIfyks5qH0nygaJpZM4Is_vA.