add FLAC::Encoder::*::set_metadata(FLAC::Metadata::Prototype **metadata, unsigned num_blocks)

This commit is contained in:
Josh Coalson
2004-07-22 01:04:22 +00:00
parent d113ca3d2f
commit 091d84f25c
4 changed files with 38 additions and 0 deletions

View File

@@ -30,6 +30,7 @@
*/
#include "FLAC++/encoder.h"
#include "FLAC++/metadata.h"
#include "FLAC/assert.h"
#ifdef _MSC_VER
@@ -165,6 +166,17 @@ namespace FLAC {
return (bool)::FLAC__stream_encoder_set_metadata(encoder_, metadata, num_blocks);
}
bool Stream::set_metadata(FLAC::Metadata::Prototype **metadata, unsigned num_blocks)
{
FLAC__ASSERT(is_valid());
::FLAC__StreamMetadata *m[num_blocks];
for(unsigned i = 0; i < num_blocks; i++) {
// we can get away with this since we know the encoder will only correct the is_last flags
m[i] = const_cast< ::FLAC__StreamMetadata*>((::FLAC__StreamMetadata*)metadata[i]);
}
return (bool)::FLAC__stream_encoder_set_metadata(encoder_, m, num_blocks);
}
Stream::State Stream::get_state() const
{
FLAC__ASSERT(is_valid());