29 #ifndef OPENSHOT_AUDIO_PLAYBACK_THREAD_H
30 #define OPENSHOT_AUDIO_PLAYBACK_THREAD_H
32 #include "../../include/ReaderBase.h"
33 #include "../../include/RendererBase.h"
34 #include "../../include/AudioReaderSource.h"
39 using juce::WaitableEvent;
47 TimeSliceThread::run();
59 AudioDeviceManager audioDeviceManager;
60 AudioSourcePlayer player;
61 AudioTransportSource transport;
62 MixerAudioSource mixer;
81 tr1::shared_ptr<Frame> getFrame();
84 int getCurrentFramePosition();
90 void Seek(
int new_position);
99 void setSpeed(
int new_speed) {
if (source) source->
setSpeed(new_speed); }
102 int getSpeed()
const {
if (source)
return source->
getSpeed();
else return 1; }
110 #endif // OPENSHOT_AUDIO_PLAYBACK_THREAD_H
This class is used to playback a video from a reader.
The audio playback thread.
This abstract class is the base class, used by all readers in libopenshot.
The private part of QtPlayer class, which contains an audio thread and video thread, and controls the video timing and audio synchronization code.
This class is used to expose any ReaderBase derived class as an AudioSource in JUCE.
int getSpeed() const
Get Speed (The speed and direction to playback a reader (1=normal, 2=fast, 3=faster, -1=rewind, etc...)
SafeTimeSliceThread(const String &s)
void setSpeed(int new_speed)
Set Speed (The speed and direction to playback a reader (1=normal, 2=fast, 3=faster, -1=rewind, etc...)
Exception when too many seek attempts happen.