summaryrefslogtreecommitdiffstats
path: root/multimedia/ogmrip/files/patch-fix_audio_overhead
blob: e19e0eef3915b8383be61480de61790dac35feb6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Fix audio overhead

Index: libogmrip/ogmrip-container.c
===================================================================
--- libogmrip/ogmrip-container.c    (révision 843)
+++ libogmrip/ogmrip-container.c    (copie de travail)
@@ -563,12 +563,15 @@
 ogmrip_container_get_audio_overhead (OGMRipContainer *container, OGMRipContainerChild *child)
 {
   glong length;
-  gint samples_per_frame, bitrate = 0;
+  gint samples_per_frame, sample_rate;
+  guint numerator, denominator;
 
   length = ogmrip_codec_get_length (child->codec, NULL);
+  sample_rate = ogmrip_audio_get_sample_rate (OGMRIP_AUDIO (child->codec));
   samples_per_frame = ogmrip_audio_get_samples_per_frame (OGMRIP_AUDIO (child->codec));
+  ogmrip_codec_get_framerate (OGMRIP_CODEC (child->codec), &numerator, &denominator);
 
-  return (gint64) length * bitrate * container->priv->overhead / (gdouble) samples_per_frame;
+  return (gint64) length * sample_rate * denominator * container->priv->overhead / (gdouble) (samples_per_frame * numerator);
 }
 
 static gint64