summaryrefslogtreecommitdiff
path: root/plugins/flac
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-03-29 21:28:56 +0200
committerGravatar waker <wakeroid@gmail.com>2011-03-29 21:28:56 +0200
commit8b4d6a0305d4be44462dc75cf93aa711edb80909 (patch)
tree685bb4bfbf4a519508146c0d9cb3d20bdd0b85ab /plugins/flac
parent28c0121f51dce3dbf22e206ca7dd2d29f28f21d7 (diff)
fixed flac regression
Diffstat (limited to 'plugins/flac')
-rw-r--r--plugins/flac/flac.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/plugins/flac/flac.c b/plugins/flac/flac.c
index 5904c75d..6c136e9d 100644
--- a/plugins/flac/flac.c
+++ b/plugins/flac/flac.c
@@ -39,10 +39,10 @@ typedef struct {
FLAC__StreamDecoder *decoder;
char *buffer; // this buffer always has float samples
int remaining; // bytes remaining in buffer from last read
- int startsample;
- int endsample;
- int currentsample;
- int totalsamples;
+ int64_t startsample;
+ int64_t endsample;
+ int64_t currentsample;
+ int64_t totalsamples;
int flac_critical_error;
int init_stop_decoding;
int tagsize;
@@ -165,6 +165,7 @@ static void
cflac_metadata_callback(const FLAC__StreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data) {
DB_fileinfo_t *_info = (DB_fileinfo_t *)client_data;
flac_info_t *info = (flac_info_t *)_info;
+ info->totalsamples = metadata->data.stream_info.total_samples;
_info->fmt.samplerate = metadata->data.stream_info.sample_rate;
_info->fmt.channels = metadata->data.stream_info.channels;
_info->fmt.bps = metadata->data.stream_info.bits_per_sample;