projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update xml_subtitle_test result now that subtitles are being compared; improve placem...
[dcpomatic.git]
/
src
/
lib
/
sndfile_decoder.h
diff --git
a/src/lib/sndfile_decoder.h
b/src/lib/sndfile_decoder.h
index 56fc3a9f08bc7811d4a6d7720992874d5a13b393..5ebe1da7b251852ee523df1e24fc9597406570f2 100644
(file)
--- a/
src/lib/sndfile_decoder.h
+++ b/
src/lib/sndfile_decoder.h
@@
-17,22
+17,32
@@
*/
*/
-#include <sndfile.h>
#include "decoder.h"
#include "audio_decoder.h"
#include "decoder.h"
#include "audio_decoder.h"
+#include "audio_examiner.h"
+#include <sndfile.h>
class SndfileContent;
class SndfileContent;
-class SndfileDecoder : public AudioDecoder
+class SndfileDecoder : public AudioDecoder
, public AudioExaminer
{
public:
{
public:
- SndfileDecoder (boost::shared_ptr<const Film>, boost::shared_ptr<const SndfileContent>);
+ SndfileDecoder (boost::shared_ptr<const SndfileContent> c);
+ ~SndfileDecoder ();
-
bool pass (
);
+
void seek (ContentTime, bool
);
-private:
-
SNDFILE* open_file (sf_count_t &)
;
-
void close_file (SNDFILE*)
;
+ int audio_channels () const;
+
ContentTime audio_length () const
;
+
int audio_frame_rate () const
;
+private:
+ bool pass ();
+
boost::shared_ptr<const SndfileContent> _sndfile_content;
boost::shared_ptr<const SndfileContent> _sndfile_content;
+ SNDFILE* _sndfile;
+ SF_INFO _info;
+ int64_t _done;
+ int64_t _remaining;
+ float* _deinterleave_buffer;
};
};