gst/mpegtsparse/mpegtspacketizer.c: The logic for the guard interval calculation...
authorZaheer Abbas Merali <zaheerabbas@merali.org>
Fri, 25 Jan 2008 09:50:07 +0000 (09:50 +0000)
committerZaheer Abbas Merali <zaheerabbas@merali.org>
Fri, 25 Jan 2008 09:50:07 +0000 (09:50 +0000)
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
The logic for the guard interval calculation was totally wrong.
Fixed.

ChangeLog
gst/mpegtsparse/mpegtspacketizer.c

index bf3b99aa103751e272f7492635e89058fb464b9d..e5a1427e15ea59d88cf7e3a7581b8bf4e40d1daf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-01-25  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+
+       * gst/mpegtsparse/mpegtspacketizer.c:
+       The logic for the guard interval calculation was totally wrong.
+       Fixed.
+
 2008-01-24  David Schleef  <ds@schleef.org>
 
        Patch by: Olivier Crete <tester@tester.ca>
index d4c050418fa8249accc6ad32d199c056b1813beb..4be21dc1b25094e356fbde9cfc6f891bc058cf89 100644 (file)
@@ -827,8 +827,6 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer * packetizer,
             DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM_other_frequency (delivery);
         gchar *constellation_str, *code_rate_hp_str, *code_rate_lp_str,
             *transmission_mode_str;
-        int i;
-
         /* do the stuff */
         /* bandwidth is 8 if 0, 7 if 1, 6 if 2, reserved otherwise */
         if (bandwidth <= 2)
@@ -896,8 +894,21 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer * packetizer,
             code_rate_lp_str = "reserved";
         }
         /* guard is 32 if 0, 16 if 1, 8 if 2, 4 if 4 */
-        for (i = 0; i < guard_interval - 4; i++) {
-          guard_interval *= 2;
+        switch (guard_interval) {
+          case 0:
+            guard_interval = 32;
+            break;
+          case 1:
+            guard_interval = 16;
+            break;
+          case 2:
+            guard_interval = 8;
+            break;
+          case 4:
+            guard_interval = 4;
+            break;
+          default:             /* make it default to 32 */
+            guard_interval = 32;
         }
         switch (transmission_mode) {
           case 0: