MediaRecorder Klasse

Definition

Wird zum Aufzeichnen von Audio und Video verwendet.

[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
Vererbung
MediaRecorder
Attribute
Implementiert

Hinweise

Wird zum Aufzeichnen von Audio und Video verwendet. Die Aufzeichnungssteuerung basiert auf einem einfachen Zustandsautomaten (siehe unten).

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

Ein häufiger Fall der Verwendung von MediaRecorder zum Aufzeichnen von Audio funktioniert wie folgt:

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

Anwendungen möchten sich möglicherweise für Informations- und Fehlerereignisse registrieren, um während der Aufzeichnung über einige interne Update- und mögliche Laufzeitfehler informiert zu werden. Die Registrierung für solche Ereignisse erfolgt durch Festlegen der entsprechenden Listener (über Aufrufe (für #setOnInfoListener(OnInfoListener)setOnInfoListener und/oder #setOnErrorListener(OnErrorListener)setOnErrorListener). Um den entsprechenden Rückruf zu erhalten, der diesen Listenern zugeordnet ist, müssen Anwendungen MediaRecorder-Objekte in Threads erstellen, deren Looper ausgeführt wird (der Standard UI-Thread ist standardmäßig bereits mit einem Looper ausgeführt).

<strong>Hinweis:</strong> Derzeit funktioniert MediaRecorder nicht im Emulator.

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

Weitere Informationen zur Verwendung von MediaRecorder zum Aufzeichnen von Videos finden Sie im Kameraentwicklerhandbuch . Weitere Informationen zur Verwendung von MediaRecorder zum Aufzeichnen von Sound finden Sie im Entwicklerhandbuch für Audio capture .

</Div>

Java-Dokumentation für android.media.MediaRecorder.

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

MediaRecorder()

Standardkonstruktor

MediaRecorder(Context)

Standardkonstruktor

MediaRecorder(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Runtime aufgerufen.

Felder

MediaErrorServerDied
Veraltet.

Der Medienserver ist verstorben.

MediaRecorderErrorUnknown
Veraltet.

Nicht angegebener Medienrekorderfehler.

Eigenschaften

ActiveMicrophones

Gibt eine Liste von zurück MicrophoneInfo , die die aktiven Mikrofone darstellt.

ActiveRecordingConfiguration

Gibt die aktuelle aktive Audioaufzeichnung für diesen Audiorecorder zurück.

AudioSourceMax

Ruft den maximalen Wert für Audioquellen ab.

Class

Gibt die Laufzeitklasse dieses Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-instance.

(Geerbt von Object)
JniIdentityHashCode

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
JniPeerMembers

Wird zum Aufzeichnen von Audio und Video verwendet.

LogSessionId

Gibt den LogSessionId für MediaRecorder zurück. oder: Legt die LogSessionId für MediaRecorder fest.

MaxAmplitude

Gibt die maximale absolute Amplitude zurück, die seit dem letzten Aufruf dieser Methode erfasst wurde.

Metrics

Gibt Metrikdaten zum aktuellen Mediarecorder-instance zurück.

PeerReference

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
PreferredDevice

Gibt das ausgewählte Eingabegerät zurück, das von angegeben wurde #setPreferredDevice.

PrivacySensitive

Gibt zurück, ob dieser MediaRecorder in Bezug auf die Audioaufnahme als datenschutzabhängig gekennzeichnet ist. Oder: Gibt an, dass diese Erfassungsanforderung datenschutzabhängig ist und dass eine gleichzeitige Erfassung nicht zulässig ist.

RoutedDevice

Gibt eine AudioDeviceInfo zurück, die das aktuelle Routing dieses MediaRecorder-Elements identifiziert Hinweis: Die Abfrage ist nur gültig, wenn mediaRecorder gerade aufgezeichnet wird.

Surface

Ruft die Surface ab, aus der bei Verwendung der SURFACE-Videoquelle erfasst werden soll.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

Fügt eine AudioRouting.OnRoutingChangedListener hinzu, um Benachrichtigungen über Routingänderungen auf diesem MediaRecorder zu empfangen.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Dispose()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
Dispose(Boolean)

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem objekt ist.

(Geerbt von Object)
GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf den Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf den Monitor dieses Objekts warten.

(Geerbt von Object)
Pause()

Hält die Aufzeichnung an.

Prepare()

Bereitet den Aufzeichnungsrecorder auf die Erfassung und Codierung von Daten vor.

RegisterAudioRecordingCallback(IExecutor, AudioManager+AudioRecordingCallback)

Registrieren Sie einen Rückruf, um über Änderungen der Audioaufnahme über eine AudioManager.AudioRecordingCallbackbenachrichtigt zu werden.

Release()

Gibt ressourcen frei, die diesem MediaRecorder-Objekt zugeordnet sind.

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

Entfernt eine AudioRouting.OnRoutingChangedListener , die zuvor hinzugefügt wurde, um Benachrichtigungen umzuleiten.

Reset()

Startet den MediaRecorder im Leerlaufzustand neu.

Resume()

Nimmt die Aufzeichnung wieder auf.

SetAudioChannels(Int32)

Legt die Anzahl der Audiokanäle für die Aufzeichnung fest.

SetAudioEncoder(AudioEncoder)

Legt den Audioencoder fest, der für die Aufzeichnung verwendet werden soll.

SetAudioEncodingBitRate(Int32)

Legt die Audiocodierungsbitrate für die Aufzeichnung fest.

SetAudioProfile(EncoderProfiles+AudioProfile)

Verwendet die Einstellungen aus einem AudioProfile für die Aufzeichnung.

SetAudioSamplingRate(Int32)

Legt die Audio-Samplingrate für die Aufzeichnung fest.

SetAudioSource(AudioSource)

Legt die Audioquelle fest, die für die Aufzeichnung verwendet werden soll.

SetAuxiliaryOutputFile(FileDescriptor)
Veraltet.

Derzeit nicht implementiert.

SetAuxiliaryOutputFile(String)
Veraltet.

Derzeit nicht implementiert.

SetCamera(Camera)
Veraltet.

Legt einen android.hardware.Camera fest, der für die Aufzeichnung verwendet werden soll.

SetCaptureRate(Double)

Legen Sie die Videobildaufnahmerate fest.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetInputSurface(Surface)

Konfiguriert den Rekorder für die Verwendung einer persistenten Oberfläche bei Verwendung der SURFACE-Videoquelle.

SetLocation(Single, Single)

Legen Sie die Geodaten (Breiten- und Längengrad) in der Ausgabedatei fest, und speichern Sie sie.

SetMaxDuration(Int32)

Legt die maximale Dauer (in Ms) der Aufzeichnungssitzung fest.

SetMaxFileSize(Int64)

Legt die maximale Dateigröße (in Bytes) der Aufzeichnungssitzung fest.

SetNextOutputFile(File)

Legt die nächste Ausgabedatei fest, die verwendet werden soll, wenn die maximale Dateigröße in der vorherigen Ausgabe #setOutputFile oder #setNextOutputFileerreicht wird.

SetNextOutputFile(FileDescriptor)

Legt den nächsten Ausgabedateideskriptor fest, der verwendet werden soll, wenn die maximale Dateigröße in der vorherigen Ausgabe #setOutputFile oder #setNextOutputFileerreicht wird.

SetOnErrorListener(MediaRecorder+IOnErrorListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn während der Aufzeichnung ein Fehler auftritt.

SetOnInfoListener(MediaRecorder+IOnInfoListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn während der Aufzeichnung ein Informationsereignis auftritt.

SetOrientationHint(Int32)

Legt den Ausrichtungshinweis für die Ausgabevideowiedergabe fest.

SetOutputFile(File)

Übergeben Sie das zu schreibende Dateiobjekt.

SetOutputFile(FileDescriptor)

Übergeben Sie den Dateideskriptor der zu schreibenden Datei.

SetOutputFile(String)

Legt den Pfad der zu erstellenden Ausgabedatei fest.

SetOutputFormat(OutputFormat)

Legt das Format der Ausgabedatei fest, die während der Aufzeichnung erstellt wird.

SetPreferredDevice(AudioDeviceInfo)

Gibt ein Audiogerät (über ein AudioDeviceInfo -Objekt) an, um die Eingabe von diesem MediaRecorder weiterzuleiten.

SetPreferredMicrophoneDirection(MicDirection)

Gibt das logische Mikrofon (zur Verarbeitung) an.

SetPreferredMicrophoneFieldDimension(Single)

Gibt den Zoomfaktor (i.

SetPreviewDisplay(Surface)

Legt ein Surface so fest, dass eine Vorschau aufgezeichneter Medien (Video) angezeigt wird.

SetProfile(CamcorderProfile)

Verwendet die Einstellungen eines CamcorderProfile-Objekts für die Aufzeichnung.

SetVideoEncoder(VideoEncoder)

Legt den Videoencoder fest, der für die Aufzeichnung verwendet werden soll.

SetVideoEncodingBitRate(Int32)

Legt die Videocodierungsbitrate für die Aufzeichnung fest.

SetVideoEncodingProfileLevel(MediaCodecProfileType, Int32)

Legt das gewünschte Videocodierungsprofil und die Ebene für die Aufzeichnung fest.

SetVideoFrameRate(Int32)

Legt die Bildfrequenz des zu erfassenden Videos fest.

SetVideoProfile(EncoderProfiles+VideoProfile)

Verwendet die Einstellungen eines VideoProfile-Objekts für die Aufzeichnung.

SetVideoSize(Int32, Int32)

Legt die Breite und Höhe des videos fest, das aufgezeichnet werden soll.

SetVideoSource(VideoSource)

Legt die Videoquelle fest, die für die Aufzeichnung verwendet werden soll.

Start()

Beginnt mit dem Erfassen und Codieren von Daten in der datei, die mit setOutputFile() angegeben wurde.

Stop()

Beendet die Aufzeichnung.

ToArray<T>()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterAudioRecordingCallback(AudioManager+AudioRecordingCallback)

Heben Sie die Registrierung eines Audioaufzeichnungsrückrufs auf, der zuvor bei #registerAudioRecordingCallback(Executor, AudioManager.AudioRecordingCallback)registriert wurde.

UnregisterFromRuntime()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch <>Benachrichtigung</em> oder <em>interrupted</em>.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Ereignisse

Error

Wird zum Aufzeichnen von Audio und Video verwendet.

Info

Wird zum Aufzeichnen von Audio und Video verwendet.

RoutingChanged

Wird zum Aufzeichnen von Audio und Video verwendet.

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.Finalized()

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Wird zum Aufzeichnen von Audio und Video verwendet.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine Typkonvertierung mit Überprüfung der Android-Laufzeit aus.

JavaCast<TResult>(IJavaObject)

Wird zum Aufzeichnen von Audio und Video verwendet.

GetJniTypeName(IJavaPeerable)

Wird zum Aufzeichnen von Audio und Video verwendet.

Gilt für: