![]() |
MediaX v1.0.0rc7 [7e6cb74]
Video streaming for military vehicles
|
Manage an RTP stream. More...
#include <rtp_payloader.h>
Public Member Functions | |
RtpPayloader ()=default | |
Construct a new Rtp Payloader object. | |
virtual | ~RtpPayloader ()=default |
Destroy the Rtp Payloader object. | |
RtpPayloader (RtpPayloader const &)=delete | |
Construct a new Rtp Payloader object. | |
RtpPayloader & | operator= (RtpPayloader const &)=delete |
Construct a new Rtp Payloader object. | |
virtual void | SetStreamInfo (const ::mediax::rtp::StreamInformation &stream_information)=0 |
Configure an RTP output stream. | |
virtual bool | Open ()=0 |
Open the RTP stream. | |
virtual void | Close ()=0 |
Close the RTP stream. | |
virtual void | Stop () |
Stop a stream so it can be quickly restarted. Do not close. | |
virtual void | Start () |
Restart a stopped stream. | |
virtual int | Transmit (uint8_t *rgbframe, bool blocking=true)=0 |
Transmit an RGB buffer. | |
mediax::rtp::ColourspaceType | GetColourSpace () const |
Get the Colour Space object of the incoming stream. | |
void | SetColourSpace (mediax::rtp::ColourspaceType colourspace) |
Set the Colour Space object. | |
uint32_t | GetHeight () const |
Get the Height object of the incoming stream. | |
void | SetHeight (uint32_t height) |
Set the Height object. | |
uint32_t | GetWidth () const |
Get the Width object of the incoming stream. | |
void | SetWidth (uint32_t width) |
Set the Width object. | |
uint32_t | GetFrameRate () const |
Get the Frame Rate of the incoming stream. | |
void | SetFrameRate (uint32_t framerate) |
Set the Frame Rate object. | |
std::string | GetIpAddress () const |
Get the Ip Address of the incoming stream. | |
void | SetIpAddress (std::string_view ip_address) |
Set the Ip Address object. | |
uint32_t | GetPort () const |
Get the Port of the incoming stream. | |
void | SetPort (uint32_t port) |
Set the Port object. | |
std::vector< uint8_t > & | GetBuffer () |
Get the Buffer object. | |
uint32_t | GetBufferSize () const |
Get the Buffer Size object. | |
void | SetBufferSize (uint32_t size) |
Set the Buffer Size object. | |
Protected Member Functions | |
::mediax::rtp::RtpPortType & | GetEgressPort () |
Get the Egress Port object. | |
Private Attributes | |
::mediax::rtp::RtpPortType | egress_ |
Egress port. | |
std::vector< uint8_t > | frame_ |
Data buffer. | |
Manage an RTP stream.
|
pure virtual |
Close the RTP stream.
Implemented in mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h264::RtpH264Payloader, mediax::rtp::h264::nvenc::RtpH264Payloader, mediax::rtp::h264::vaapi::RtpH264VaapiPayloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader, and mediax::rtp::uncompressed::RtpUncompressedPayloader.
|
inline |
Get the Buffer object.
|
inline |
Get the Buffer Size object.
mediax::rtp::ColourspaceType mediax::rtp::RtpPayloader::GetColourSpace | ( | ) | const |
Get the Colour Space object of the incoming stream.
|
protected |
Get the Egress Port object.
uint32_t mediax::rtp::RtpPayloader::GetFrameRate | ( | ) | const |
Get the Frame Rate of the incoming stream.
uint32_t mediax::rtp::RtpPayloader::GetHeight | ( | ) | const |
Get the Height object of the incoming stream.
std::string mediax::rtp::RtpPayloader::GetIpAddress | ( | ) | const |
Get the Ip Address of the incoming stream.
uint32_t mediax::rtp::RtpPayloader::GetPort | ( | ) | const |
Get the Port of the incoming stream.
uint32_t mediax::rtp::RtpPayloader::GetWidth | ( | ) | const |
Get the Width object of the incoming stream.
|
pure virtual |
Open the RTP stream.
Implemented in mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h264::RtpH264Payloader, mediax::rtp::h264::nvenc::RtpH264Payloader, mediax::rtp::h264::vaapi::RtpH264VaapiPayloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader, and mediax::rtp::uncompressed::RtpUncompressedPayloader.
|
delete |
Construct a new Rtp Payloader object.
|
inline |
Set the Buffer Size object.
size |
void mediax::rtp::RtpPayloader::SetColourSpace | ( | mediax::rtp::ColourspaceType | colourspace | ) |
Set the Colour Space object.
colourspace |
void mediax::rtp::RtpPayloader::SetFrameRate | ( | uint32_t | framerate | ) |
Set the Frame Rate object.
framerate |
void mediax::rtp::RtpPayloader::SetHeight | ( | uint32_t | height | ) |
Set the Height object.
height |
void mediax::rtp::RtpPayloader::SetIpAddress | ( | std::string_view | ip_address | ) |
Set the Ip Address object.
ip_address |
void mediax::rtp::RtpPayloader::SetPort | ( | uint32_t | port | ) |
Set the Port object.
port |
|
pure virtual |
Configure an RTP output stream.
stream_information | set the stream information |
Implemented in mediax::rtp::uncompressed::RtpUncompressedPayloader, mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, and mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader.
void mediax::rtp::RtpPayloader::SetWidth | ( | uint32_t | width | ) |
Set the Width object.
width |
|
virtual |
Restart a stopped stream.
Reimplemented in mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h264::RtpH264Payloader, mediax::rtp::h264::nvenc::RtpH264Payloader, mediax::rtp::h264::vaapi::RtpH264VaapiPayloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, and mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader.
|
virtual |
Stop a stream so it can be quickly restarted. Do not close.
Reimplemented in mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h264::RtpH264Payloader, mediax::rtp::h264::nvenc::RtpH264Payloader, mediax::rtp::h264::vaapi::RtpH264VaapiPayloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, and mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader.
|
pure virtual |
Transmit an RGB buffer.
rgbframe | pointer to the frame data |
blocking | defaults to true, will wait till frame has been transmitted |
Implemented in mediax::rtp::av1::gst::RtpAv1GstPayloader, mediax::rtp::h264::gst::nvidia::RtpH264GstNvidiaPayloader, mediax::rtp::h264::gst::omx::RtpH264GstOmxPayloader, mediax::rtp::h264::gst::open::RtpH264GstOpenPayloader, mediax::rtp::h264::gst::vaapi::RtpH264GstVaapiPayloader, mediax::rtp::h264::gst::x264::RtpH264Gstx264Payloader, mediax::rtp::h264::RtpH264Payloader, mediax::rtp::h264::nvenc::RtpH264Payloader, mediax::rtp::h264::vaapi::RtpH264VaapiPayloader, mediax::rtp::h265::gst::RtpH265GstPayloader, mediax::rtp::h265::gst::vaapi::RtpH265GstVaapiPayloader, mediax::rtp::jpeg::gst::RtpJpegGstPayloader, mediax::rtp::jpeg::gst::vaapi::RtpJpegGstVaapiPayloader, and mediax::rtp::uncompressed::RtpUncompressedPayloader.