AudioTrack 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다.
[Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)]
public class AudioTrack : Java.Lang.Object, Android.Media.IAudioRouting, Android.Media.IVolumeAutomation, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/media/AudioTrack", DoNotGenerateAcw=true)>]
type AudioTrack = class
inherit Object
interface IAudioRouting
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IVolumeAutomation
- 상속
- 특성
- 구현
설명
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. PCM 오디오 버퍼를 재생을 위해 오디오 싱크로 스트리밍할 수 있습니다. 이는 데이터와 메서드 중 #write(byte[], int, int)
#write(short[], int, int)
#write(float[], int, int, int)
하나를 사용하여 AudioTrack 개체에 데이터를 "푸시"하여 수행됩니다.
AudioTrack 인스턴스는 정적 또는 스트리밍의 두 가지 모드로 작동할 수 있습니다.<br> 스트리밍 모드에서 애플리케이션은 메서드 중 하나를 사용하여 연속 데이터 스트림을 AudioTrack에 write()
씁니다. 이는 데이터가 Java 계층에서 네이티브 계층으로 전송되고 재생을 위해 대기 중인 경우 차단 및 반환됩니다. 스트리밍 모드는 다음과 같은 오디오 데이터 블록을 재생할 때 가장 유용합니다.
<ul><li>너무 커서 재생할 소리의 지속 시간 때문에 메모리에 맞지 않습니다.</li li<>>가 너무 커서 오디오 데이터의 특성 때문에 메모리에 맞지 않습니다(높은 샘플링 속도, 샘플당 비트 수 ...)</li li><는>이전에 대기 중인 오디오가 재생되는 동안 수신되거나 생성됩니다.</li></ul>
메모리에 맞고 가능한 가장 짧은 대기 시간으로 재생해야 하는 짧은 소리를 처리할 때 정적 모드를 선택해야 합니다. 따라서 정적 모드는 자주 재생되는 UI 및 게임 소리에 선호되며, 오버헤드가 가장 적습니다.
만들면 AudioTrack 개체가 연결된 오디오 버퍼를 초기화합니다. 생성 중에 지정된 이 버퍼의 크기는 데이터가 부족하기 전에 AudioTrack이 재생될 수 있는 기간을 결정합니다.<br> 정적 모드를 사용하는 AudioTrack의 경우 이 크기는 소리에서 재생할 수 있는 최대 크기입니다.<br> 스트리밍 모드의 경우 데이터는 총 버퍼 크기보다 작거나 같은 크기의 청크로 오디오 싱크에 기록됩니다.
AudioTrack은 최종이 아니므로 서브클래스를 허용하지만 이러한 사용은 권장되지 않습니다.
에 대한 android.media.AudioTrack
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.
생성자
AudioTrack(AudioAttributes, AudioFormat, Int32, AudioTrackMode, Int32) |
클래스 생성자 및 |
AudioTrack(IntPtr, JniHandleOwnership) |
JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다. |
AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode) |
사용되지 않음.
클래스 생성자입니다. |
AudioTrack(Stream, Int32, ChannelConfiguration, Encoding, Int32, AudioTrackMode, Int32) |
사용되지 않음.
오디오 세션이 있는 클래스 생성자입니다. |
AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode) |
클래스 생성자입니다. |
AudioTrack(Stream, Int32, ChannelOut, Encoding, Int32, AudioTrackMode, Int32) |
오디오 세션이 있는 클래스 생성자입니다. |
필드
DualMonoModeLl |
사용되지 않음.
이 모드는 스테레오 스트림이 오른쪽 오디오 채널에 복제된 왼쪽 오디오 채널과 함께 표시되어야 임을 나타냅니다. |
DualMonoModeLr |
사용되지 않음.
이 모드는 스테레오 스트림이 함께 혼합되어 두 채널에 전달되는 왼쪽 및 오른쪽 오디오 채널과 함께 표시되어야 임을 나타냅니다. |
DualMonoModeOff |
사용되지 않음.
이 모드는 이중 모노 프레젠테이션 효과를 사용하지 않도록 설정합니다. |
DualMonoModeRr |
사용되지 않음.
이 모드는 스테레오 스트림이 왼쪽 오디오 채널에 복제된 오른쪽 오디오 채널과 함께 표시되어야 임을 나타냅니다. |
EncapsulationMetadataTypeDvbAdDescriptor |
사용되지 않음.
DVB AD 설명자에 대한 캡슐화 메타데이터 형식입니다. |
EncapsulationMetadataTypeFrameworkTuner |
사용되지 않음.
프레임워크 튜너 정보에 대한 캡슐화 메타데이터 유형입니다. |
EncapsulationMetadataTypeSupplementaryAudioPlacement |
사용되지 않음.
보조 오디오 배치를 위한 캡슐화 메타데이터 유형입니다. |
EncapsulationModeElementaryStream |
사용되지 않음.
이 모드는 기본 스트림 페이로드가 포함된 메타데이터 캡슐화를 나타냅니다. |
EncapsulationModeNone |
사용되지 않음.
이 모드는 오디오 데이터를 전송 |
Error |
사용되지 않음.
제네릭 작업 실패를 나레이션합니다. |
ErrorBadValue |
사용되지 않음.
잘못된 값의 사용으로 인한 오류를 나타냅니다. |
ErrorDeadObject |
사용되지 않음.
보고하는 개체가 더 이상 유효하지 않으며 다시 만들어야 함을 나타내는 오류 코드입니다. |
ErrorInvalidOperation |
사용되지 않음.
메서드의 부적절한 사용으로 인한 오류를 표시합니다. |
Success |
사용되지 않음.
성공한 작업을 나타내는 것입니다. |
SupplementaryAudioPlacementLeft |
사용되지 않음.
보조 오디오 배치가 왼쪽에 있습니다. |
SupplementaryAudioPlacementNormal |
사용되지 않음.
보조 오디오 배치 표준입니다. |
SupplementaryAudioPlacementRight |
사용되지 않음.
보조 오디오 배치 권한. |
속성
AudioAttributes |
구성에 사용된 값을 |
AudioDescriptionMixLeveldB |
오디오 설명 혼합 수준을 dB로 반환합니다. |
AudioFormat |
구성된 오디오 데이터 인코딩을 반환합니다. |
AudioSessionId |
오디오 세션 ID를 반환합니다. |
BufferCapacityInFrames |
프레임에서 버퍼의 |
BufferSizeInFrames |
애플리케이션이 쓰는 버퍼의 |
ChannelConfiguration |
구성된 채널 위치 마스크를 반환합니다. |
ChannelCount |
구성된 채널 수를 반환합니다. |
Class |
이 |
DualMonoMode |
이중 모노 모드 프레젠테이션 설정을 반환합니다. |
Format |
구성된 |
Handle |
기본 Android 인스턴스에 대한 핸들입니다. (다음에서 상속됨 Object) |
IsOffloadedPlayback |
트랙이 으로 설정된 상태에서 빌드 |
JniIdentityHashCode |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
JniPeerMembers |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
LogSessionId |
|
MaxVolume |
1보다 크거나 같은 최대 게인 값을 반환합니다. |
Metrics |
현재 AudioTrack 인스턴스에 대한 메트릭 데이터를 반환합니다. |
MinVolume |
상수 0인 최소 게인 값을 반환합니다. |
NativeFrameCount |
사용되지 않음.
네이티브 |
NotificationMarkerPosition |
프레임으로 표현된 표식 위치를 반환합니다. |
OffloadDelay |
이전에 설정한 |
OffloadPadding |
이전에 설정한 |
PeerReference |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
PerformanceMode |
의 현재 성능 모드를 반환합니다 |
PlaybackHeadPosition |
프레임으로 표현된 재생 헤드 위치를 반환합니다. |
PlaybackParams |
현재 재생 매개 변수를 반환합니다. -또는- 재생 매개 변수를 설정합니다. |
PlaybackRate |
현재 재생 샘플 속도(Hz)를 반환합니다. |
PlayState |
AudioTrack 인스턴스의 재생 상태를 반환합니다. |
PositionNotificationPeriod |
프레임에 표시된 알림 업데이트 기간을 반환합니다. |
PreferredDevice |
에서 지정한 선택한 출력을 |
RoutedDevice |
|
SampleRate |
구성된 오디오 원본 샘플 속도를 Hz로 반환합니다. |
StartThresholdInFrames |
의 스트리밍 시작 임계값을 |
State |
AudioTrack 인스턴스의 상태를 반환합니다. |
StreamType |
이 AudioTrack의 볼륨 스트림 유형을 반환합니다. |
ThresholdClass |
이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. |
ThresholdType |
이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. |
UnderrunCount |
AudioTrack을 만든 이후 애플리케이션 수준 쓰기 버퍼에서 언더런 발생 횟수를 반환합니다. |
메서드
AddOnCodecFormatChangedListener(IExecutor, AudioTrack+IOnCodecFormatChangedListener) |
|
AddOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener, Handler) |
|
AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler) |
|
AttachAuxEffect(Int32) |
보조 효과를 오디오 트랙에 연결합니다. |
Clone() |
이 개체의 복사본을 만들고 반환합니다. (다음에서 상속됨 Object) |
CreateVolumeShaper(VolumeShaper+Configuration) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
Dispose() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
Dispose(Boolean) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
Equals(Object) |
다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다. (다음에서 상속됨 Object) |
Flush() |
재생을 위해 현재 대기 중인 오디오 데이터를 플러시합니다. |
GetHashCode() |
개체에 대한 해시 코드 값을 반환합니다. (다음에서 상속됨 Object) |
GetMinBufferSize(Int32, ChannelOut, Encoding) |
모드에서 AudioTrack 개체를 만드는 |
GetNativeOutputSampleRate(Stream) |
지정된 스트림 형식에 대한 출력 샘플 속도를 Hz로 반환합니다. |
GetTimestamp(AudioTimestamp) |
요청 시 타임스탬프를 폴링합니다. |
IsDirectPlaybackSupported(AudioFormat, AudioAttributes) |
제공된 특성이 있는 오디오 형식의 직접 재생이 현재 시스템에서 지원되는지 여부를 반환합니다. |
JavaFinalize() |
가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다. (다음에서 상속됨 Object) |
Notify() |
이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다. (다음에서 상속됨 Object) |
NotifyAll() |
이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다. (다음에서 상속됨 Object) |
Pause() |
오디오 데이터의 재생을 일시 중지합니다. |
Play() |
AudioTrack 재생을 시작합니다. |
RegisterStreamEventCallback(IExecutor, AudioTrack+StreamEventCallback) |
스트림 이벤트 알림에 대한 콜백을 등록합니다. |
Release() |
네이티브 AudioTrack 리소스를 해제합니다. |
ReloadStaticData() |
정적 버퍼 내의 재생 헤드 위치를 0으로 설정합니다. 즉, 정적 버퍼의 시작을 되감습니다. |
RemoveOnCodecFormatChangedListener(AudioTrack+IOnCodecFormatChangedListener) |
|
RemoveOnRoutingChangedListener(AudioTrack+IOnRoutingChangedListener) |
|
RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener) |
|
SetAudioDescriptionMixLeveldB(Single) |
오디오 설명 혼합 수준을 dB로 설정합니다. |
SetAuxEffectSendLevel(Single) |
오디오 트랙의 송신 수준을 연결된 보조 효과 |
SetBufferSizeInFrames(Int32) |
애플리케이션이 쓰는 버퍼의 |
SetDualMonoMode(Int32) |
출력 디바이스에서 이중 모노 모드 프레젠테이션을 설정합니다. |
SetHandle(IntPtr, JniHandleOwnership) |
Handle 속성을 설정합니다. (다음에서 상속됨 Object) |
SetLoopPoints(Int32, Int32, Int32) |
루프 지점 및 루프 수를 설정합니다. |
SetNotificationMarkerPosition(Int32) |
알림 표식의 위치를 설정합니다. |
SetOffloadDelayPadding(Int32, Int32) |
오프로드 모드에서 재생 중인 현재 압축 스트림의 지연 및 패딩 값을 구성합니다. |
SetOffloadEndOfStream() |
이 트랙의 마지막 쓰기() 작업이 이 스트림의 마지막 버퍼를 제공했음을 선언합니다. |
SetPlaybackHeadPosition(Int32) |
정적 버퍼 내에서 재생 헤드 위치를 설정합니다. |
SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener) |
이전에 설정된 표식에 도달할 때 또는 주기적인 재생 헤드 위치 업데이트마다 AudioTrack이 알려주는 수신기를 설정합니다. |
SetPlaybackPositionUpdateListener(AudioTrack+IOnPlaybackPositionUpdateListener, Handler) |
이전에 설정된 표식에 도달할 때 또는 주기적인 재생 헤드 위치 업데이트마다 AudioTrack이 알려주는 수신기를 설정합니다. |
SetPlaybackRate(Int32) |
이 트랙의 재생 샘플 속도를 설정합니다. |
SetPositionNotificationPeriod(Int32) |
정기 알림 이벤트의 기간을 설정합니다. |
SetPreferredDevice(AudioDeviceInfo) |
이 AudioTrack에서 출력을 |
SetPresentation(AudioPresentation) |
오디오 프레젠테이션을 설정합니다. |
SetStartThresholdInFrames(Int32) |
에 대한 스트리밍 시작 임계값을 |
SetState(Int32) |
사용되지 않음.
인스턴스의 초기화 상태를 설정합니다. |
SetStereoVolume(Single, Single) |
사용되지 않음.
AudioTrack에서 지정된 왼쪽 및 오른쪽 출력 게인 값을 설정합니다. |
SetVolume(Single) |
이 트랙의 모든 채널에서 지정된 출력 게인 값을 설정합니다. |
Stop() |
오디오 데이터 재생을 중지합니다. |
ToArray<T>() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
ToString() |
개체의 문자열 표현을 반환합니다. (다음에서 상속됨 Object) |
UnregisterFromRuntime() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
UnregisterStreamEventCallback(AudioTrack+StreamEventCallback) |
이전에 등록한 스트림 이벤트 알림에 대한 콜백을 등록 취소합니다 |
Wait() |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 <><중단/종료>합니다.> (다음에서 상속됨 Object) |
Wait(Int64) |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다. (다음에서 상속됨 Object) |
Wait(Int64, Int32) |
현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다. (다음에서 상속됨 Object) |
Write(Byte[], Int32, Int32) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
Write(Byte[], Int32, Int32, WriteMode) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
Write(ByteBuffer, Int32, WriteMode) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
Write(ByteBuffer, Int32, WriteMode, Int64) |
HW_AV_SYNC 트랙의 스트리밍 모드에서 재생을 위해 오디오 싱크에 오디오 데이터를 씁니다. |
Write(Int16[], Int32, Int32) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
Write(Int16[], Int32, Int32, WriteMode) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
Write(Single[], Int32, Int32, WriteMode) |
오디오 데이터를 재생(스트리밍 모드)을 위해 오디오 싱크에 쓰거나 이후 재생(정적 버퍼 모드)을 위해 오디오 데이터를 복사합니다. |
WriteAsync(Byte[], Int32, Int32) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(Byte[], Int32, Int32, WriteMode) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(ByteBuffer, Int32, WriteMode) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(ByteBuffer, Int32, WriteMode, Int64) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(Int16[], Int32, Int32) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(Int16[], Int32, Int32, WriteMode) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
WriteAsync(Single[], Int32, Int32, WriteMode) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
이벤트
MarkerReached |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
PeriodicNotification |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
RoutingChanged |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
명시적 인터페이스 구현
IJavaPeerable.Disposed() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.Finalized() |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.JniManagedPeerState |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. (다음에서 상속됨 Object) |
확장 메서드
JavaCast<TResult>(IJavaObject) |
Android 런타임 확인 형식 변환을 수행합니다. |
JavaCast<TResult>(IJavaObject) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |
GetJniTypeName(IJavaPeerable) |
AudioTrack 클래스는 Java 애플리케이션에 대한 단일 오디오 리소스를 관리하고 재생합니다. |