You can subscribe to this list here.
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(90) |
Sep
(38) |
Oct
(22) |
Nov
(3) |
Dec
(13) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2005 |
Jan
(40) |
Feb
(119) |
Mar
(236) |
Apr
(41) |
May
(45) |
Jun
(10) |
Jul
(9) |
Aug
(12) |
Sep
(5) |
Oct
(17) |
Nov
(2) |
Dec
(3) |
| 2006 |
Jan
(23) |
Feb
(36) |
Mar
(49) |
Apr
|
May
|
Jun
(1) |
Jul
(11) |
Aug
(11) |
Sep
(15) |
Oct
(30) |
Nov
(36) |
Dec
(13) |
| 2007 |
Jan
|
Feb
(1) |
Mar
|
Apr
(1) |
May
(3) |
Jun
(7) |
Jul
(4) |
Aug
(1) |
Sep
(19) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
| 2008 |
Jan
|
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(5) |
Dec
|
| 2009 |
Jan
(26) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(26) |
Sep
(6) |
Oct
(5) |
Nov
(6) |
Dec
(6) |
| 2010 |
Jan
(3) |
Feb
|
Mar
(5) |
Apr
|
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
(6) |
Aug
(8) |
Sep
(220) |
Oct
(9) |
Nov
(27) |
Dec
(33) |
| 2012 |
Jan
|
Feb
(4) |
Mar
(9) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
| 2013 |
Jan
(6) |
Feb
(20) |
Mar
(6) |
Apr
(3) |
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(17) |
Nov
(2) |
Dec
|
| 2014 |
Jan
(9) |
Feb
(1) |
Mar
(11) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
(2) |
| 2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <tt_...@gm...> - 2004-09-11 10:12:19
|
Hi Hiroo, Hiroo Hayashi wrote: > Torsten> I've made a small fix with calling > Torsten> IPatch[] patarray = Patch.valueOf(patchSysex); > Torsten> instead of > Torsten> IPatch[] patarray = createPatch(patchSysex); > > Torsten> And now the converter is concerned properly. > > I see the problem. Your fix is close, but is not optimal. I made a > fix for this. I found I could remove IPatch.chooseDriver method. > I've checked in the fix. Please try it. I tried it and it works, great. Your code limits chooseDriver() to look only for a fitting driver/converter of the choosen device. This avoids the unnecessary search through all loaded devices. Very good. Thanks and bye Torsten |
|
From: Rib R. <ri...@gm...> - 2004-09-11 09:53:57
|
It's required at run time, maybe not for compilation. On Fri, 10 Sep 2004 22:07:46 -0500, Hiroo Hayashi <hir...@co...> wrote: > It seems that only Windows environment uses semicolon instead of colon. > I don't use asm.jar now. Is it really required? |
|
From: Hiroo H. <hir...@co...> - 2004-09-11 04:41:10
|
Hi Rib,
Rib> the XMLDriverImplementation class. It would probably make more sense
Rib> to have Parameter.send(IPatch) and remove IPatchDriver.sendParameter.
Rib> But for XMLParameter it would probably need to be something like:
Rib> final void send(IPatch p) {
Rib> ((XMLDriver)p.getDriver).sendParameter(this, (XMLPatch)p);
Rib> }
Could you make this change when you are convenient
Rib> > BTW Parameter interface is used only for an argument of SysexWidget. It
Rib> > would be better to make it an inner interface of SysexWidget as I did
Rib> > for ISender and IParamModel. How do you think?
Rib>
Rib> I can't think of any problems with this.
I checked in the fix. I chose name SysexWidget.IParameter to make it
consistent with other interface names.
I also made SysexHandler.NameValue class for the substitute of NameValue
class.
--
Hiroo Hayashi
|
|
From: Hiroo H. <hir...@co...> - 2004-09-11 04:07:48
|
tt_ml_2_g7> > javac core/*.java tt_ml_2_g7> > javac synthdrivers/*/*/*.java synthdrivers/*/*.java tt_ml_2_g7> > javac -classpath '.;Groovy.jar' org/jsynthlib/*/*/*.java org/= jsynthlib/*/*.java tt_ml_2_g7> > javac *.java =2E.. tt_ml_2_g7> > You need to set the classpath to include asm.jar and groovy.j= ar. tt_ml_2_g7> > Maybe we should change JAVAC_FLAGS in makefile.vars to "-g -c= lasspath tt_ml_2_g7> > .:groovy.jar:asm.jar" =2E.. tt_ml_2_g7> - Following Hiroo's hint I run into trouble. It seems that only Windows environment uses semicolon instead of colon. I don't use asm.jar now. Is it really required? --=20 Hiroo Hayashi |
|
From: Hiroo H. <hir...@co...> - 2004-09-11 04:07:18
|
Torsten> I've made a small fix with calling Torsten> IPatch[] patarray =3D Patch.valueOf(patchSysex); Torsten> instead of Torsten> IPatch[] patarray =3D createPatch(patchSysex); Torsten> And now the converter is concerned properly. I see the problem. Your fix is close, but is not optimal. I made a fix for this. I found I could remove IPatch.chooseDriver method. I've checked in the fix. Please try it. Torsten> > But in the core.Driver.createPatch(SysexMessage[]) method I fou= nd only the lines Torsten> > // if Conveter for the patch exist, convert the patch. Torsten> > IPatch[] patarray =3D createPatch(patchSysex); Torsten> > And Patch.valueOf() calls it. Torsten> Alas Patch.valueof() isn't called anytime. I just meant that Patch.valueOf() also called =2EDriver.createPatch(SysexMessage[]). It is not called by SysgetGetDialog. --=20 Hiroo Hayashi |
|
From: <tt_...@gm...> - 2004-09-10 12:35:21
|
Hi Hiroo,
a quick test shows that this hack doesn't work, alas.
Hiroo Hayashi wrote:
> Torsten,
>
> Does this solve your problem?
>
> Index: Converter.java
> ===================================================================
> RCS file: /cvsroot/jsynthlib/JSynthLib/core/Converter.java,v
> retrieving revision 1.14
> diff -u -r1.14 Converter.java
> --- Converter.java 6 Sep 2004 21:13:29 -0000 1.14
> +++ Converter.java 10 Sep 2004 04:27:14 -0000
> @@ -31,8 +31,10 @@
> String patchString = patarray[i].getPatchHeader();
> for (int jdrv = 0; jdrv < dev.driverCount(); jdrv++) {
> IPatchDriver drv = (IPatchDriver) dev.getDriver(jdrv);
> - if (drv.supportsPatch(patchString, patarray[i].getByteArray()))
> + if (drv.supportsPatch(patchString, patarray[i].getByteArray())) {
> patarray[i].setDriver(drv);
> + break;
> + }
> }
> }
> return patarray;
>
Hiroo Hayashi wrote:
> tt_ml_2_g7> But in the core.Driver.createPatch(SysexMessage[]) method I found only the lines
> tt_ml_2_g7> // if Conveter for the patch exist, convert the patch.
> tt_ml_2_g7> IPatch[] patarray = createPatch(patchSysex);
> And Patch.valueOf() calls it.
Alas Patch.valueof() isn't called anytime.
I've made a small fix with calling
IPatch[] patarray = Patch.valueOf(patchSysex);
instead of
IPatch[] patarray = createPatch(patchSysex);
And now the converter is concerned properly.
I think that the old call missed the proper driver information to work correctly.
But Patch.valueOf() determine the right driver and call the proper createPatch() method.
If you agree, I will commit this fix.
Thanks and bye
Torsten
|
|
From: Hiroo H. <hir...@co...> - 2004-09-10 04:28:58
|
Torsten,
Does this solve your problem?
Index: Converter.java
===================================================================
RCS file: /cvsroot/jsynthlib/JSynthLib/core/Converter.java,v
retrieving revision 1.14
diff -u -r1.14 Converter.java
--- Converter.java 6 Sep 2004 21:13:29 -0000 1.14
+++ Converter.java 10 Sep 2004 04:27:14 -0000
@@ -31,8 +31,10 @@
String patchString = patarray[i].getPatchHeader();
for (int jdrv = 0; jdrv < dev.driverCount(); jdrv++) {
IPatchDriver drv = (IPatchDriver) dev.getDriver(jdrv);
- if (drv.supportsPatch(patchString, patarray[i].getByteArray()))
+ if (drv.supportsPatch(patchString, patarray[i].getByteArray())) {
patarray[i].setDriver(drv);
+ break;
+ }
}
}
return patarray;
--
Hiroo Hayashi
|
|
From: Jeff W. <jww...@ya...> - 2004-09-10 00:12:09
|
Hi All! I just added the Line6 Bass Pod and Line6 Pod 2.0 (Guitar Pod) drivers and editors and an updated synthdrivers.properties file to the repository. Not everything is fully functional and/or tested yet, but the code should compile clean. I still have some ParamModel classes that aren't quite working properly but I know what the probem is and plan to work on it this weekend. After that I plan to do some final testing and iron out any remaining issues. I never did get around to implementing converters but it sounds like there's a few issues with that right now, so I'll probably wait until that gets resolved. If anyone has any problems with compile errors on these classes, let me know. Enjoy! Jeff _______________________________ Do you Yahoo!? Shop for Back-to-School deals on Yahoo! Shopping. http://shopping.yahoo.com/backtoschool |
|
From: Hiroo H. <hir...@co...> - 2004-09-09 14:00:23
|
tt_ml_2_g7> But in the core.Driver.createPatch(SysexMessage[]) method I found only the lines tt_ml_2_g7> // if Conveter for the patch exist, convert the patch. tt_ml_2_g7> IPatch[] patarray = createPatch(patchSysex); And Patch.valueOf() calls it. tt_ml_2_g7> concerning Converters and to be honour I don't understand this. tt_ml_2_g7> Where is the converters extractPatch(Patch) method called? Converter.createPatch(byte[]) calls it. -- Hiroo Hayashi |
|
From: Hiroo H. <hir...@co...> - 2004-09-09 13:51:20
|
Torsten, tt_ml_2_g7> The pasted patch is the original received bytearray containing multi Sysexmessages. tt_ml_2_g7> It seems that the DX7Converter extractPatch() method isn't called. Could you send me this byte data by direct mail? Biggest problem for me is that I cannot test converter. If there is an actual data, it will help me a lot. -- Hiroo Hayashi |
|
From: <tt_...@gm...> - 2004-09-09 10:32:06
|
Hi Hiroo,
Hiroo Hayashi wrote:
> The fix for this bug and SysexWidget.IParamModel|ISender is in head.
Do you commit the converter fix already?
I still have problems with my DX7 Converter.
If I request a patch from my DX7 the DX7 Converter isn't concerned.
I get the warning:
You requested a Yamaha DX7 SER-7 Converter patch!
But you got a Yamaha DX7 SER-7 Converter patch.
And this means that no fitting driver was found!
The pasted patch is the original received bytearray containing multi Sysexmessages.
It seems that the DX7Converter extractPatch() method isn't called.
I tried to find the bug, but I don't understand the new construction in detail.
In the core.SysexGetDialog.pasteIntoSelectedFrame() method the selected drivers
createPatch(SysexMessage[]) method is called directly.
But in the core.Driver.createPatch(SysexMessage[]) method I found only the lines
// if Conveter for the patch exist, convert the patch.
IPatch[] patarray = createPatch(patchSysex);
concerning Converters and to be honour I don't understand this.
Where is the converters extractPatch(Patch) method called?
I hope you understand my problem.
Any idea?
Bye
Torsten
|
|
From: Hiroo H. <hir...@co...> - 2004-09-09 03:01:18
|
My computer is quite unstable. Sorry for my short answer. Sorry for confusion. I'm trying to minimize the number of interface methods. Use driver.getDevice().getChannel() or ((Driver) driver).getChannel() instead of driver.getChannel(). Jeff> As soon as I can get this fixed, I can check in Jeff> drivers and editors for both the Guitar POD and the Jeff> Bass POD. What do you think? I don't see any problem. Do it. -- Hiroo Hayashi |
|
From: Jeff W. <jww...@ya...> - 2004-09-09 02:16:57
|
Hiroo,
I got my SysexSenders working and sending CC messages
using the code you posted in your message last week.
Everything was working great until I checked out
another version of the source today. It looks like you
made a change to the IPatchDriver interface and
removed getChannel() and now I'm getting a compile
error (see the line below in the send method for my
SysexSender subclass
"m.setMessage(ShortMessage.CONTROL_CHANGE,
driver.getChannel() - 1, param, value);"). There are
probably a number of ways to tweak this to get rid of
the compile error but I'm hoping you can tell me the
right way to fix it.
Up till now I've been avoiding checking in my code
because I didn't want to cause headaches for everybody
else. I didn't want to include my code and then have
others checking out a new version only to get compile
errors in my drivers. But at this point I think I've
gotten it close enough that it's probably more of a
hindrance to everybody if I don't check it in. If my
code had been checked in when you made this change, we
would have been in sync and you would been alerted to
the problem when you compiled.
As soon as I can get this fixed, I can check in
drivers and editors for both the Guitar POD and the
Bass POD. What do you think?
public void send(IPatchDriver driver, int value) {
if (reverse) {
value = 127 - value;
}
value = Math.min(127, value * multiplier);
ShortMessage m = new ShortMessage();
try{
m.setMessage(ShortMessage.CONTROL_CHANGE,
driver.getChannel() - 1, param, value);
driver.send(m);
} catch (InvalidMidiDataException e) {
ErrorMsg.reportStatus(e);
}
}
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
|
|
From: <tt_...@gm...> - 2004-09-08 15:02:55
|
Hi Hiroo, Hi Ryan, Hiroo Hayashi wrote: > tt_ml_2_g7> I've tried to compile the last current CVS version but without success. > tt_ml_2_g7> While compiling the org.jsynthlib.* classes I run into trouble. > > See the Rib's mail on Aug 31 titled as 'XML Drivers'; > > Rib> missing. I've added two jar files which you will need to put in your > Rib> classpath. These are for the Groovy scripting language, which has > > # I also missed this line first. Hiroo Hayashi wrote: > Rib> missing. I've added two jar files which you will need to put in your > Rib> classpath. These are for the Groovy scripting language, which has > > I've updated the compile procedure in doc/programming.html as follows; > > javac core/*.java > javac synthdrivers/*/*/*.java synthdrivers/*/*.java > javac -classpath '.;Groovy.jar' org/jsynthlib/*/*/*.java org/jsynthlib/*/*.java > javac *.java > > Please update Makefile and build.xml. > someone Rib Rdb wrote: > You need to set the classpath to include asm.jar and groovy.jar. > Maybe we should change JAVAC_FLAGS in makefile.vars to "-g -classpath > .:groovy.jar:asm.jar" > Thanks for your reminder resp. hints. I tried both ways and got different results. - Ryans hint to change makefile.vars works very well. - Following Hiroo's hint I run into trouble. But with this commands I can compile successfull: export CLASSPATH=.:groovy.jar:asm.jar:$CLASSPATH javac core/*.java javac synthdrivers/*/*/*.java synthdrivers/*/*.java javac org/jsynthlib/*/*/*.java org/jsynthlib/*/*.java javac *.java Maybe I made a simple mistake or Hiroo's way doesn't work under Linux. I don't know. I just want give you this feedback. Bye Torsten |
|
From: Joachim B. <jba...@pi...> - 2004-09-08 09:57:24
|
> Please update build.xml. > someone Currently I have no time for testing that. At the weekend I will have a look at it. Regards, J.Backhaus > -----Ursprungliche Nachricht----- > Von: Hiroo Hayashi [mailto:hir...@co...] > Gesendet: Mittwoch, 8. September 2004 06:05 > An: JSynthLib Development > Betreff: compiiling the current CVS head (Re: [Jsynthlib-devel] XML > Drivers) > > > Rib> missing. I've added two jar files which you will need > to put in your > Rib> classpath. These are for the Groovy scripting language, > which has > > I've updated the compile procedure in doc/programming.html as follows; > > javac core/*.java > javac synthdrivers/*/*/*.java synthdrivers/*/*.java > javac -classpath '.;Groovy.jar' org/jsynthlib/*/*/*.java > org/jsynthlib/*/*.java > javac *.java > > Please update Makefile and build.xml. > someone > -- > Hiroo Hayashi > > > > ------------------------------------------------------- > This SF.Net email is sponsored by BEA Weblogic Workshop > FREE Java Enterprise J2EE developer tools! > Get your free copy of BEA WebLogic Workshop 8.1 today. > http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click > _______________________________________________ > Jsynthlib-devel mailing list > Jsy...@li... > https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel > |
|
From: Hiroo H. <hir...@co...> - 2004-09-08 05:04:55
|
Rib> missing. I've added two jar files which you will need to put in your Rib> classpath. These are for the Groovy scripting language, which has I've updated the compile procedure in doc/programming.html as follows; javac core/*.java javac synthdrivers/*/*/*.java synthdrivers/*/*.java javac -classpath '.;Groovy.jar' org/jsynthlib/*/*/*.java org/jsynthlib/*/*.java javac *.java Please update Makefile and build.xml. > someone -- Hiroo Hayashi |
|
From: <tt_...@gm...> - 2004-09-07 17:15:57
|
Hi,
I've tried to compile the last current CVS version but without success.
While compiling the org.jsynthlib.* classes I run into trouble.
Since these classes are needed to run JSynthLib
(at least 'org/jsynthlib/jsynthlib/xml/DeviceLoadHandler')
I'm currently not able to start JSynthLib.
Maybe I forgot something or I missed an information.
Does anybody has an idea?
Bye
Torsten
P.S.
The errormessages of my compiler (SDK 1.4.2_05 under Linux) are:
#javac org/jsynthlib/jsynthlib/xml/*java
org/jsynthlib/jsynthlib/xml/Sequence.java:5: package org.codehaus.groovy.control does not exist
import org.codehaus.groovy.control.CompilationFailedException;
^
org/jsynthlib/jsynthlib/xml/Sequence.java:29: cannot resolve symbol
symbol : class CompilationFailedException
location: class org.jsynthlib.jsynthlib.xml.Sequence
public String[] getSequence() throws CompilationFailedException, IOException {
^
./org/jsynthlib/plugins/PluginRegistry.java:3: package groovy.lang does not exist
import groovy.lang.GroovyClassLoader;
^
./org/jsynthlib/plugins/PluginRegistry.java:4: package groovy.lang does not exist
import groovy.lang.GroovyShell;
^
./org/jsynthlib/plugins/PluginRegistry.java:13: package org.codehaus.groovy.control does not exist
import org.codehaus.groovy.control.CompilationFailedException;
^
./org/jsynthlib/plugins/PluginRegistry.java:26: cannot resolve symbol
symbol : class GroovyShell
location: class org.jsynthlib.plugins.PluginRegistry
private static GroovyShell shell = new GroovyShell();
^
./org/jsynthlib/plugins/PluginRegistry.java:27: cannot resolve symbol
symbol : class GroovyClassLoader
location: class org.jsynthlib.plugins.PluginRegistry
private static GroovyClassLoader loader = new GroovyClassLoader();
^
./org/jsynthlib/plugins/PluginRegistry.java:49: cannot resolve symbol
symbol : class CompilationFailedException
location: class org.jsynthlib.plugins.PluginRegistry
public static void loadPlugins() throws CompilationFailedException, IOException {
^
./org/jsynthlib/plugins/PluginRegistry.java:70: cannot resolve symbol
symbol : class CompilationFailedException
location: class org.jsynthlib.plugins.PluginRegistry
public static Decoder getDecoder(String name) throws InstantiationException, IllegalAccessException, InvocationTargetException,
CompilationFailedException, IOException {
^
./org/jsynthlib/plugins/PluginRegistry.java:81: cannot resolve symbol
symbol : class CompilationFailedException
location: class org.jsynthlib.plugins.PluginRegistry
public static Checksum getChecksum(String name) throws InstantiationException, IllegalAccessException, InvocationTargetException,
CompilationFailedException, IOException {
^
./org/jsynthlib/plugins/PluginRegistry.java:91: cannot resolve symbol
symbol : class GroovyShell
location: class org.jsynthlib.plugins.PluginRegistry
public static GroovyShell groovyShell() {
^
./org/jsynthlib/plugins/PluginRegistry.java:94: cannot resolve symbol
symbol : class GroovyClassLoader
location: class org.jsynthlib.plugins.PluginRegistry
public static GroovyClassLoader groovyLoader() {
^
./org/jsynthlib/plugins/PluginRegistry.java:26: cannot resolve symbol
symbol : class GroovyShell
location: class org.jsynthlib.plugins.PluginRegistry
private static GroovyShell shell = new GroovyShell();
^
./org/jsynthlib/plugins/PluginRegistry.java:27: cannot resolve symbol
symbol : class GroovyClassLoader
location: class org.jsynthlib.plugins.PluginRegistry
private static GroovyClassLoader loader = new GroovyClassLoader();
^
14 errors
|
|
From: Hiroo H. <hir...@co...> - 2004-09-06 22:44:53
|
Hi Rib,
Rib> > Why some method in Parameter has 'IPatch p' argument. I guess the
Rib> > IPatch object is passed to Parameter object via constructor.
Rib>
Rib> This is so the driver can have one set of parameter objects which are
Rib> shared by all of that driver's patches.
I see.
XMLParamter.decoder is never set now. I guess it will be set by
the constructor.
Rib> > How does IPatchDriver.sendParameter(IPatch, Parameter) works. Parameter
Rib> > object does not have information about SysexMessage data format. I
Rib> > guess what we need is 'void Parameter.send()'.
Rib>
Rib> Each driver (or decoder for xml drivers) has a subclass of parameter
Rib> with whatever data is necessary about how the parameter is stored in
Rib> the sysex message. Although Parameter.send might be better for non-xml
Rib> drivers.
My question was not clear. I think we don't need
IPatchDriver.sendParamter. IPatchDriver does not have to have a method
only for Parameter class. We already have
IPatchDriver.send(SysexMessage) method. What we need is;
void Parameter.send(IPatch)
or
MidiMessage[] Parameter.getMessage(IPatch)
I chose the 1st one for ISender, because most of cases only one MIDI
message is sent but we need to support the case of multiple MIDI
messages. Only ISender which sends multiple message have a for-loop.
BTW Parameter interface is used only for an argument of SysexWidget. It
would be better to make it an inner interface of SysexWidget as I did
for ISender and IParamModel. How do you think?
--
Hiroo Hayashi
|
|
From: Hiroo H. <hir...@co...> - 2004-09-06 21:25:47
|
Hi,
I've checked in fixes for driver classes and interfaces.
1. javadoc update
2. reorder the definition of methods in *Driver class/interface.
3. rename some of interface methods
IPatchEditor.editPatch(IPatch) -> edit(IPatch)
IPatchEditor.storePatch(IPatch, int, int) -> send(IPatch, int, int)
ISingleDriver.playPatch(IPatch) -> play(IPatch)
ISingleDriver.sendPatch(IPatch) -> send(IPatch)
4. more use of 'final'
--
Hiroo Hayashi
|
|
From: Jeff W. <jww...@ya...> - 2004-09-02 02:19:32
|
Hi Hiroo, I got the updates to all the changes. I ran into a few problems with my working copy but I got it all put back together and was able to compile and do some testing. So far the Converter is working great. I still have some work to do on my Converter and Drivers so I probably won't get around to working on the editor till this weekend, but I'll let you know how it goes. Great Job!!! Thanks, Jeff --- Hiroo Hayashi <hir...@co...> wrote: > From: Hiroo Hayashi <hir...@co...> > To: JSynthLib Development > <jsy...@li...> > Subject: Re: [Jsynthlib-devel] Converter Problems > Date: Wed, 01 Sep 2004 08:05:52 -0500 > > The fix for this bug and > SysexWidget.IParamModel|ISender is in head. > -- > Hiroo Hayashi > > > > ------------------------------------------------------- > This SF.Net email is sponsored by BEA Weblogic > Workshop > FREE Java Enterprise J2EE developer tools! > Get your free copy of BEA WebLogic Workshop 8.1 > today. > http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click > _______________________________________________ > Jsynthlib-devel mailing list > Jsy...@li... > https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel > _______________________________ Do you Yahoo!? Win 1 of 4,000 free domain names from Yahoo! Enter now. http://promotions.yahoo.com/goldrush |
|
From: Hiroo H. <hir...@co...> - 2004-09-01 14:05:56
|
The fix for this bug and SysexWidget.IParamModel|ISender is in head. -- Hiroo Hayashi |
|
From: <tt_...@gm...> - 2004-09-01 07:25:42
|
Hi Hiroo, Hiroo Hayashi wrote: > Hi Torsten, > > Torsten> > When I click 'Play', it sends Sysex message but does not send MIDI > Torsten> > note messages. > > Torsten> If I'm not wrong these SysexMessages are only the Patch which > Torsten> is send to your synth. I think the NoteOn/NoteOff messages > Torsten> are send bye the sequencer and not catched by our > Torsten> midi-monitor. > I'm using an external MIDI monitor program (MIDI-OX). > > Torsten> But alas the MIDI events of the Midi file are never send to > Torsten> this Receiver, only to Java's default synthesizer. > > I guess default Synthesizer (returned by MidSystem.getSysnthsizer()) on > my system is software synth of Windows. But I hear nothing. > > Torsten> It seems that the MIDI Sequencer in the Linux 1.4 Java > Torsten> environment doesn't concern about the new assigned Receiver > Torsten> "outRcvr". It only plays the midi file over Java's default > Torsten> synthesizer, which means you can hear the song over the "Line > Torsten> Out" output of your soundcard. Is this also correct under > Torsten> Windows?. > > It seems my XP system is worse than Linux. > > Torsten> Can you make a quick test with jdk1.5? > Torsten> If my sequencer part is working properly the MIDI file should > Torsten> be played over your synthesizer. If this is the case, I > Torsten> think the wrong behaviour is a Java 1.4 issue and I don't > Torsten> activate this feature until jdk1.5 will become a requirement > Torsten> and my code reached a "stable" state, of course. > > I have not decided to install 1.5 yet. > I don't prefer to install beta version. And I'm afraid having two > version of SDK will cause trouble for me. > > You can use core.Utility.getJavaVersion() and disable sequencer > without waiting for the time when 1.5 will be requirement. OK, I think it's better to use my sequencer code only with jdk1.5. It seem's to me that the 1.4 version doesn't do what I want. Bye Torsten |
|
From: Hiroo H. <hir...@co...> - 2004-09-01 03:14:37
|
Hi Jeff, Jeff> I think I may have found something that might at least Jeff> partially explain the problems I'm experiencing with Jeff> Converters and I'd love to hear an opinion or two. You are right. I made this bug. I did not realize that Converter class implemented IPatchDriver interface. I made same bug on some other places. Let me fix them. Thanks a lot! -- Hiroo Hayashi |
|
From: Jeff W. <jww...@ya...> - 2004-09-01 02:10:24
|
I think I may have found something that might at least
partially explain the problems I'm experiencing with
Converters and I'd love to hear an opinion or two.
In the constructor for the SysexGetDialog class is the
following code:
// First Populate the Device/Driver List with all
Device/Driver
// combinations except converters
// skip 0 (Generic Device)
for (int i=1; i < AppConfig.deviceCount(); i++) {
Device device=AppConfig.getDevice(i);
for (int j=0; j < device.driverCount(); j++) {
IDriver driver = device.getDriver(j);
if (driver instanceof IPatchDriver) { //
Skipping a converter
deviceComboBox.addItem(device);
break;
}
}
}
I was able to step through this code with a debugger
and what I found was that the condition in the if
statement:
if (driver instanceof IPatchDriver) { //
Skipping a converter
is returning a true condition even when driver is a
Converter. (Note this condition is being used in a few
other places, too).
I decided to check the class and interface hierarchies
using a class browser. Stripping away all the stuff
that didn't seem relative, this is what I found:
Interface Hierarchy--
IDriver
IConverter extends IDriver
IPatchDriver extends IDriver
IBankDriver extends IPatchDriver
ISingleDriver extends IPatchDriver
Class Hierarchy--
Driver implements ISingleDriver
BankDriver extends Driver implements IBankDriver
Converter extends Driver implements IConverter
Even though Converter does not directly implement
IPatchDriver, notice that it extends Driver, which
implements ISingleDriver, which extends IPatchDriver.
I'm certainly no expert with interfaces and maybe I'm
missing something here but doesn't that mean that
Converter implements IPatchDriver indirectly? Is that
the reason why the condition (driver instanceof
IPatchDriver) returns true for a Converter?
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
|
|
From: Jeff W. <jww...@ya...> - 2004-08-31 12:33:53
|
Hiroo, You can go into preferences and configure any device/driver, even if you don't have the actual physical device. All I'm testing is the Get... command under the Patch menu. I just want to see if the "Get Sysex Data" dialog comes up. You don't need any actual sysex data for that. Here's what I did: 1. Go into preferences/synths and remove all devices. 2. Add a device that uses a converter. Any of them will do. 3. Quit the program and restart. 4. Click on Patch menu and select Get... Does the "Get Sysex Data" dialog appear? In step 1 & 2, if you don't want to remove all devices, add any of the devices that use a converter and that have a name that appears alphabetically ahead of any of the other devices you have configured. The quit and restart in step 3 is there to allow the device list to sort properly before you try the actual test. I found one case where this made a difference. Thanks, Jeff Hiroo Hayashi <hir...@co...> wrote: Jeff, How can I reproduce this problem? In other words, how can I test converter without having synth nor sysex data being imported? Jeff> device/driver at a time. The same NullPointerException Jeff> occurs on all of the ones I tested. I tested the Jeff> following devices, quitting and restarting the program Jeff> and cleaning out the config between each test: Jeff> Yamaha TG100 Jeff> Kawai K4 Jeff> Yamaha DX7 Jeff> Korg X3 (this one has two converters) Jeff> Yamaha FS1R -- Hiroo Hayashi --------------------------------- Do you Yahoo!? Yahoo! Mail Address AutoComplete - You start. We finish. |