Browse Source

mpegtsenc: set reserved bits to 1 in PCR field

The reserved bits between PCR base and extension fields must be
set to 1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 535638b55f83ad47e4680883e87b97e69d0847e5)
Georgi Chorbadzhiyski 14 years ago
parent
commit
4c9bfe3e4e
2 changed files with 2 additions and 2 deletions
  1. 1 1
      libavformat/mpegtsenc.c
  2. 1 1
      tests/ref/lavf/ts

+ 1 - 1
libavformat/mpegtsenc.c

@@ -573,7 +573,7 @@ static uint8_t* write_pcr_bits(uint8_t *buf, int64_t pcr)
     *buf++ = pcr_high >> 17;
     *buf++ = pcr_high >> 9;
     *buf++ = pcr_high >> 1;
-    *buf++ = ((pcr_high & 1) << 7) | (pcr_low >> 8);
+    *buf++ = pcr_high << 7 | pcr_low >> 8 | 0x7e;
     *buf++ = pcr_low;
 
     return buf;

+ 1 - 1
tests/ref/lavf/ts

@@ -1,3 +1,3 @@
-e0c183639709d6e75bc553a3ed1333dd *./tests/data/lavf/lavf.ts
+90e770ba5ec0506bd66cd44511e173a3 *./tests/data/lavf/lavf.ts
 406644 ./tests/data/lavf/lavf.ts
 ./tests/data/lavf/lavf.ts CRC=0x133216c1