Class PacketSeries

Class Documentation

class PacketSeries

Container managing a series of compressed packets.

PacketSeries manages the lifetime of FFmpeg AVPacket pointers, providing safe access to compressed media data.

Public Functions

PacketSeries()

Default constructor.

~PacketSeries()

Destructor releases AVPacket resources.

explicit PacketSeries(const PacketSeries&)

Copy constructor.

PacketSeries &operator=(const PacketSeries&)

Copy assignment operator.

PacketSeries(PacketSeries &&other) noexcept

Move constructor.

PacketSeries &operator=(PacketSeries &&other) noexcept

Move assignment operator.

void push(AVPacket *packet)

Add a new packet to the series.

Parameters:

packet – AVPacket pointer to add.

const std::vector<AVPacket*> &get_packets() const

Get all packets in the series.

Returns:

Vector of AVPacket pointers.

PacketSeries clone_range(size_t start, size_t end) const

Deep-copy a range of packets and their transport metadata.

Parameters:
  • start – Start index (inclusive).

  • end – End index (exclusive).

Returns:

New packet series containing the selected range.

Generator<RawPacketData> iter_data() const

Iterate through packet data.

Returns:

Generator yielding RawPacketData for each packet.