Untested merge of master.
[dcpomatic.git] / src / lib / audio_source.h
index 5a1510d3ce5fd242980d88ead686d249a5efed42..dd248071651fbbc0e7c1b497e9cfcdf39c899970 100644 (file)
  *  @brief Parent class for classes which emit audio data.
  */
 
-#ifndef DVDOMATIC_AUDIO_SOURCE_H
-#define DVDOMATIC_AUDIO_SOURCE_H
+#ifndef DCPOMATIC_AUDIO_SOURCE_H
+#define DCPOMATIC_AUDIO_SOURCE_H
 
 #include <boost/signals2.hpp>
 
 class AudioBuffers;
 class AudioSink;
+class TimedAudioSink;
 
 /** A class that emits audio data */
 class AudioSource
@@ -39,4 +40,15 @@ public:
        void connect_audio (boost::shared_ptr<AudioSink>);
 };
 
+
+/** A class that emits audio data with timestamps */
+class TimedAudioSource
+{
+public:
+       /** Emitted when some audio data is ready */
+       boost::signals2::signal<void (boost::shared_ptr<AudioBuffers>, double)> Audio;
+
+       void connect_audio (boost::shared_ptr<TimedAudioSink>);
+};
+
 #endif