MediaX
v1.0.0rc7 [7e6cb74]
Video streaming for military vehicles
Loading...
Searching...
No Matches
rtph264_depayloader.h
Go to the documentation of this file.
1
2
//
3
// Copyright (c) 2025, Astute Systems PTY LTD
4
//
5
// This file is part of the VivoeX project developed by Astute Systems.
6
//
7
// Licensed under the Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)
8
// License. See the LICENSE file in the project root for full license details.
9
//
14
15
#ifndef H264_VAAPI_RTPH264_DEPAYLOADER_H_
16
#define H264_VAAPI_RTPH264_DEPAYLOADER_H_
17
18
#include <vector>
19
21
namespace
mediax::rtp::h264::vaapi
{
22
24
class
RtpH264VaapiDepayloader
:
public
RtpDepayloader
{
25
public
:
30
RtpH264VaapiDepayloader
() =
default
;
31
36
~RtpH264VaapiDepayloader
() final;
37
44
RtpH264VaapiDepayloader
&operator=(const
RtpH264VaapiDepayloader
&other) {
return
*
this
; }
45
51
RtpH264VaapiDepayloader
(
RtpH264VaapiDepayloader
&&other) =
delete
;
52
58
void
SetStreamInfo
(const ::mediax::rtp::StreamInformation &stream_information)
final
;
59
66
bool
Open
() final;
67
72
void
Start
() final;
73
78
void
Stop
() final;
79
84
void
Close
() final;
85
94
bool
Receive
(
mediax
::rtp::
RtpFrameData
*data, int32_t timeout = 0) final;
95
100
void
NewFrame
();
101
102
private:
104
GstElement *
pipeline_
;
106
bool
new_rx_frame_
= false;
107
};
108
109
}
// namespace mediax::rtp::h264::vaapi
110
111
#endif
// H264_VAAPI_RTPH264_DEPAYLOADER_H_
mediax::rtp::RtpDepayloader
Manage an RTP stream.
Definition
rtp_depayloader.h:61
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader
A RTP payloader for H.264 DEF-STAN 00-82 video streams.
Definition
rtph264_depayloader.h:24
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::Close
void Close() final
Close the RTP stream.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::RtpH264VaapiDepayloader
RtpH264VaapiDepayloader(RtpH264VaapiDepayloader &&other)=delete
Construct a new RtpH264Depayloader object (Deleted)
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::Stop
void Stop() final
Stop the stream, can be quickly re-started.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::NewFrame
void NewFrame()
Set new frame available.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::Start
void Start() final
Start the stream.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::~RtpH264VaapiDepayloader
~RtpH264VaapiDepayloader() final
Destroy the Rtpvraw Depayloader object.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::Receive
bool Receive(mediax::rtp::RtpFrameData *data, int32_t timeout=0) final
Recieve a frame or timeout.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::pipeline_
GstElement * pipeline_
The GStreamer pipeline.
Definition
rtph264_depayloader.h:104
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::Open
bool Open() final
Open the RTP stream.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::new_rx_frame_
bool new_rx_frame_
A flag indication a new frame is available.
Definition
rtph264_depayloader.h:106
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::SetStreamInfo
void SetStreamInfo(const ::mediax::rtp::StreamInformation &stream_information) final
Configure at RTP input stream and dont wait for the SAP/SDP announcement.
mediax::rtp::h264::vaapi::RtpH264VaapiDepayloader::RtpH264VaapiDepayloader
RtpH264VaapiDepayloader()=default
Construct a new Rtpvraw Depayloader object.
mediax::rtp::h264::vaapi
The MediaX Intel Video Accelleration API (VAAPI) namespace.
Definition
rtph264_depayloader.cc:24
mediax
The Astute Systems (MediaX) library for video streaming.
Definition
rtp_av1_depayloader.cc:34
mediax::rtp::RtpFrameData
The RTP callback data.
Definition
rtp_types.h:201
src
h264
vaapi
rtph264_depayloader.h
Generated by
1.9.8