|
vdr-plugin-softhddevice-drm-gles 1.7.3-98a2ef7
|
Video Renderer (Display) More...
#include <cerrno>#include <chrono>#include <cinttypes>#include <cstdint>#include <mutex>#include <vector>#include <assert.h>#include <gbm.h>#include <EGL/egl.h>#include <libavcodec/avcodec.h>#include <libavutil/hwcontext_drm.h>#include <drm_fourcc.h>#include <vdr/osd.h>#include <vdr/remux.h>#include <vdr/thread.h>#include <xf86drmMode.h>#include "audio.h"#include "config.h"#include "drmdevice.h"#include "drmhdr.h"#include "grab.h"#include "logger.h"#include "misc.h"#include "queue.h"#include "softhddevice.h"#include "statemachine.h"#include "videorender.h"#include "videostream.h"Go to the source code of this file.
Classes | |
| struct | sRect |
Functions | |
| static sRect | ComputeFittedRect (AVFrame *frame, uint64_t dispX, uint64_t dispY, uint64_t dispWidth, uint64_t dispHeight) |
| Fits the video frame into a given area. | |
| static void | ClearSoftOsd (cDrmBuffer *buf) |
| Internal function to clear the software OSD. | |
| static void | DrawSoftOsd (cDrmBuffer *buf, int xi, int yi, int width, int height, int pitch, const uint8_t *argb, int x, int y) |
| Internal function to draw an OSD ARGB image in software. | |
| static void | ReleaseFrame (__attribute__((unused)) void *opaque, uint8_t *data) |
| Callback free primedata if av_buffer is unreferenced. | |
Video Renderer (Display)
This file defines cVideoRender, which includes all methods to bring the video and osd to display.
Definition in file videorender.cpp.
|
static |
Internal function to clear the software OSD.
| buf | drm buffer which holds the OSD |
Definition at line 884 of file videorender.cpp.
Referenced by cVideoRender::OsdClear().
|
static |
Fits the video frame into a given area.
| frame | AVFrame with frame dimensions and aspect ratio information |
| dispX | x offset of video area |
| dispY | y offset of video area |
| dispWidth | width of video area |
| dispHeight | height of video area |
Definition at line 135 of file videorender.cpp.
Referenced by cVideoRender::SetPipBuffer(), and cVideoRender::SetVideoBuffer().
|
static |
Internal function to draw an OSD ARGB image in software.
Definition at line 892 of file videorender.cpp.
References L_OSD, and LOGDEBUG2.
Referenced by cVideoRender::OsdDraw().
Callback free primedata if av_buffer is unreferenced.
Definition at line 990 of file videorender.cpp.
Referenced by cDecodingStrategySoftware::PrepareDrmBuffer().