Home
AV module

VideoPacket

Video packet for interleaved formats.

VideoPacket

#include <icy/av/packet.h>
struct VideoPacket

Defined in src/av/include/icy/av/packet.h:69

Inherits: MediaPacket Subclassed by: PlanarVideoPacket

Video packet for interleaved formats.

List of all members

NameKindOwner
widthvariableDeclared here
heightvariableDeclared here
iframevariableDeclared here
avpacketvariableDeclared here
VideoPacketfunctionDeclared here
VideoPacketfunctionDeclared here
~VideoPacketfunctionDeclared here
clonefunctionDeclared here
classNamefunctionDeclared here
timevariableInherited from MediaPacket
MediaPacketfunctionInherited from MediaPacket
MediaPacketfunctionInherited from MediaPacket
MediaPacketfunctionInherited from MediaPacket
~MediaPacketfunctionInherited from MediaPacket
clonefunctionInherited from MediaPacket
classNamefunctionInherited from MediaPacket
RawPacketfunctionInherited from RawPacket
RawPacketfunctionInherited from RawPacket
RawPacketfunctionInherited from RawPacket
~RawPacketfunctionInherited from RawPacket
clonefunctionInherited from RawPacket
copyDatafunctionInherited from RawPacket
readfunctionInherited from RawPacket
writefunctionInherited from RawPacket
datafunctionInherited from RawPacket
sizefunctionInherited from RawPacket
classNamefunctionInherited from RawPacket
ownsBufferfunctionInherited from RawPacket
_datavariableInherited from RawPacket
_sizevariableInherited from RawPacket
_ownedvariableInherited from RawPacket
operator<<friendInherited from IPacket
opaquevariableInherited from IPacket
infovariableInherited from IPacket
flagsvariableInherited from IPacket
IPacketfunctionInherited from IPacket
IPacketfunctionInherited from IPacket
operator=functionInherited from IPacket
clonefunctionInherited from IPacket
~IPacketfunctionInherited from IPacket
readfunctionInherited from IPacket
writefunctionInherited from IPacket
sizefunctionInherited from IPacket
hasDatafunctionInherited from IPacket
datafunctionInherited from IPacket
constDatafunctionInherited from IPacket
classNamefunctionInherited from IPacket
printfunctionInherited from IPacket

Inherited from MediaPacket

KindNameDescription
variabletimePresentation timestamp in microseconds.
functionMediaPacket inlineConstruct with a non-owning or owning mutable buffer.
functionMediaPacket inlineConstruct with const data (copied, owning).
functionMediaPacket inlineCopy constructor.
function~MediaPacket virtualDefaulted destructor.
functionclone virtual const inline override
functionclassName virtual const inline overrideReturns the class name of this packet type for logging and diagnostics.

Inherited from RawPacket

KindNameDescription
functionRawPacket inlineConstruct with borrowed (non-owning) buffer.
functionRawPacket inlineConstruct with const data (copied, owning).
functionRawPacket inlineCopy constructor (always copies data).
function~RawPacket virtualDefaulted destructor.
functionclone virtual const inline override
functioncopyData virtual inlineCopies data into an internally owned buffer, replacing any prior content.
functionread virtual inline overrideReads from the buffer by copying its contents into an owned buffer.
functionwrite virtual const inline overrideAppends the packet data to the given output buffer.
functiondata virtual const inline override
functionsize virtual const inline override
functionclassName virtual const inline overrideReturns the class name of this packet type for logging and diagnostics.
functionownsBuffer const inline
variable_data
variable_size
variable_owned

Inherited from IPacket

KindNameDescription
friendoperator<< inlineStream insertion operator; delegates to print().
variableopaqueOptional type-safe context data. Use std::any_cast to retrieve. Lifetime of the stored value is tied to the packet's lifetime.
variableinfoOptional extra information about the packet.
variableflagsProvides basic information about the packet.
functionIPacket inline
functionIPacket inlineCopy constructor; clones the info object if present.
functionoperator= inlineCopy assignment; clones the info object if present.
functionclone virtual constReturns a heap-allocated deep copy of this packet.
function~IPacket virtualDefaulted destructor.
functionread virtualRead/parse to the packet from the given input buffer. The number of bytes read is returned.
functionwrite virtual constCopy/generate to the packet given output buffer. The number of bytes written can be obtained from the buffer.
functionsize virtual const inlineThe size of the packet in bytes.
functionhasData virtual const inlineReturns true if the packet has a non-null data pointer.
functiondata virtual const inlineThe packet data pointer for buffered packets.
functionconstData virtual const inlineThe const packet data pointer for buffered packets.
functionclassName virtual constReturns the class name of this packet type for logging and diagnostics.
functionprint virtual const inlinePrints a human-readable representation to the given stream.

Public Attributes

ReturnNameDescription
intwidthFrame width in pixels.
intheightFrame height in pixels.
booliframeTrue if this is an intra (keyframe) frame.
AVPacket *avpacketNon-owning pointer to the encoded AVPacket from FFmpeg. Set by VideoEncoder, read by MultiplexEncoder.

width

int width

Defined in src/av/include/icy/av/packet.h:71

Frame width in pixels.


height

int height

Defined in src/av/include/icy/av/packet.h:72

Frame height in pixels.


iframe

bool iframe

Defined in src/av/include/icy/av/packet.h:73

True if this is an intra (keyframe) frame.


avpacket

AVPacket * avpacket = nullptr

Defined in src/av/include/icy/av/packet.h:77

Non-owning pointer to the encoded AVPacket from FFmpeg. Set by VideoEncoder, read by MultiplexEncoder.

Public Methods

ReturnNameDescription
VideoPacket inlineConstruct a video packet with an interleaved buffer.
VideoPacket inlineCopy constructor. The avpacket pointer is shallow-copied (non-owning).
std::unique_ptr< IPacket >clone virtual const inline override
const char *className virtual const inline overrideReturns the class name of this packet type for logging and diagnostics.

VideoPacket

inline

inline VideoPacket(uint8_t * data = nullptr, size_t size = 0, int width = 0, int height = 0, int64_t time = 0)

Defined in src/av/include/icy/av/packet.h:85

Construct a video packet with an interleaved buffer.

Parameters

  • data Pointer to the raw frame buffer (may be null).

  • size Size of the buffer in bytes.

  • width Frame width in pixels.

  • height Frame height in pixels.

  • time Presentation timestamp in microseconds.


VideoPacket

inline

inline VideoPacket(const VideoPacket & r)

Defined in src/av/include/icy/av/packet.h:95

Copy constructor. The avpacket pointer is shallow-copied (non-owning).


clone

virtual const inline override

virtual inline std::unique_ptr< IPacket > clone() const override

Defined in src/av/include/icy/av/packet.h:107

Returns

A heap-allocated copy of this packet.

Reimplements
Reimplemented by

className

virtual const inline override

virtual inline const char * className() const override

Defined in src/av/include/icy/av/packet.h:109

Returns the class name of this packet type for logging and diagnostics.

Reimplements
Reimplemented by