implement audio device to pull directly from renderer

This commit is contained in:
itsmattkc
2021-09-25 12:44:58 -07:00
parent 35873dce01
commit 4c9863a696
14 changed files with 336 additions and 145 deletions
+11 -6
View File
@@ -32,6 +32,7 @@
#include "common/rational.h"
#include "node/output/viewer/viewer.h"
#include "panel/scope/scope.h"
#include "render/previewaudiodevice.h"
#include "render/previewautocacher.h"
#include "threading/threadticketwatcher.h"
#include "viewerdisplay.h"
@@ -240,7 +241,8 @@ private:
ViewerQueue playback_queue_;
int64_t playback_queue_next_frame_;
bool prequeuing_;
bool prequeuing_video_;
bool prequeuing_audio_;
QList<RenderTicketWatcher*> nonqueue_watchers_;
@@ -250,10 +252,12 @@ private:
PreviewAutoCacher auto_cacher_;
QTimer audio_restart_timer_;
int active_queue_jobs_;
std::unique_ptr<PreviewAudioDevice> audio_playback_device_;
std::list<RenderTicketWatcher*> audio_playback_queue_;
rational audio_playback_queue_time_;
static QVector<ViewerWidget*> instances_;
private slots:
@@ -299,11 +303,12 @@ private slots:
void Dropped(QDropEvent* event);
void AudioCacheInvalidated();
void AudioCacheValidated();
void StartAudioOutput();
void QueueNextAudioBuffer();
void ReceivedAudioBufferForPlayback();
};
}