14#ifndef OPENSHOT_PLAYER_PRIVATE_H
15#define OPENSHOT_PLAYER_PRIVATE_H
17#include "../ReaderBase.h"
18#include "../RendererBase.h"
19#include "../AudioReaderSource.h"
20#include "../Qt/AudioPlaybackThread.h"
21#include "../Qt/VideoPlaybackThread.h"
22#include "../Qt/VideoCacheThread.h"
34 std::shared_ptr<openshot::Frame> frame;
35 std::mutex frame_mutex;
36 std::atomic<uint64_t> seek_generation{0};
37 int64_t playback_frames;
38 std::atomic<int64_t> video_position;
39 int64_t audio_position;
44 std::atomic<int> speed;
47 std::atomic<int64_t> last_video_position;
49 std::atomic<bool> is_dirty;
63 void Seek(int64_t new_position);
69 std::shared_ptr<openshot::Frame> getFrame();
The audio playback thread.
The private part of QtPlayer class, which contains an audio thread and video thread,...
friend struct AudioPlaybackThreadTestAccess
The parent class of PlayerPrivate.
This class is used to playback a video from a reader.
This abstract class is the base class, used by all readers in libopenshot.
This is the base class of all Renderers in libopenshot.
Handles prefetching and caching of video/audio frames for smooth playback.
The video playback class.
This namespace is the default namespace for all code in the openshot library.