YARP
Yet Another Robot Platform
H264Decoder.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef H264DECODER_INC
7 #define H264DECODER_INC
8 
9 #include <mutex>
10 #include <yarp/sig/Image.h>
11 #include <yarp/os/Semaphore.h>
12 
14 {
16  crop{0,0,0,0},
17  fps_max(0),
18  remotePort(-1)
19  {}
20 
21  struct
22  {
23  int left; //number of pixel to crop from left
24  int right; //number of pixel to crop from right
25  int top; //number of pixel to crop from top
26  int bottom; //number of pixel to crop from bottom
27  } crop;
28 
29  int fps_max; //max value of fps. it is imposed by gstreamer
30  int remotePort; // the port on which the server send data
31  bool removeJitter; //If true, the carrier reorders and removes duplicate RTP packets as they are received from a network source.
32 };
33 
35 {
36 private:
37  void *sysResource;
39 
40 public:
41  std::mutex mutex ; //==>create functions to work with it
43 
45  ~H264Decoder();
46  bool init();
47  bool start();
48  bool stop();
50  int getLastFrameSize();
51  bool newFrameIsAvailable();
52  void setReq();
53 };
54 
55 #endif
bool newFrameIsAvailable()
int getLastFrameSize()
yarp::os::Semaphore semaphore
Definition: H264Decoder.h:42
std::mutex mutex
Definition: H264Decoder.h:41
H264Decoder(h264Decoder_cfgParamters &config)
yarp::sig::ImageOf< yarp::sig::PixelRgb > & getLastFrame()
A class for thread synchronization and mutual exclusion.
Definition: Semaphore.h:26
struct h264Decoder_cfgParamters::@91 crop