summaryrefslogtreecommitdiff
path: root/src/lib/decoder.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2012-07-26 22:17:58 +0100
committerCarl Hetherington <cth@carlh.net>2012-07-26 22:17:58 +0100
commit4928ece9b10df775ab3003c024f52bdd30d8f591 (patch)
tree6a0b3c008c33386e2d2ebae4b9aa59ea83149cee /src/lib/decoder.h
parent466037c8c1cd4bdb07b959b844e83a511b3bfcfa (diff)
Implemented but faulty.
Diffstat (limited to 'src/lib/decoder.h')
-rw-r--r--src/lib/decoder.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/decoder.h b/src/lib/decoder.h
index d85510470..198dfb8dc 100644
--- a/src/lib/decoder.h
+++ b/src/lib/decoder.h
@@ -29,6 +29,9 @@
#include <stdint.h>
#include <boost/shared_ptr.hpp>
#include <sigc++/sigc++.h>
+extern "C" {
+#include <libswresample/swresample.h>
+}
#include "util.h"
class Job;
@@ -65,6 +68,7 @@ public:
virtual int audio_sample_rate () const = 0;
/** @return format of audio samples */
virtual AVSampleFormat audio_sample_format () const = 0;
+ virtual int64_t audio_channel_layout () const = 0;
void process_begin ();
bool pass ();
@@ -128,10 +132,15 @@ private:
AVFilterContext* _buffer_src_context;
AVFilterContext* _buffer_sink_context;
+ SwrContext* _swr_context;
+
bool _have_setup_video_filters;
DelayLine* _delay_line;
int _delay_in_bytes;
+ /* Number of audio frames that we have pushed to the encoder
+ (at the DCP sample rate).
+ */
int _audio_frames_processed;
};