29 #include "../include/Clip.h" 30 #include "../include/FFmpegReader.h" 31 #include "../include/Timeline.h" 32 #include "../include/QtPlayer.h" 33 #include "../include/Qt/PlayerPrivate.h" 34 #include "../include/Qt/VideoRenderer.h" 88 if (
reader && !threads_started) {
91 threads_started =
true;
114 return p->video_position;
122 p->videoCache->Seek(new_frame);
125 p->video_position = new_frame;
128 p->last_video_position = 0;
131 p->audioPlayback->Seek(new_frame);
141 p->videoCache->Stop();
142 p->audioPlayback->Stop();
147 p->video_position = 0;
148 threads_started =
false;
156 p->reader = new_reader;
157 p->videoCache->Reader(new_reader);
158 p->audioPlayback->Reader(new_reader);
185 p->speed = new_speed;
186 p->videoCache->setSpeed(new_speed);
188 p->audioPlayback->setSpeed(new_speed);
virtual ~QtPlayer()
Default destructor.
void CloseAudioDevice()
Close audio device.
ChannelLayout channel_layout
The channel layout (mono, stereo, 5 point surround, etc...)
int width
The width of the video (in pixesl)
void SetQWidget(long long qwidget_address)
Loading the video (display a loading animation)
Stop playing the video (clear cache, done with player)
This abstract class is the base class, used by all readers in libopenshot.
PlaybackMode Mode()
Get the current mode.
This is the base class of all Players in libopenshot.
void Stop()
Stop the video player and clear the cached frames.
bool has_audio
Determines if this file has an audio stream.
This class uses the FFmpeg libraries, to open video files and audio files, and return openshot::Frame...
This class represents a clip (used to arrange readers on the timeline)
int height
The height of the video (in pixels)
void Pause()
Pause the video.
Pause the video (holding the last displayed frame)
QtPlayer()
Default constructor.
float Speed()
Get the Playback speed.
The private part of QtPlayer class, which contains an audio thread and video thread, and controls the video timing and audio synchronization code.
void AddClip(Clip *clip)
Add an openshot::Clip to the timeline.
ReaderInfo info
Information about the current media file.
Fraction fps
Frames per second, as a fraction (i.e. 24/1 = 24 fps)
virtual void OverrideWidget(long long qwidget_address)=0
Allow manual override of the QWidget that is used to display.
void Open()
Open the reader (and start consuming resources)
int Position()
Get the current frame number being played.
This namespace is the default namespace for all code in the openshot library.
float Volume()
Get the Volume.
void CloseAudioDevice()
Close audio device.
void Play()
Play the video.
PlaybackMode
This enumeration determines the mode of the video player (i.e. playing, paused, etc...)
static AudioDeviceManagerSingleton * Instance(int numChannels)
Create or get an instance of this singleton (invoke the class with this method)
void SetSource(const std::string &source)
Set the source URL/path of this player (which will create an internal Reader)
This is the base class of all Renderers in libopenshot.
void DisplayInfo()
Display file information in the standard output stream (stdout)
void Loading()
Display a loading animation.
int channels
The number of audio channels used in the audio stream.
void Seek(long int new_frame)
Seek to a specific frame in the player.
ReaderBase * Reader()
Get the current reader, such as a FFmpegReader.
long long GetRendererQObject()
Get the Renderer pointer address (for Python to cast back into a QObject)
int sample_rate
The number of audio samples per second (44100 is a common sample rate)
This class represents a timeline.