projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add primitive description of what the playlist is doing. Add missing de-interleave...
[dcpomatic.git]
/
src
/
lib
/
sndfile_decoder.h
diff --git
a/src/lib/sndfile_decoder.h
b/src/lib/sndfile_decoder.h
index c06b97a609aae1d73ff5ed4557d5d22104345de5..64bd2f7f53a4de574bafa48911936c3955a4169a 100644
(file)
--- a/
src/lib/sndfile_decoder.h
+++ b/
src/lib/sndfile_decoder.h
@@
-26,13
+26,20
@@
class SndfileContent;
class SndfileDecoder : public AudioDecoder
{
public:
class SndfileDecoder : public AudioDecoder
{
public:
- SndfileDecoder (boost::shared_ptr<const Film>, boost::shared_ptr<SndfileContent>, DecodeOptions);
+ SndfileDecoder (boost::shared_ptr<const Film>, boost::shared_ptr<const SndfileContent>);
+ ~SndfileDecoder ();
bool pass ();
bool pass ();
-private:
-
SNDFILE* open_file (sf_count_t &)
;
-
void close_file (SNDFILE*)
;
+ int audio_channels () const;
+
ContentAudioFrame audio_length () const
;
+
int audio_frame_rate () const
;
- boost::shared_ptr<SndfileContent> _sndfile_content;
+private:
+ boost::shared_ptr<const SndfileContent> _sndfile_content;
+ SNDFILE* _sndfile;
+ SF_INFO _info;
+ ContentAudioFrame _done;
+ ContentAudioFrame _remaining;
+ float* _deinterleave_buffer;
};
};