DDNet documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
video.h
Go to the documentation of this file.
1
#ifndef ENGINE_SHARED_VIDEO_H
2
#define ENGINE_SHARED_VIDEO_H
3
4
#include <cstdint>
5
#include <functional>
6
7
typedef
std::function<void(
short
*pFinalOut,
unsigned
Frames)>
ISoundMixFunc
;
8
9
class
IVideo
10
{
11
public
:
12
virtual
~IVideo
() =
default
;
13
14
virtual
bool
Start
() = 0;
15
virtual
void
Stop
() = 0;
16
virtual
void
Pause
(
bool
Pause
) = 0;
17
virtual
bool
IsRecording
()
const
= 0;
18
19
virtual
void
NextVideoFrame
() = 0;
20
virtual
void
NextVideoFrameThread
() = 0;
21
22
virtual
void
NextAudioFrame
(
ISoundMixFunc
Mix) = 0;
23
virtual
void
NextAudioFrameTimeline
(
ISoundMixFunc
Mix) = 0;
24
25
virtual
int64_t
Time
()
const
= 0;
26
virtual
float
LocalTime
()
const
= 0;
27
virtual
void
SetLocalStartTime
(int64_t LocalStartTime) = 0;
28
29
static
IVideo
*
Current
() {
return
ms_pCurrentVideo
; }
30
31
protected
:
32
static
IVideo
*
ms_pCurrentVideo
;
33
};
34
35
#endif
IVideo
Definition
video.h:10
IVideo::NextVideoFrame
virtual void NextVideoFrame()=0
IVideo::Pause
virtual void Pause(bool Pause)=0
IVideo::SetLocalStartTime
virtual void SetLocalStartTime(int64_t LocalStartTime)=0
IVideo::IsRecording
virtual bool IsRecording() const =0
IVideo::NextAudioFrame
virtual void NextAudioFrame(ISoundMixFunc Mix)=0
IVideo::NextVideoFrameThread
virtual void NextVideoFrameThread()=0
IVideo::LocalTime
virtual float LocalTime() const =0
IVideo::ms_pCurrentVideo
static IVideo * ms_pCurrentVideo
Definition
video.h:32
IVideo::Stop
virtual void Stop()=0
IVideo::Start
virtual bool Start()=0
IVideo::~IVideo
virtual ~IVideo()=default
IVideo::Current
static IVideo * Current()
Definition
video.h:29
IVideo::NextAudioFrameTimeline
virtual void NextAudioFrameTimeline(ISoundMixFunc Mix)=0
IVideo::Time
virtual int64_t Time() const =0
ISoundMixFunc
std::function< void(short *pFinalOut, unsigned Frames)> ISoundMixFunc
Definition
video.h:7
src
engine
shared
video.h
Generated by
1.18.0