StormByte C++ Library: Multimedia module 0.0.9999
StormByte-Multimedia is a StormByte library module for parsing configuration files
Loading...
Searching...
No Matches
Friends | List of all members
StormByte::Multimedia::Pipeline::Item Class Reference

Facade shared by Frame and Packet. More...

#include <StormByte/multimedia/pipeline/item.hxx>

Inheritance diagram for StormByte::Multimedia::Pipeline::Item:
Inheritance graph
[legend]
Collaboration diagram for StormByte::Multimedia::Pipeline::Item:
Collaboration graph
[legend]

Public Member Functions

Identity
Kind Kind () const noexcept
 Whether this unit is a frame or a packet.
 
enum StormByte::Multimedia::Type Type () const noexcept
 Media of this access unit.
 
int Track () const noexcept
 Origin track index.
 
enum Producer Producer () const noexcept
 Stage that created this unit.
 

Friends

class Backend::Pipeline::Frame
 
class Backend::Pipeline::Packet
 
class Backend::Pipeline::Pipe
 
class Decoder
 
class Demuxer
 
class Encoder
 
class Filter::FFmpeg
 
class Frame
 
class Muxer
 
class Packet
 
class Step
 

Lifecycle

virtual ~Item () noexcept=default
 Destructor.
 
 Item (const Item &other) noexcept=default
 Copy constructor.
 
 Item (Item &&other) noexcept=default
 Move constructor.
 
Itemoperator= (const Item &other) noexcept=default
 Copy assignment.
 
Itemoperator= (Item &&other) noexcept=default
 Move assignment.
 

Detailed Description

Facade shared by Frame and Packet.

Constructor & Destructor Documentation

◆ ~Item()

virtual StormByte::Multimedia::Pipeline::Item::~Item ( )
virtualdefaultnoexcept

Destructor.

◆ Item() [1/2]

StormByte::Multimedia::Pipeline::Item::Item ( const Item other)
protecteddefaultnoexcept

Copy constructor.

Parameters
otherSource item.

◆ Item() [2/2]

StormByte::Multimedia::Pipeline::Item::Item ( Item &&  other)
protecteddefaultnoexcept

Move constructor.

Parameters
otherItem to take.

Member Function Documentation

◆ Kind()

Kind StormByte::Multimedia::Pipeline::Item::Kind ( ) const
inlinenoexcept

Whether this unit is a frame or a packet.

Returns
Kind::Frame or Kind::Packet.

◆ operator=() [1/2]

Item & StormByte::Multimedia::Pipeline::Item::operator= ( const Item other)
protecteddefaultnoexcept

Copy assignment.

Parameters
otherSource item.
Returns
*this.

◆ operator=() [2/2]

Item & StormByte::Multimedia::Pipeline::Item::operator= ( Item &&  other)
protecteddefaultnoexcept

Move assignment.

Parameters
otherItem to take.
Returns
*this.

◆ Producer()

enum Producer StormByte::Multimedia::Pipeline::Item::Producer ( ) const
inlinenoexcept

Stage that created this unit.

Returns
Value passed to the private constructor.

◆ Track()

int StormByte::Multimedia::Pipeline::Item::Track ( ) const
inlinenoexcept

Origin track index.

Returns
Input container stream index. -1 on the empty sentinel.

◆ Type()

enum StormByte::Multimedia::Type StormByte::Multimedia::Pipeline::Item::Type ( ) const
inlinenoexcept

Media of this access unit.

Returns
Video, Audio, Subtitle, or Unknown on the empty sentinel.

Friends And Related Symbol Documentation

◆ Backend::Pipeline::Frame

friend class Backend::Pipeline::Frame
friend

◆ Backend::Pipeline::Packet

friend class Backend::Pipeline::Packet
friend

◆ Backend::Pipeline::Pipe

friend class Backend::Pipeline::Pipe
friend

◆ Decoder

friend class Decoder
friend

◆ Demuxer

friend class Demuxer
friend

◆ Encoder

friend class Encoder
friend

◆ Filter::FFmpeg

friend class Filter::FFmpeg
friend

◆ Frame

friend class Frame
friend

◆ Muxer

friend class Muxer
friend

◆ Packet

friend class Packet
friend

◆ Step

friend class Step
friend

The documentation for this class was generated from the following file: