United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-4204105 : RFE: add loop() method(s) to Sequencer

Details
Type:
Enhancement
Submit Date:
1999-01-19
Status:
Resolved
Updated Date:
2003-09-27
Project Name:
JDK
Resolved Date:
2003-09-27
Component:
client-libs
OS:
generic
Sub-Component:
javax.sound
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
1.0
Fixed Versions:
5.0 (tiger)

Related Reports
Relates:

Sub Tasks

Description
From: "K Luck" <###@###.###>
To: <###@###.###>
Subject: [javasound] MIDI sequencing
Date: Sun, 27 Dec 1998 19:11:04 -0000
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3

Hi,

I've been playing around with javasound and have managed to write a little keyboard app (just like the ToySynth example really), but now that I have come to try something a bit more adventurous, I've come up against a bit of a brick wall. Has anyone managed to sequence MIDI data using javasound yet?? I want to play a looping bar with given MIDI messages on given beats of the bar. I presume that you would use the Sequencer interface, but I've checked all through the API and I can't find any way to start a sequence or to put given messages at a certain point in a sequence...
If someone's figured this out already, I would be really greatful if you could let me know how its done,

Thanks,

Kelvin.

-----

Date: Mon, 18 Jan 1999 16:19:54 +0000 (GMT Standard Time)
From: ###@###.### (Kelvin Luck)
To: ###@###.###
Subject: [javasound] The TimeMBT class
X-Sender: ###@###.###
MIME-Version: 1.0


Hi,
Sorry to mail pretty much the same question again, but no-one got back
to me last time, and I'm sure someone out there must know! 

I'm trying to use the TimeMBT class from JavaSound so that I can play
looped MIDI data. I create a new TimeMBT object with the following code
:

TimeMBT timeMBT = new TimeMBT(16, 100, 1);

As I understand it from the API, this should create a new timing object
(in this 
case one which runs for 16 ticks at 100BPM with 1 tick per beat).
Then by calling the getBeatsMBT() method on this object, you should be
able to retrieve the number of beats that have passed (????).
But when I try this, i.e. by looping and printing timeMBT.getBeatsMBT()
to the screen, the return value of getBeatsMBT() seems to remain at 0
and never increment.
What am I doing wrong?? Do I need to start my new TimeMBT object
somehow?? Please, if anyone has figured this out, let me know,

Thanx in advance,

Kelvin.


                                    

Comments
EVALUATION

Positioning is available in Java Sound in J2SE 1.3.  Looping can be done in the Midi file itself by specifying META events (markers) called "loopstart" and "loopend".  (This is a feature of the Beatnik engine underneath.)

I am recategorizing and keeping this bug open because the option to set loop points on a Sequencer (on the Sequence?) is a valid, and useful request.

Perhaps Sequencer.setLoopPoints( long loopBegin, long loopEnd ) where
loopBegin and loopEnd are in Ticks?

###@###.### 2000-02-09

###@###.### 2003-01-30
	Changed synopsis (was: "Request Sequencer looping and positioning at specific measures / beats").
                                     
2000-02-09
PUBLIC COMMENTS

RFE: add loop() method(s) to Sequencer
                                     
2004-06-10
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
tiger

FIXED IN:
tiger

INTEGRATED IN:
tiger
tiger-b22


                                     
2004-06-14



Hardware and Software, Engineered to Work Together