Share via


MediaRecorder 클래스

정의

오디오 및 비디오를 녹음하는 데 사용됩니다.

[Android.Runtime.Register("android/media/MediaRecorder", DoNotGenerateAcw=true)]
public class MediaRecorder : Java.Lang.Object, Android.Media.IAudioRecordingMonitor, Android.Media.IAudioRouting, Android.Media.IMicrophoneDirection, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/media/MediaRecorder", DoNotGenerateAcw=true)>]
type MediaRecorder = class
    inherit Object
    interface IAudioRecordingMonitor
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IAudioRouting
    interface IMicrophoneDirection
상속
MediaRecorder
특성
구현

설명

오디오 및 비디오를 녹음하는 데 사용됩니다. 기록 컨트롤은 간단한 상태 컴퓨터를 기반으로 합니다(아래 참조).

<img src="https://developer.android.com/images/mediarecorder_state_diagram.gif" border="0" />

MediaRecorder를 사용하여 오디오를 녹음하는 일반적인 경우는 다음과 같습니다.

MediaRecorder recorder = new MediaRecorder();
            recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
            recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
            recorder.setOutputFile(PATH_NAME);
            recorder.prepare();
            recorder.start();   // Recording is now started
            ...
            recorder.stop();
            recorder.reset();   // You can reuse the object by going back to setAudioSource() step
            recorder.release(); // Now the object cannot be reused

애플리케이션은 기록 중에 일부 내부 업데이트 및 가능한 런타임 오류를 알리기 위해 정보 및 오류 이벤트에 등록할 수 있습니다. 이러한 이벤트에 대한 등록은 적절한 수신기를 설정하여 수행됩니다(호출을 통해 ( #setOnInfoListener(OnInfoListener)setOnInfoListener 및/또는 #setOnErrorListener(OnErrorListener)setOnErrorListener로). 이러한 수신기와 연결된 각 콜백을 받으려면 애플리케이션이 루퍼가 실행되는 스레드에서 MediaRecorder 개체를 만들어야 합니다(기본적으로 기본 UI 스레드에는 이미 루퍼가 실행 중임).

<strong>Note:</strong> 현재 MediaRecorder는 에뮬레이터에서 작동하지 않습니다.

<div class="special reference"><h3>Developer Guides</h3>

비디오 녹화에 MediaRecorder를 사용하는 방법에 대한 자세한 내용은 카메라 개발자 가이드를 참조하세요. 소리 녹음에 MediaRecorder를 사용하는 방법에 대한 자세한 내용은 오디오 캡처 개발자 가이드를 참조하세요.

</Div>

에 대한 Java 설명서입니다 android.media.MediaRecorder.

이 페이지의 일부는 만들고 공유하며 에 설명된 용어에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

MediaRecorder()

기본 생성자입니다.

MediaRecorder(Context)

기본 생성자입니다.

MediaRecorder(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

필드

MediaErrorServerDied
사용되지 않음.

미디어 서버가 사망했습니다.

MediaRecorderErrorUnknown
사용되지 않음.

지정되지 않은 미디어 레코더 오류입니다.

속성

ActiveMicrophones

활성 마이크를 나타내는 목록 MicrophoneInfo 반환

ActiveRecordingConfiguration

이 오디오 레코더의 현재 활성 오디오 녹음을 반환합니다.

AudioSourceMax

오디오 원본의 최대값을 가져옵니다.

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
JniPeerMembers

오디오 및 비디오를 녹음하는 데 사용됩니다.

LogSessionId

MediaRecorder에 대한 를 LogSessionId 반환합니다. -또는- MediaRecorder에 대한 를 LogSessionId 설정합니다.

MaxAmplitude

이 메서드에 대한 마지막 호출 이후 샘플링된 최대 절대 진폭을 반환합니다.

Metrics

현재 Mediarecorder instance 대한 메트릭 데이터를 반환합니다.

PeerReference

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
PreferredDevice

에서 지정한 선택한 입력 디바이스를 #setPreferredDevice반환합니다.

PrivacySensitive

이 MediaRecorder가 오디오 캡처와 관련하여 개인 정보 보호에 민감한 것으로 표시되는지 여부를 반환합니다. -또는- 이 캡처 요청이 개인 정보에 민감하고 동시 캡처가 허용되지 않음을 나타냅니다.

RoutedDevice

AudioDeviceInfo 이 MediaRecorder의 현재 라우팅을 식별하는 를 반환합니다. 쿼리는 MediaRecorder가 현재 기록 중인 경우에만 유효합니다.

Surface

SURFACE 비디오 원본을 사용할 때 기록할 표면을 가져옵니다.

ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

AudioRouting.OnRoutingChangedListener 를 추가하여 이 MediaRecorder에서 라우팅 변경 내용에 대한 알림을 받습니다.

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
Dispose()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
GetHashCode()

개체의 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
Pause()

기록을 일시 중지합니다.

Prepare()

데이터 캡처 및 인코딩을 시작할 레코더를 준비합니다.

RegisterAudioRecordingCallback(IExecutor, AudioManager+AudioRecordingCallback)

를 통해 오디오 캡처 변경에 대한 알림을 받도록 콜백을 등록합니다 AudioManager.AudioRecordingCallback.

Release()

이 MediaRecorder 개체와 연결된 리소스를 해제합니다.

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

AudioRouting.OnRoutingChangedListener 경로 변경 알림을 받기 위해 이전에 추가된 을 제거합니다.

Reset()

MediaRecorder를 유휴 상태로 다시 시작합니다.

Resume()

기록을 다시 시작합니다.

SetAudioChannels(Int32)

녹음을 위한 오디오 채널 수를 설정합니다.

SetAudioEncoder(AudioEncoder)

녹음에 사용할 오디오 인코더를 설정합니다.

SetAudioEncodingBitRate(Int32)

녹음/녹화를 위한 오디오 인코딩 비트 속도를 설정합니다.

SetAudioProfile(EncoderProfiles+AudioProfile)

녹음을 위해 AudioProfile의 설정을 사용합니다.

SetAudioSamplingRate(Int32)

녹음에 대한 오디오 샘플링 속도를 설정합니다.

SetAudioSource(AudioSource)

녹음에 사용할 오디오 원본을 설정합니다.

SetAuxiliaryOutputFile(FileDescriptor)
사용되지 않음.

현재 구현되지 않습니다.

SetAuxiliaryOutputFile(String)
사용되지 않음.

현재 구현되지 않습니다.

SetCamera(Camera)
사용되지 않음.

녹음/녹화에 사용할 을 android.hardware.Camera 설정합니다.

SetCaptureRate(Double)

비디오 프레임 캡처 속도를 설정합니다.

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
SetInputSurface(Surface)

SURFACE 비디오 원본을 사용할 때 영구 표면을 사용하도록 레코더를 구성합니다.

SetLocation(Single, Single)

출력 파일에 지오데이타(위도 및 경도)를 설정하고 저장합니다.

SetMaxDuration(Int32)

기록 세션의 최대 기간(밀리초)을 설정합니다.

SetMaxFileSize(Int64)

기록 세션의 최대 파일 크기(바이트)를 설정합니다.

SetNextOutputFile(File)

이전 출력 또는 #setNextOutputFile)에서 최대 파일화에 도달할 때 사용할 다음 출력 #setOutputFile 파일을 설정합니다.

SetNextOutputFile(FileDescriptor)

이전 출력 또는 #setNextOutputFile)에서 최대 파일화에 도달할 때 사용할 다음 출력 #setOutputFile 파일 설명자를 설정합니다.

SetOnErrorListener(MediaRecorder+IOnErrorListener)

기록하는 동안 오류가 발생할 때 호출할 콜백을 등록합니다.

SetOnInfoListener(MediaRecorder+IOnInfoListener)

기록하는 동안 정보 이벤트가 발생할 때 호출할 콜백을 등록합니다.

SetOrientationHint(Int32)

출력 비디오 재생에 대한 방향 힌트를 설정합니다.

SetOutputFile(File)

쓸 파일 개체를 전달합니다.

SetOutputFile(FileDescriptor)

쓸 파일의 파일 설명자를 전달합니다.

SetOutputFile(String)

생성할 출력 파일의 경로를 설정합니다.

SetOutputFormat(OutputFormat)

기록 중에 생성된 출력 파일의 형식을 설정합니다.

SetPreferredDevice(AudioDeviceInfo)

이 MediaRecorder에서 입력을 AudioDeviceInfo 라우팅할 오디오 디바이스(개체를 통해)를 지정합니다.

SetPreferredMicrophoneDirection(MicDirection)

논리 마이크(처리용)를 지정합니다.

SetPreferredMicrophoneFieldDimension(Single)

확대/축소 인수를 지정합니다(i.

SetPreviewDisplay(Surface)

녹화된 미디어의 미리 보기를 표시하도록 Surface를 설정합니다(비디오).

SetProfile(CamcorderProfile)

기록을 위해 CamcorderProfile 개체의 설정을 사용합니다.

SetVideoEncoder(VideoEncoder)

녹화에 사용할 비디오 인코더를 설정합니다.

SetVideoEncodingBitRate(Int32)

녹화에 대한 비디오 인코딩 비트 속도를 설정합니다.

SetVideoEncodingProfileLevel(MediaCodecProfileType, Int32)

원하는 비디오 인코딩 프로필 및 녹화 수준을 설정합니다.

SetVideoFrameRate(Int32)

캡처할 비디오의 프레임 속도를 설정합니다.

SetVideoProfile(EncoderProfiles+VideoProfile)

녹화를 위해 VideoProfile 개체의 설정을 사용합니다.

SetVideoSize(Int32, Int32)

캡처할 비디오의 너비와 높이를 설정합니다.

SetVideoSource(VideoSource)

녹화에 사용할 비디오 원본을 설정합니다.

Start()

setOutputFile()으로 지정된 파일에 대한 데이터 캡처 및 인코딩을 시작합니다.

Stop()

기록을 중지합니다.

ToArray<T>()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterAudioRecordingCallback(AudioManager+AudioRecordingCallback)

이전에 에 등록된 오디오 녹음 콜백의 등록을 취소합니다 #registerAudioRecordingCallback(Executor, AudioManager.AudioRecordingCallback).

UnregisterFromRuntime()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
Wait()

현재 스레드가 각성될 때까지 대기하도록 합니다. 일반적으로 <알림을<> 받>거나<<> 중단/em>합니다.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 깨어날 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 중단</>em>>을 받거나 <일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 깨어날 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 중단</>em>>을 받거나 <일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)

이벤트

Error

오디오 및 비디오를 녹음하는 데 사용됩니다.

Info

오디오 및 비디오를 녹음하는 데 사용됩니다.

RoutingChanged

오디오 및 비디오를 녹음하는 데 사용됩니다.

명시적 인터페이스 구현

IJavaPeerable.Disposed()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.DisposeUnlessReferenced()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

오디오 및 비디오를 녹음하는 데 사용됩니다.

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

오디오 및 비디오를 녹음하는 데 사용됩니다.

GetJniTypeName(IJavaPeerable)

오디오 및 비디오를 녹음하는 데 사용됩니다.

적용 대상