diff --git a/doc/html/changelog.html b/doc/html/changelog.html
index e9a2c699..c1b7086d 100644
--- a/doc/html/changelog.html
+++ b/doc/html/changelog.html
@@ -125,7 +125,7 @@
libFLAC++:
- - (none)
+ - Added FLAC::Decoder::Stream::get_decode_position()
diff --git a/include/FLAC++/decoder.h b/include/FLAC++/decoder.h
index 72b3eddc..719f66c5 100644
--- a/include/FLAC++/decoder.h
+++ b/include/FLAC++/decoder.h
@@ -139,6 +139,7 @@ namespace FLAC {
virtual unsigned get_bits_per_sample() const; ///< See FLAC__stream_decoder_get_bits_per_sample()
virtual unsigned get_sample_rate() const; ///< See FLAC__stream_decoder_get_sample_rate()
virtual unsigned get_blocksize() const; ///< See FLAC__stream_decoder_get_blocksize()
+ virtual bool get_decode_position(FLAC__uint64 *position) const; ///< See FLAC__stream_decoder_get_decode_position()
virtual ::FLAC__StreamDecoderInitStatus init(); ///< Seek FLAC__stream_decoder_init_stream()
virtual ::FLAC__StreamDecoderInitStatus init_ogg(); ///< Seek FLAC__stream_decoder_init_ogg_stream()
diff --git a/src/libFLAC++/stream_decoder.cpp b/src/libFLAC++/stream_decoder.cpp
index 38946952..fee69ba0 100644
--- a/src/libFLAC++/stream_decoder.cpp
+++ b/src/libFLAC++/stream_decoder.cpp
@@ -159,6 +159,12 @@ namespace FLAC {
return ::FLAC__stream_decoder_get_blocksize(decoder_);
}
+ bool Stream::get_decode_position(FLAC__uint64 *position) const
+ {
+ FLAC__ASSERT(is_valid());
+ return ::FLAC__stream_decoder_get_decode_position(decoder_, position);
+ }
+
::FLAC__StreamDecoderInitStatus Stream::init()
{
FLAC__ASSERT(is_valid());