POutputVideoStream Class Reference

Detailed Description

The POutputVideoStream class represents an output video streams like a video file, a network socket or simply a screen display.

To create a POutputVideoSteam, use the Open() factory.

Definition at line 33 of file POutputVideoStream.h.

#include <POutputVideoStream.h>

Constructor & Destructor Documentation

◆ POutputVideoStream() [1/2]

POutputVideoStream::POutputVideoStream ( )

Constructs an empty (no stream) video stream recorder; use POutputVideoStream::Open() factory to open an output video stream.

IsOpened() will return false.

See also
Open()

◆ POutputVideoStream() [2/2]

POutputVideoStream::POutputVideoStream ( const POutputVideoStream other)

Constructs a shared copy of other.

◆ ~POutputVideoStream()

virtual POutputVideoStream::~POutputVideoStream ( )
virtual

Destroys this object; the stream will be automatically closed.

See also
Close()

Member Function Documentation

◆ Close()

PResult POutputVideoStream::Close ( )

Closes this video stream.

Returns PResult::C_OK if success, another result otherwise.

See also
OpenVideoStream()

◆ GetUri()

PUri POutputVideoStream::GetUri ( ) const

Returns the URI corresponding to this stream.

◆ IsEmpty()

bool POutputVideoStream::IsEmpty ( ) const

Returns true if this output video stream is empty (output no video stream), false otherwise.

◆ IsOpened()

bool POutputVideoStream::IsOpened ( ) const

Returns true if the video stream has been successfully opened and is ready for writing, false otherwise.

◆ Open() [1/2]

static PResult POutputVideoStream::Open ( const PString uri,
POutputVideoStream outputVideoStream 
)
static

Factory: creates and opens an output video stream from the specified URI (this method is a factory).

By default, this factory will use the first plugin that can handle the specified URI.

Preferred encoding tool can be specified in the URI using "encode_with" parameter:

POutputVideoStream::Open("out.mp4?encode_with=ffmpeg", ovs);

Returns PResult::C_OK if success, another result otherwise.

This function is a shortcut for PPluginManagerOutputVideoStream::GetInstance().OpenOutputVideoStream(...).

◆ Open() [2/2]

static PResult POutputVideoStream::Open ( const PPlugin plugin,
const PUri uri,
POutputVideoStream outputVideoStream 
)
static

Factory: creates and opens an output video stream from the specified URI (this method is a factory).

To open the video stream, the specified plugin will be used.

Preferred encoding tool can be specified in the URI using "encode_with" parameter:

POutputVideoStream::Open("out.mp4?encode_with=ffmpeg", ovs);

Returns PResult::C_OK if success, another result otherwise.

This function is a shortcut for PPluginManagerOutputVideoStream::GetInstance().OpenOutputVideoStream(...).

◆ OpenVideoStream()

PResult POutputVideoStream::OpenVideoStream ( )

Opens/re-opens this video stream.

Returns PResult::C_OK if success, another result otherwise.

See also
Close()

◆ operator=()

POutputVideoStream& POutputVideoStream::operator= ( const POutputVideoStream other)

Performs a shared copy of other to this object.

◆ PutFrame()

PResult POutputVideoStream::PutFrame ( const PFrame frame,
papillon::int32  timeOutMs = 10000 
) const

Writes the specified frame to this video stream.

The method is blocking (synchronous). Returns PResult::C_OK if success, another result otherwise.