Class Recorder
Definition
- Namespace:
- Tizen.Multimedia
- Assembly:
- Tizen.Multimedia.Recorder.dll
Recorder is a base class for audio and video recorders that
provides the ability to control the recording of a multimedia content.
Simple audio and audio/video are supported.
public abstract class Recorder : IDisposable
- Inheritance
-
objectRecorder
- Derived
- Implements
-
System.IDisposable
Properties
View SourceAudioBitRate
Gets or sets the bitrate of an audio encoder in bits per second.
Declaration
public int AudioBitRate { get; set; }
Property Value
Type | Description |
---|---|
int |
Remarks
Exceptions
Type | Condition |
---|---|
System.ArgumentOutOfRangeException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
AudioChannels
Gets or sets the number of the audio channel.
Declaration
public int AudioChannels { get; set; }
Property Value
Type | Description |
---|---|
int | For mono recording, set the channel to 1. For stereo recording, set the channel to 2. |
Remarks
Exceptions
Type | Condition |
---|---|
System.ArgumentOutOfRangeException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
AudioCodec
Gets the audio codec for encoding an audio stream.
Declaration
public RecorderAudioCodec AudioCodec { get; }
Property Value
Type | Description |
---|---|
RecorderAudioCodec |
See Also
View SourceAudioDevice
Gets or sets the audio device for recording.
Declaration
public RecorderAudioDevice AudioDevice { get; set; }
Property Value
Type | Description |
---|---|
RecorderAudioDevice | A RecorderAudioDevice that specifies the type of the audio device. |
Remarks
Exceptions
Type | Condition |
---|---|
System.ArgumentException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
AudioSampleRate
Gets or sets the sampling rate of an audio stream in hertz.
Declaration
public int AudioSampleRate { get; set; }
Property Value
Type | Description |
---|---|
int |
Remarks
Exceptions
Type | Condition |
---|---|
System.ArgumentOutOfRangeException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
FileFormat
Gets the file format of the recording result.
Declaration
public RecorderFileFormat FileFormat { get; }
Property Value
Type | Description |
---|---|
RecorderFileFormat |
See Also
View SourceMuted
Gets or sets the mute state of a recorder.
Declaration
public bool Muted { get; set; }
Property Value
Type | Description |
---|---|
bool |
Exceptions
Type | Condition |
---|---|
System.ObjectDisposedException | The recorder already has been disposed of. |
SizeLimit
Gets or sets the maximum size of a recording file.
Declaration
public int SizeLimit { get; set; }
Property Value
Type | Description |
---|---|
int | The maximum size of a recording file in kilobytes, or 0 for unlimited size. |
Remarks
After reaching the limitation, the data which is being recorded will
be discarded and will not be written to the file.
To set, the recorder must be in the Idle or the Ready state.
Exceptions
Type | Condition |
---|---|
System.ArgumentOutOfRangeException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
State
Gets the current state of the recorder.
Declaration
public RecorderState State { get; }
Property Value
Type | Description |
---|---|
RecorderState | A RecorderState that specifies the state of the recorder. |
Exceptions
Type | Condition |
---|---|
System.ObjectDisposedException | The recorder already has been disposed of. |
TimeLimit
Gets or sets the time limit of recording.
Declaration
public int TimeLimit { get; set; }
Property Value
Type | Description |
---|---|
int | The time of recording in seconds, or 0 for unlimited time. |
Remarks
After reaching the limitation, the data which is being recorded will
be discarded and will not be written to the file.
To set, the recorder must be in the Idle or the Ready state.
Exceptions
Type | Condition |
---|---|
System.ArgumentOutOfRangeException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Methods
View SourceApplyAudioStreamPolicy(AudioStreamPolicy)
Apply the audio stream policy.
Declaration
public void ApplyAudioStreamPolicy(AudioStreamPolicy policy)
Parameters
Type | Name | Description |
---|---|---|
AudioStreamPolicy | policy | The policy to apply. |
Remarks
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Cancel()
Cancels the recording.
The recording data is discarded and not written in the recording file.
Declaration
public void Cancel()
Remarks
The recorder must be in the Recording or the Paused state. The state of the recorder will be the Ready after the operation.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Commit()
Stops recording and saves the result.
Declaration
public void Commit()
Remarks
The recorder must be in the Recording or the Paused state. The state of the recorder will be the Ready after the operation.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Dispose()
Releases the unmanaged resources used by the Recorder.
Declaration
public void Dispose()
Dispose(bool)
Releases the resources used by the Recorder.
Declaration
protected virtual void Dispose(bool disposing)
Parameters
Type | Name | Description |
---|---|---|
bool | disposing | true to release both managed and unmanaged resources; false to release only unmanaged resources. |
GetDeviceState(RecorderType)
Returns the state of recorder device.
Declaration
public static RecorderDeviceState GetDeviceState(RecorderType type)
Parameters
Type | Name | Description |
---|---|---|
RecorderType | type |
Returns
Type | Description |
---|---|
RecorderDeviceState |
Exceptions
Type | Condition |
---|---|
System.ArgumentException |
|
GetPeakAudioLevel()
Returns the peak audio input level in dB since the last call to this method.
Declaration
public double GetPeakAudioLevel()
Returns
Type | Description |
---|---|
double |
Remarks
0dB indicates the maximum input level, -300dB indicates the minimum input level.
The recorder must be in the Recording or the Paused state.
Exceptions
Type | Condition |
---|---|
System.ObjectDisposedException | The recorder already has been disposed of. |
GetSupportedAudioCodecs()
Gets the audio encoders that the current device supports.
Declaration
public static IEnumerable<RecorderAudioCodec> GetSupportedAudioCodecs()
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<T><RecorderAudioCodec> |
Exceptions
Type | Condition |
---|---|
System.NotSupportedException | A required feature is not supported. |
GetSupportedFileFormats()
Gets the file formats that the current device supports.
Declaration
public static IEnumerable<RecorderFileFormat> GetSupportedFileFormats()
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<T><RecorderFileFormat> |
Exceptions
Type | Condition |
---|---|
System.NotSupportedException | A required feature is not supported. |
Pause()
Pauses the recording.
Declaration
public void Pause()
Remarks
The recorder should be in the Recording state. The state of the recorder will be the Paused after this. It has no effect if the current state is the Paused.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Prepare()
Prepares the media recorder for recording.
Declaration
public void Prepare()
Remarks
The recorder should be in the Idle state. The state of the recorder will be the Ready after this. It has no effect if the current state is the Ready.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Resume()
Resumes the recording.
Declaration
public void Resume()
Remarks
The recorder should be in the Paused state. The state of recorder will be the Recording after this. It has no effect if the current state is the Recording.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Start(string)
Starts the recording.
Declaration
public void Start(string savePath)
Parameters
Type | Name | Description |
---|---|---|
string | savePath | The file path for recording result. |
Remarks
The recorder must be in the Ready state.
The state of the recorder will be the Recording after this.
If the specified path exists, the file is removed automatically and updated by new one.
The mediastorage privilege(http://tizen.org/privilege/mediastorage) is required if the path is relevant to media storage.
The externalstorage privilege(http://tizen.org/privilege/externalstorage) is required if the path is relevant to external storage.
In the video recorder, some preview format does not support record mode.
You should use the default preview format or the Nv12 in the record mode.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
System.ArgumentNullException |
|
System.ArgumentException |
|
System.UnauthorizedAccessException | Caller does not have required privilege. |
See Also
View SourceUnprepare()
Resets the media recorder.
Declaration
public void Unprepare()
Remarks
The recorder should be in the Ready state. The state of recorder will be the Idle after this. It has no effect if the current state is the Idle.
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The recorder is not in the valid state. |
System.ObjectDisposedException | The recorder already has been disposed of. |
Events
View SourceAudioStreamStoring
Occurs when the audio stream data is being delivered.
Declaration
public event EventHandler<AudioStreamStoringEventArgs> AudioStreamStoring
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><AudioStreamStoringEventArgs> |
Remarks
View SourceDeviceStateChanged
Occurs when a recorder device state changes.
Declaration
public static event EventHandler<RecorderDeviceStateChangedEventArgs> DeviceStateChanged
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecorderDeviceStateChangedEventArgs> |
ErrorOccurred
Occurs when an error occurs during the recorder operation.
Declaration
public event EventHandler<RecordingErrorOccurredEventArgs> ErrorOccurred
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecordingErrorOccurredEventArgs> |
Interrupted
Occurs after interrupt handling is completed.
Declaration
public event EventHandler<RecorderInterruptedEventArgs> Interrupted
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecorderInterruptedEventArgs> |
Interrupting
Occurs before interrupt handling is started.
Declaration
public event EventHandler<RecorderInterruptingEventArgs> Interrupting
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecorderInterruptingEventArgs> |
MuxedStreamDelivered
Occurs when the muxed stream data is being delivered.
Declaration
public event EventHandler<MuxedStreamDeliveredEventArgs> MuxedStreamDelivered
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><MuxedStreamDeliveredEventArgs> |
RecordingLimitReached
Occurs when recording limit is reached.
Declaration
public event EventHandler<RecordingLimitReachedEventArgs> RecordingLimitReached
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecordingLimitReachedEventArgs> |
Remarks
After this event is raised, the recording data is discarded and not written in the recording file.
RecordingStatusChanged
Occurs when the recording information changes.
Declaration
public event EventHandler<RecordingStatusChangedEventArgs> RecordingStatusChanged
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecordingStatusChangedEventArgs> |
StateChanged
This event occurs when the recorder state is changed.
Declaration
public event EventHandler<RecorderStateChangedEventArgs> StateChanged
Event Type
Type | Description |
---|---|
System.EventHandler<TEventArgs><RecorderStateChangedEventArgs> |