JavaTM Platform
Standard Ed. 6

javax.sound.midi
클래스 Sequence

java.lang.Object 
  상위를 확장 javax.sound.midi.Sequence


public class Sequence
extends Object

Sequence 는, Sequencer 객체로 재생할 수 있는 음악 정보 (많게는 곡전체 또는 편)를 포함한 데이터 구조입니다. 구체적으로는,Sequence 는 타이밍 정보 및 1 개 이상의 트럭을 포함하고 있습니다. 각트럭 은, 일련의 MIDI 이벤트 (노트 온, 노트 오프, 프로그램 변경, 메타이벤트등)로부터 구성되어 있습니다. 순서의 타이밍 정보는, 그 순서의 이벤트의 시각표시에 사용되는 단위를 지정합니다.

Sequence 는, 파일을 입력 스트림에 읽어들여 MidiSystemgetSequence 메소드의 1 개를 호출하는 것에 의해, MIDI 파일로부터 작성할 수 있습니다. 순서도 또, 빈 Sequence 에 새로운 트럭을 추가해, 그러한 트럭에 MidiEvent 객체를 추가하는 것에 의해, 새롭게 작성할 수 있습니다.

관련 항목:
Sequencer.setSequence(java.io.InputStream stream) , Sequencer.setSequence(Sequence sequence) , Track.add(MidiEvent) , MidiFileFormat

필드의 개요
protected  float divisionType
          순서의 타이밍 분할 형식입니다.
static float PPQ
          템포 베이스의 타이밍 형식에서, 이것에 대한 해상도는 사분 음표 당의 펄스 (틱)로 표시됩니다.
protected  int resolution
          순서의 타이밍 해상도입니다.
static float SMPTE_24
          SMPTE 베이스의 타이밍 형식에서, 1 초 당 24 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).
static float SMPTE_25
          SMPTE 베이스의 타이밍 형식에서, 1 초 당 25 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).
static float SMPTE_30
          SMPTE 베이스의 타이밍 형식에서, 1 초 당 30 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).
static float SMPTE_30DROP
          SMPTE 베이스의 타이밍 형식에서, 1 초 당 29.97 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).
protected  Vector <Track > tracks
          이 순서의 MIDI 트럭입니다.
 
생성자 의 개요
Sequence (float divisionType, int resolution)
          새로운 MIDI 순서를, 지정된 타이밍 분할 형식 및 타이밍 해상도로 구축합니다.
Sequence (float divisionType, int resolution, int numTracks)
          새로운 MIDI 순서를, 지정된 타이밍 분할 형식, 타이밍 해상도, 및 트럭수로 구축합니다.
 
메소드의 개요
 Track createTrack ()
          빈 상태(empty)의 트럭을 이 순서의 일부로서 새롭게 작성합니다.
 boolean deleteTrack (Track  track)
          순서로부터, 지정된 트럭을 삭제합니다.
 float getDivisionType ()
          이 순서의 타이밍 분할 형식을 가져옵니다.
 long getMicrosecondLength ()
          마이크로 세컨드 단위의 이 순서의 듀레이션을 가져옵니다.
 Patch [] getPatchList ()
          이 순서로 참조되는 패치의 리스트를 가져옵니다.
 int getResolution ()
          이 순서의 타이밍 해상도를 가져옵니다.
 long getTickLength ()
          MIDI 틱 단위의 이 순서의 듀레이션을 가져옵니다.
 Track [] getTracks ()
          이 순서의 전트럭을 포함한 배열을 가져옵니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

PPQ

public static final float PPQ
템포 베이스의 타이밍 형식에서, 이것에 대한 해상도는 사분 음표 당의 펄스 (틱)로 표시됩니다.

관련 항목:
Sequence(float, int) , 정수 필드치

SMPTE_24

public static final float SMPTE_24
SMPTE 베이스의 타이밍 형식에서, 1 초 당 24 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).

관련 항목:
Sequence(float, int) , 정수 필드치

SMPTE_25

public static final float SMPTE_25
SMPTE 베이스의 타이밍 형식에서, 1 초 당 25 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).

관련 항목:
Sequence(float, int) , 정수 필드치

SMPTE_30DROP

public static final float SMPTE_30DROP
SMPTE 베이스의 타이밍 형식에서, 1 초 당 29.97 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).

관련 항목:
Sequence(float, int) , 정수 필드치

SMPTE_30

public static final float SMPTE_30
SMPTE 베이스의 타이밍 형식에서, 1 초 당 30 프레임입니다 (해상도는 1 프레임 당의 틱으로 표시).

관련 항목:
Sequence(float, int) , 정수 필드치

divisionType

protected float divisionType
순서의 타이밍 분할 형식입니다.

관련 항목:
PPQ , SMPTE_24 , SMPTE_25 , SMPTE_30DROP , SMPTE_30 , getDivisionType()

resolution

protected int resolution
순서의 타이밍 해상도입니다.

관련 항목:
getResolution()

tracks

protected Vector <Track > tracks
이 순서의 MIDI 트럭입니다.

관련 항목:
getTracks()
생성자 의 상세

Sequence

public Sequence(float divisionType,
                int resolution)
         throws InvalidMidiDataException 
새로운 MIDI 순서를, 지정된 타이밍 분할 형식 및 타이밍 해상도로 구축합니다. 분할 형식은 인식된 MIDI 타이밍 형식의 1 개인 것이 필요합니다. 템포 베이스의 타이밍의 경우,divisionType 는 PPQ (사분 음표 근처의 펄스)로, 해상도는 비트 근처의 틱으로 지정됩니다. SMTPE 타이밍의 경우,divisionType 가 1 초 쯤의 프레임수를 지정해, 해상도는 프레임 근처의 틱으로 지정됩니다. 순서에는 초기 트럭을 포함하지 않습니다. 트럭의 추가 또는 삭제는,createTrack() deleteTrack(javax.sound.midi.Track) 를 사용해 실시할 수가 있습니다.

파라미터:
divisionType - 타이밍 분할 형식 (PPQ, 또는 SMPTE 형식의 1 개)
resolution - 타이밍 해상도
예외:
InvalidMidiDataException - divisionType 가 유효하지 않은 경우
관련 항목:
PPQ , SMPTE_24 , SMPTE_25 , SMPTE_30DROP , SMPTE_30 , getDivisionType() , getResolution() , getTracks()

Sequence

public Sequence(float divisionType,
                int resolution,
                int numTracks)
         throws InvalidMidiDataException 
새로운 MIDI 순서를, 지정된 타이밍 분할 형식, 타이밍 해상도, 및 트럭수로 구축합니다. 분할 형식은 인식된 MIDI 타이밍 형식의 1 개인 것이 필요합니다. 템포 베이스의 타이밍의 경우,divisionType 는 PPQ (사분 음표 근처의 펄스)로, 해상도는 비트 근처의 틱으로 지정됩니다. SMTPE 타이밍의 경우,divisionType 가 1 초 쯤의 프레임수를 지정해, 해상도는 프레임 근처의 틱으로 지정됩니다. 순서는 numTracks 로 지정된 트럭수로 초기화됩니다. 이러한 트럭은 처음은 빈 상태(empty)입니다 (즉, 「트럭의 마지막」이라고 하는 메타이벤트 밖에 포함되지 않았다). 트럭은 getTracks() 메소드를 사용해 검출해, 편집할 수 있습니다. 트럭의 추가 및 기존 트럭의 삭제는,createTrack() deleteTrack(javax.sound.midi.Track) 를 사용해 실시할 수가 있습니다.

파라미터:
divisionType - 타이밍 분할 형식 (PPQ, 또는 SMPTE 형식의 1 개)
resolution - 타이밍 해상도
numTracks - 순서의 트럭의 초기 번호
예외:
InvalidMidiDataException - divisionType 가 유효하지 않은 경우
관련 항목:
PPQ , SMPTE_24 , SMPTE_25 , SMPTE_30DROP , SMPTE_30 , getDivisionType() , getResolution()
메소드의 상세

getDivisionType

public float getDivisionType()
이 순서의 타이밍 분할 형식을 가져옵니다.

반환값:
분할 형식 (PPQ, 또는 SMPTE 형식의 1 개)
관련 항목:
PPQ , SMPTE_24 , SMPTE_25 , SMPTE_30DROP , SMPTE_30 , Sequence(float, int) , MidiFileFormat.getDivisionType()

getResolution

public int getResolution()
이 순서의 타이밍 해상도를 가져옵니다. 순서의 분할 형식이 PPQ 의 경우, 해상도는 1 비트 근처의 틱으로 지정됩니다. SMTPE 타이밍의 경우, 해상도는 1 프레임 근처의 틱으로 지정됩니다.

반환값:
1 비트 당 (PPQ) 또는 1 프레임 당 (SMPTE)의 틱수
관련 항목:
getDivisionType() , Sequence(float, int) , MidiFileFormat.getResolution()

createTrack

public Track  createTrack()
빈 상태(empty)의 트럭을 이 순서의 일부로서 새롭게 작성합니다. 이 트럭에는, 최초, 「트럭의 마지막」이라고 하는 메타이벤트가 포함되어 있습니다. 새롭게 작성된 트럭이 돌려주어집니다. 순서의 전트럭은 getTracks() 를 사용해 검출할 수 있습니다. 트럭은 deleteTrack(javax.sound.midi.Track) 를 사용해 삭제할 수 있습니다.

반환값:
새롭게 작성된 트럭

deleteTrack

public boolean deleteTrack(Track  track)
순서로부터, 지정된 트럭을 삭제합니다.

파라미터:
track - 삭제하는 트럭
반환값:
트럭이 그 트럭에 존재해, 한편 삭제되었을 경우는 true, 그렇지 않은 경우는 false
관련 항목:
createTrack() , getTracks()

getTracks

public Track [] getTracks()
이 순서의 전트럭을 포함한 배열을 가져옵니다. 순서가 트럭을 포함하지 않은 경우, 길이 0 의 배열이 돌려주어집니다.

반환값:
트럭의 배열
관련 항목:
createTrack() , deleteTrack(javax.sound.midi.Track)

getMicrosecondLength

public long getMicrosecondLength()
마이크로 세컨드 단위의 이 순서의 듀레이션을 가져옵니다.

반환값:
마이크로 세컨드 단위의 이 순서의 듀레이션

getTickLength

public long getTickLength()
MIDI 틱 단위의 이 순서의 듀레이션을 가져옵니다.

반환값:
틱 단위의 이 순서의 길이
관련 항목:
getMicrosecondLength()

getPatchList

public Patch [] getPatchList()
이 순서로 참조되는 패치의 리스트를 가져옵니다. 이 패치 리스트를 사용해, 필요한 Instrument 객체를 Synthesizer 에 로드할 수 있습니다.

반환값:
이 순서로 사용되는 Patch 객체의 배열
관련 항목:
Synthesizer.loadInstruments(Soundbank, Patch[])

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.