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()