Home
AV module

PlanarVideoPacket

Video packet for planar formats.

PlanarVideoPacket

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

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

Inherits: VideoPacket Subclassed by: VisionFramePacket

Video packet for planar formats.

Parameters

  • data Array of per-plane data pointers (up to 4 planes).

  • linesize Array of per-plane byte strides.

  • pixelFmt The pixel format name (e.g. "yuv420p").

  • width The frame width in pixels.

  • height The frame height in pixels.

  • time The timestamp in microseconds.

List of all members

NameKindOwner
buffervariableDeclared here
linesizevariableDeclared here
pixelFmtvariableDeclared here
owns_buffervariableDeclared here
avframevariableDeclared here
PlanarVideoPacketfunctionDeclared here
PlanarVideoPacketfunctionDeclared here
~PlanarVideoPacketfunctionDeclared here
clonefunctionDeclared here
classNamefunctionDeclared here
widthvariableInherited from VideoPacket
heightvariableInherited from VideoPacket
iframevariableInherited from VideoPacket
avpacketvariableInherited from VideoPacket
VideoPacketfunctionInherited from VideoPacket
VideoPacketfunctionInherited from VideoPacket
~VideoPacketfunctionInherited from VideoPacket
clonefunctionInherited from VideoPacket
classNamefunctionInherited from VideoPacket
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 VideoPacket

KindNameDescription
variablewidthFrame width in pixels.
variableheightFrame height in pixels.
variableiframeTrue if this is an intra (keyframe) frame.
variableavpacketNon-owning pointer to the encoded AVPacket from FFmpeg. Set by VideoEncoder, read by MultiplexEncoder.
functionVideoPacket inlineConstruct a video packet with an interleaved buffer.
functionVideoPacket inlineCopy constructor. The avpacket pointer is shallow-copied (non-owning).
function~VideoPacket 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 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
uint8_t *buffer
intlinesize
std::stringpixelFmt
boolowns_buffer
AVFrame *avframeNon-owning pointer to the decoded AVFrame from FFmpeg. Set by VideoDecoder.

buffer

uint8_t * buffer = {nullptr}

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


linesize

int linesize = {0}

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


pixelFmt

std::string pixelFmt

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


owns_buffer

bool owns_buffer = false

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


avframe

AVFrame * avframe = nullptr

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

Non-owning pointer to the decoded AVFrame from FFmpeg. Set by VideoDecoder.

Public Methods

ReturnNameDescription
PlanarVideoPacketConstruct a planar video packet, copying the plane pointers (not the pixel data).
PlanarVideoPacketCopy constructor. Performs a deep copy of the owned buffer if owns_buffer is set.
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.

PlanarVideoPacket

PlanarVideoPacket(uint8_t * data, const int linesize, const std::string & pixelFmt = "", int width = 0, int height = 0, int64_t time = 0)

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

Construct a planar video packet, copying the plane pointers (not the pixel data).

Parameters

  • data Array of up to 4 per-plane data pointers.

  • linesize Array of per-plane byte strides.

  • pixelFmt The pixel format string (e.g. "yuv420p").

  • width Frame width in pixels.

  • height Frame height in pixels.

  • time Presentation timestamp in microseconds.


PlanarVideoPacket

PlanarVideoPacket(const PlanarVideoPacket & r)

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

Copy constructor. Performs a deep copy of the owned buffer if owns_buffer is set.


clone

virtual const inline override

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

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

Returns

A heap-allocated deep 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:149

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

Reimplements
Reimplemented by