Use SRC_LINEAR for speed when analysing audio (#685).
[dcpomatic.git] / src / lib / resampler.h
index 4ee11a7f0954958e69a99bf09be75196394838c3..f51c3cdb57a3a889e4af224edb22e6975b5ab89d 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2015 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
+#include "types.h"
+#include <samplerate.h>
 #include <boost/shared_ptr.hpp>
 #include <boost/utility.hpp>
-extern "C" {
-#include <libswresample/swresample.h>
-}
-#include "types.h"
-#include "audio_content.h"
 
 class AudioBuffers;
 
 class Resampler : public boost::noncopyable
 {
 public:
-       Resampler (int, int, int);
+       Resampler (int, int, int, bool fast);
        ~Resampler ();
 
        boost::shared_ptr<const AudioBuffers> run (boost::shared_ptr<const AudioBuffers>);
        boost::shared_ptr<const AudioBuffers> flush ();
 
-private:       
-       SwrContext* _swr_context;
+private:
+       SRC_STATE* _src;
        int _in_rate;
        int _out_rate;
        int _channels;