From cf2986c68f20e7cfb1c8dbe457a17038c57eff37 Mon Sep 17 00:00:00 2001
From: Warren Dukes <warren.dukes@gmail.com>
Date: Sat, 20 Mar 2004 14:27:35 +0000
Subject: average bitrate for mp4's

git-svn-id: https://svn.musicpd.org/mpd/trunk@325 09075e82-0dd4-0310-85a5-a0d7c8717e4f
---
 src/mp3_decode.c | 2 +-
 src/mp4_decode.c | 3 +++
 src/ogg_decode.c | 2 +-
 3 files changed, 5 insertions(+), 2 deletions(-)

(limited to 'src')

diff --git a/src/mp3_decode.c b/src/mp3_decode.c
index ede0af6e3..ec495b002 100644
--- a/src/mp3_decode.c
+++ b/src/mp3_decode.c
@@ -409,7 +409,7 @@ int mp3ChildSendData(mp3DecodeData * data, Buffer * cb, DecoderControl * dc) {
 #endif
 	memcpy(cb->chunks+cb->end*CHUNK_SIZE,data->outputBuffer,CHUNK_SIZE);
 	cb->chunkSize[cb->end] = data->outputPtr-data->outputBuffer;
-	cb->bitRate[cb->end] = data->bitRate/1000;
+	cb->bitRate[cb->end] = data->bitRate/1024;
 	cb->times[cb->end] = data->elapsedTime;
 
 	cb->end++;
diff --git a/src/mp4_decode.c b/src/mp4_decode.c
index 19b076845..587f437f3 100644
--- a/src/mp4_decode.c
+++ b/src/mp4_decode.c
@@ -98,6 +98,7 @@ int mp4_decode(Buffer * cb, AudioFormat * af, DecoderControl * dc) {
 	long seekTableEnd = -1;
 	int seekPositionFound = 0;
 	long offset;
+	mpd_uint16 bitRate;
 
 	fh = fopen(dc->file,"r");
 	if(!fh) {
@@ -155,6 +156,7 @@ int mp4_decode(Buffer * cb, AudioFormat * af, DecoderControl * dc) {
 	af->sampleRate = sampleRate;
 	af->channels = channels;
 	time = mp4ff_get_track_duration_use_offsets(mp4fh,track);
+	bitRate = mp4ff_get_avg_bitrate(mp4fh,track);
 	scale = mp4ff_time_scale(mp4fh,track);
 
 	if(mp4Buffer) free(mp4Buffer);
@@ -260,6 +262,7 @@ int mp4_decode(Buffer * cb, AudioFormat * af, DecoderControl * dc) {
 				memcpy(cb->chunks+cb->end*CHUNK_SIZE+chunkLen,
 						sampleBuffer,size);
 				cb->times[cb->end] = time;
+				cb->bitRate[cb->end] = bitRate/1024;
 				sampleBuffer+=size;
 				chunkLen+=size;
 				if(chunkLen>=CHUNK_SIZE) {
diff --git a/src/ogg_decode.c b/src/ogg_decode.c
index 1aaa4d6be..7fe3dfeb6 100644
--- a/src/ogg_decode.c
+++ b/src/ogg_decode.c
@@ -122,7 +122,7 @@ int ogg_decode(Buffer * cb, AudioFormat * af, DecoderControl * dc)
 				chunkpos = 0;
 				cb->times[cb->end] = ov_time_tell(&vf);
 				if((test = ov_bitrate_instant(&vf))>0) {
-					bitRate = test/1000;
+					bitRate = test/1024;
 				}
 				cb->bitRate[cb->end] = bitRate;
 				cb->end++;
-- 
cgit v1.2.3