Class MediaPacket
Definition
- Namespace:
- Tizen.Multimedia
- Assembly:
- Tizen.Multimedia.dll
Represents a packet for multimedia.
public abstract class MediaPacket : IDisposable
- Inheritance
-
objectMediaPacket
- Implements
-
System.IDisposable
Properties
View SourceBuffer
Gets the buffer of the packet.
Declaration
public IMediaBuffer Buffer { get; }
Property Value
| Type | Description |
|---|---|
| IMediaBuffer | The IMediaBuffer allocated to the packet. This property will return null if the packet is in the raw video format. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
See Also
View SourceBufferFlags
Gets or sets the buffer flags of the packet.
Declaration
public MediaPacketBufferFlags BufferFlags { get; set; }
Property Value
| Type | Description |
|---|---|
| MediaPacketBufferFlags |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
BufferWrittenLength
Gets or sets a length of data written in the Buffer.
Declaration
public int BufferWrittenLength { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.ArgumentOutOfRangeException | The value specified for this property is less than zero or greater than the length of the Buffer. |
| System.InvalidOperationException | The MediaPacket has VideoPlanes instead of Buffer. |
Dts
Gets or sets the DTS(Decoding Time Stamp) value of the current packet in nanoseconds.
Declaration
public ulong Dts { get; set; }
Property Value
| Type | Description |
|---|---|
| ulong |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
Duration
Gets or sets the duration value of the current packet in nanoseconds.
Declaration
public ulong Duration { get; set; }
Property Value
| Type | Description |
|---|---|
| ulong |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
Flip
Gets or sets the flip value of the current packet.
Declaration
public Flips Flip { get; set; }
Property Value
| Type | Description |
|---|---|
| Flips |
Remarks
None will be ignored in set case. It's not supported in Native FW.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException | The specified value to set is invalid. |
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
Format
Gets the media format of the current packet.
Declaration
public MediaFormat Format { get; }
Property Value
| Type | Description |
|---|---|
| MediaFormat |
HasTbmSurface
Gets a value indicating whether the packet has TBM surface or not.
Declaration
public bool HasTbmSurface { get; }
Property Value
| Type | Description |
|---|---|
| bool | true if the packet has TBM surface; otherwise, false. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
IsDisposed
Gets a value indicating whether the packet has been disposed.
Declaration
public bool IsDisposed { get; }
Property Value
| Type | Description |
|---|---|
| bool | true if the packet has been disposed of; otherwise, false. |
IsEncoded
Gets a value indicating whether the packet is the encoded type.
Declaration
public bool IsEncoded { get; }
Property Value
| Type | Description |
|---|---|
| bool | true if the packet is the encoded type; otherwise, false. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
Pts
Gets or sets the PTS(Presentation Time Stamp) value of the current packet in nanoseconds.
Declaration
public ulong Pts { get; set; }
Property Value
| Type | Description |
|---|---|
| ulong |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
Rotation
Gets or sets the rotation value of the current packet.
Declaration
public Rotation Rotation { get; set; }
Property Value
| Type | Description |
|---|---|
| Rotation |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException | The specified value to set is invalid. |
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
| System.InvalidOperationException | The MediaPacket is not in the writable state, which means it is being used by another module. |
TbmSurface
Gets the pointer to the TBM surface object associated with the packet.
Declaration
public IntPtr TbmSurface { get; }
Property Value
| Type | Description |
|---|---|
| System.IntPtr | The pointer to the TBM surface object. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
VideoPlanes
Gets the video planes of the packet.
Declaration
public MediaPacketVideoPlane[] VideoPlanes { get; }
Property Value
| Type | Description |
|---|---|
| MediaPacketVideoPlane[] | The MediaPacketVideoPlanes allocated to the packet. This property will return null if the packet is not in the raw video format. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The MediaPacket has already been disposed. |
See Also
Methods
View SourceCreate(MediaFormat)
Creates an object of the MediaPacket with the specified MediaFormat.
Declaration
public static MediaPacket Create(MediaFormat format)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaFormat | format | The media format for the new packet. |
Returns
| Type | Description |
|---|---|
| MediaPacket | A new MediaPacket object. |
Create(MediaPacket)
Creates an object of the MediaPacket based on the original MediaPacket and increases the internal reference(hereafter ref) count by 1.
Declaration
public static MediaPacket Create(MediaPacket mediaPacket)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaPacket | mediaPacket | The media packet to increase ref count. |
Returns
| Type | Description |
|---|---|
| MediaPacket | A MediaPacket object which is based on original MediaPacket instance. |
Remarks
This method can be useful when user share MediaPacket instance to other module and don't know the exact time to dispose it.\n In this case, user creates a new instance with Create(MediaPacket) and shares it to other module.\n And then, each MediaPacket instances can be disposed independently without concerning other instance's life cycle.
Dispose()
Releases all resources used by the MediaPacket object.
Declaration
public void Dispose()
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The MediaPacket can not be disposed, which means it is being used by another module. |
Dispose(bool)
Releases the resources used by the MediaPacket object.
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. |
~MediaPacket()
Finalizes an instance of the MediaPacket class.
Declaration
protected ~MediaPacket()