|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
°³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå |
DataLine
´Â ¹Ìµð¾î °ü·ÃÀÇ ±â´ÉÀ» ±× ½´ÆÛ ÀÎÅÍÆäÀ̽º,
¿¡ Ãß°¡ÇÕ´Ï´Ù. ÀÌ ±â´É¿¡´Â ¶óÀÎÀ» °³ÀÔ½ÃÄÑ °Ç³×¹Þ´Â ¿Àµð¿À µ¥ÀÌÅ͸¦ °³½Ã, Á¤Áö ¹èÃâ, ¹× Ç÷¡½Ã ÇÏ´Â ÀÌ¼Û Á¦¾î ¸Þ¼Òµå°¡ Æ÷ÇԵ˴ϴÙ. µ¥ÀÌÅÍ ¶óÀÎÀº ÇöÀçÀÇ À§Ä¡, º¼·ý, ¹Ìµð¾îÀÇ ¿Àµð¿À Çü½Ä¿¡ ´ëÇØ¼µµ ¸®Æ÷Æ®ÇÒ ¼ö ÀÖ½À´Ï´Ù. µ¥ÀÌÅÍ ¶óÀÎÀº ÀÀ¿ë ÇÁ·Î±×·¥À¸·Î µ¥ÀÌÅÍÀÇ ±âÀÔÀ» °¡´ÉÇÏ°Ô ÇÏ´Â ¼ºê ÀÎÅÍÆäÀ̽º,Line
¶Ç´Â SourceDataLine
¿¡ ÀÇÇØ, ¿Àµð¿ÀÀÇ Ãâ·Â¿ëÀ¸·Î »ç¿ëµË´Ï´Ù. °°ÀÌ ¿Àµð¿À ÀÔ·ÂÀº µ¥ÀÌÅÍÀÇ read¸¦ °¡´ÉÇÏ°Ô ÇÏ´Â ¼ºê ÀÎÅÍÆäÀ̽º,Clip
·Î 󸮵˴ϴÙ.
TargetDataLine
µ¥ÀÌÅÍ ¶óÀο¡´Â ¼ö½Å ¶Ç´Â ¼Û½Å ¿Àµð¿À µ¥ÀÌÅ͸¦ Å¥¿¡ ³Ö´Â ³»ºÎ ¹öÆÛ°¡ ÀÖ½À´Ï´Ù. Åë»ó Å¥¿¡ ³Ö¾îÁø µ¥ÀÌÅÍ´Â ¸ðµÎ 󸮵DZâ (À§ÇØ)¶§¹®¿¡,
¸Þ¼Òµå´Â ³»ºÎ ¹öÆÛ°¡ ºñ¿ï ¶§±îÁö ºí·Ï µË´Ï´Ù. drain()
¸Þ¼Òµå´Â ³»ºÎ ¹öÆÛ·ÎºÎÅÍ Å¥¿¡ ³Ö¾îÁø »ç¿ë °¡´ÉÇÑ µ¥ÀÌÅ͸¦ ¸ðµÎ ÆÄ±âÇÕ´Ï´Ù.
flush()
µ¥ÀÌÅÍ ¶óÀÎÀº µ¥ÀÌÅÍÀÇ ¾×ƼºêÇÑ Ç¥½Ã³ª È¥ÀâÀÌ °³½Ã ¶Ç´Â Á¤ÁöµÇ¸é(ÀÚ) Ç×»ó,
¹× START
À̺¥Æ®¸¦ »ý¼ºÇÕ´Ï´Ù. ÀÌ·¯ÇÑ À̺¥Æ®´Â ƯÁ¤ÀÇ ¿ä±¸¿¡ ÀÀ´äÇØ, ¶Ç´Â Á÷Á¢ º¯°æµÈ »óŰ¡ ÀûÀº °æ¿ì¿¡ »ý¼ºµË´Ï´Ù. ¿¹¸¦ µé¾î,STOP
°¡ ¾×ƼºêÇÏÁö ¾ÊÀº µ¥ÀÌÅÍ ¶óÀο¡ ºÒ·Á °¡ µ¥ÀÌÅÍÀÇ ¼öÁß¿¡ ³Ö¾î ¶Ç´Â Àç»ýÀÌ °¡´ÉÇÑ °æ¿ì´Â ½ÇÁ¦·Î µ¥ÀÌÅÍÀÇ Àç»ýÀ̳ª È¥ÀâÀ» °³½ÃÇϸé(ÀÚ),start()
START
À̺¥Æ®°¡ Áï½Ã »ý¼ºµË´Ï´Ù. ȤÀº ¾×ƼºêÇÑ µ¥ÀÌÅÍ ¶óÀο¡ ´ëÇÑ µ¥ÀÌÅÍÀÇ Ç÷οì(flow)¸¦ ¼öÃàÇÑ °á°ú, µ¥ÀÌÅÍÀÇ Ç¥½Ã¿¡ °¸ÀÌ »ý±â¸é(ÀÚ),STOP
À̺¥Æ®°¡ »ý¼ºµË´Ï´Ù.
mixer´Â º¹¼öÀÇ µ¥ÀÌÅÍ ¶óÀÎÀÇ µ¿±â Á¦¾î¸¦ ¼Æ÷Æ®ÇÏ´Â °æ¿ì°¡ ÀÚÁÖ ÀÖ½À´Ï´Ù. µ¿±âÈ´Â mixer ÀÎÅÍÆäÀ̽ºÀÇ
¸Þ¼Òµå¸¦ °³ÀÔ½ÃÄÑ È®¸³ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº synchronize
ÀÎÅÍÆäÀ̽ºÀÇ ¼³¸íÀ» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.
Mixer
LineEvent
ÁßøµÈ Ŭ·¡½ºÀÇ °³¿ä | |
static class |
DataLine.Info
½´ÆÛ Ŭ·¡½º·ÎºÎÅÍ °è½ÂµÈ Ŭ·¡½º Á¤º¸ À̿ܿ¡, DataLine.Info ´Â µ¥ÀÌÅÍ ¶óÀο¡ °íÀ¯ÀÇ Ãß°¡ Á¤º¸¸¦ Á¦°øÇÕ´Ï´Ù. |
Ŭ·¡½º javax.sound.sampled. Line À» »ó¼Ó¹ÞÀº ÁßøµÈ Ŭ·¡½º |
|
¸Þ¼ÒµåÀÇ °³¿ä | |
int |
available ()
¾îÇø®ÄÉÀ̼ÇÀÌ µ¥ÀÌÅÍ ¶óÀÎÀÇ ³»ºÎ ¹öÆÛ³»¿¡¼ ÇöÀç ó¸®ÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅÍÀÇ ¹ÙÀÌÆ®¼ö¸¦ ÃëµæÇÕ´Ï´Ù. |
void |
drain ()
µ¥ÀÌÅÍÀÇ ÀÔÃâ·ÂÀ» µ¥ÀÌÅÍ ¶óÀÎÀÇ ³»ºÎ ¹öÆÛ°¡ ºñ¿ï ¶§±îÁö °è¼ÓÇØ, ±× ¶óÀÎÀ¸·ÎºÎÅÍ Å¥¿¡ µé¾î°¡ ÀÖ´Â µ¥ÀÌÅ͸¦ ¹èÃâÇÕ´Ï´Ù. |
void |
flush ()
¶óÀÎÀ¸·ÎºÎÅÍ Å¥¿¡ µé¾î°¡ ÀÖ´Â µ¥ÀÌÅ͸¦ Ç÷¡½Ã ÇÕ´Ï´Ù. |
int |
getBufferSize ()
µ¥ÀÌÅÍ ¶óÀÎÀÇ ³»ºÎ ¹öÆÛ³»¿¡ µé¾î°¡´Â µ¥ÀÌÅÍÀÇ ÃÖ´ë ¹ÙÀÌÆ®¼ö¸¦ ÃëµæÇÕ´Ï´Ù. |
AudioFormat |
getFormat ()
µ¥ÀÌÅÍ ¶óÀÎÀÇ ¿Àµð¿À µ¥ÀÌÅÍÀÇ ÇöÀçÀÇ Çü½Ä (ÀÎÄÚµù, »ùÇà ·¹ÀÌÆ®, ä³Î¼öµî)À» ÃëµæÇÕ´Ï´Ù. |
int |
getFramePosition ()
¿Àµð¿À µ¥ÀÌÅÍÀÇ ÇöÀçÀÇ À§Ä¡¸¦ »ùÇà ÇÁ·¹ÀÓ¼ö·Î ÃëµæÇÕ´Ï´Ù. |
float |
getLevel ()
¶óÀÎÀÇ ÇöÀçÀÇ º¼·ý ·¹º§À» ÃëµæÇÕ´Ï´Ù. |
long |
getMicrosecondPosition ()
¿Àµð¿À µ¥ÀÌÅͳ»ÀÇ ÇöÀçÀÇ À§Ä¡¸¦ ¸¶ÀÌÅ©·Î ¼¼ÄÁµå ´ÜÀ§·Î ÃëµæÇÕ´Ï´Ù. |
boolean |
isActive ()
¶óÀÎÀÌ ¾×ƼºêÇÑ ÀÔÃâ·Â (Àç»ýÀ̳ª È¥Àâµî)À» ½ÇÇàÇϰí ÀÖÀ»Áö ¾î¶³Áö¸¦ ³ªÅ¸³À´Ï´Ù. |
boolean |
isRunning ()
¶óÀÎÀÌ ½ÇÇàÁßÀΰ¡ ¾î¶²°¡¸¦ ³ªÅ¸³À´Ï´Ù. |
void |
start ()
¶óÀο¡¼ÀÇ µ¥ÀÌÅÍ ÀÔÃâ·ÂÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. |
void |
stop ()
¶óÀÎÀ» Á¤ÁöÇÕ´Ï´Ù. |
ÀÎÅÍÆäÀ̽º javax.sound.sampled. Line ¿¡¼ »ó¼Ó¹ÞÀº ¸Þ¼Òµå |
addLineListener , close , getControl , getControls , getLineInfo , isControlSupported , isOpen , open , removeLineListener |
¸Þ¼ÒµåÀÇ »ó¼¼ |
public void drain()
drain()
¸¦ È£ÃâÇϸé(ÀÚ), ¶óÀÎÀÌ ½ÇÇàµÇ¾î µ¥ÀÌÅÍ Å¥°¡ ºñ¿ï ¶§±îÁö ÀÌ ¸Þ¼Òµå´Â ºí·Ï µË´Ï´Ù. drain()
¸¦ 1 °³ÀÇ thread·Î È£ÃâÇØ, ´Ù¸¥ thread·Î µ¥ÀÌÅÍ Å¥ÀÇ ÀúÀåÀ» °è¼ÓÇϸé(ÀÚ), Á¶ÀÛÀº ¿Ï·áÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â µ¥ÀÌÅÍ ¶óÀÎÀÌ ´ÝÀ¸¸é(ÀÚ) Ç×»ó µ¹·ÁÁÖ¾îÁý´Ï´Ù.
flush()
public void flush()
stop()
,
drain()
public void start()
START
À̺¥Æ®°¡ »ý¼ºµË´Ï´Ù.
stop()
,
isRunning()
,
LineEvent
public void stop()
flush
¸Þ¼Òµå¸¦ È£ÃâÇØ º¸°ü À¯ÁöµÇ°í ÀÖ´Â µ¥ÀÌÅ͸¦ ÆÄ±âÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿Àµð¿À ¼öÁß¿¡ ³Ö¾î ¶Ç´Â Àç»ýÀ» Á¤ÁöÇϸé(ÀÚ),STOP
À̺¥Æ®°¡ »ý¼ºµË´Ï´Ù.
start()
,
isRunning()
,
flush()
,
LineEvent
public boolean isRunning()
false
ÀÔ´Ï´Ù. ¿¸° ¶óÀÎÀº start
¸Þ¼ÒµåÀÇ È£Ãâ¿¡ ÀÀÇØ ÃÖÃÊÀÇ µ¥ÀÌÅͰ¡ Á¦½ÃµÇ¸é(ÀÚ) ½ÇÇàÀÌ °³½ÃµÇ¾îstop
¸Þ¼ÒµåÀÇ È£Ãâ¿¡ ÀÀÇØ, ȤÀº Àç»ýÀÌ ¿Ï·áÇØ, Ç¥½ÃµÇÁö ¾Ê°Ô µÉ ¶§±îÁö °è¼ÓÇØ ½ÇÇàµË´Ï´Ù.
true
, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
start()
,
stop()
public boolean isActive()
START
À̺¥Æ®¸¦ ±× ûÃëÀÚ¿¡°Ô ¼Û½ÅÇÕ´Ï´Ù. °°ÀÌ ¾×ƼºêÇÑ ¶óÀÎÀÌ ¾×ƼºêÇÏÁö ¾Ê°Ô µÇ¸é(ÀÚ), ¶óÀÎÀº STOP
À̺¥Æ®¸¦ ¼Û½ÅÇÕ´Ï´Ù.
true
, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
Line.isOpen()
,
Line.addLineListener(javax.sound.sampled.LineListener)
,
Line.removeLineListener(javax.sound.sampled.LineListener)
,
LineEvent
,
LineListener
public AudioFormat getFormat()
AudioFormat
public int getBufferSize()
public int available()
»ç¿ëµÇ´Â ´ÜÀ§´Â ¹ÙÀÌÆ®ÀÔ´Ï´Ù¸¸, ´ÜÀ§´Â ¿Àµð¿À µ¥ÀÌÅÍÀÇ »ùÇà ÇÁ·¹ÀÓÀÇ ÀûºÐ¼ö¿¡ Ç×»ó ÀÏÄ¡ÇÕ´Ï´Ù.
¾îÇø®ÄÉÀ̼ǿ¡¼´Â available()
·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁø ¹ÙÀÌÆ®¼ö±îÁöÀÇ Àоîµé¿© ¶Ç´Â ±âÀÔÇØ Á¶ÀÛÀº ºí·Ï µÇÁö ¾Ê½À´Ï´Ù. ´Ù¸¸, ±× ¹ÙÀÌÆ®¼öº¸´Ù ¸¹Àº µ¥ÀÌÅÍÀÇ Àоîµé¿© ¶Ç´Â ±âÀÔÇØ Á¶ÀÛÀ» ½ÇÇàÇϸé(ÀÚ) ºí·Ï µÉÁö ¾î¶³Áö È®½ÇÇÏÁö´Â ¾Ê½À´Ï´Ù.
public int getFramePosition()
public long getMicrosecondPosition()
public float getLevel()
AudioSystem.NOT_SPECIFIED
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
ÀüÀÇ Å¬·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓ ÀÖ¾î ÇÁ·¹ÀÓ ¾øÀ½ | ||||||||||
°³¿ä: »óÀÚ | Çʵå | constructor | ¸Þ¼Òµå | »ó¼¼: Çʵå | constructor | ¸Þ¼Òµå |
Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ ÀÖ¾î¼ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.