mirror of
https://git.videolan.org/git/ffmpeg.git
synced 2024-08-09 02:45:45 +02:00
In mpegts "reserved_future_use" field must be set to 1 in SDT table
According to EN 300 468 section 3.1 (Definitions): Unless otherwise specified within the present document all "reserved_future_use" bits is set to "1". This was not the case for SDT generation so this patch fixes it. Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
This commit is contained in:
parent
3c802cabba
commit
a7827a17c6
@ -128,6 +128,8 @@ static int mpegts_write_section1(MpegTSSection *s, int tid, int id,
|
|||||||
{
|
{
|
||||||
uint8_t section[1024], *q;
|
uint8_t section[1024], *q;
|
||||||
unsigned int tot_len;
|
unsigned int tot_len;
|
||||||
|
/* reserved_future_use field must be set to 1 for SDT */
|
||||||
|
unsigned int flags = tid == SDT_TID ? 0xf000 : 0xb000;
|
||||||
|
|
||||||
tot_len = 3 + 5 + len + 4;
|
tot_len = 3 + 5 + len + 4;
|
||||||
/* check if not too big */
|
/* check if not too big */
|
||||||
@ -136,7 +138,7 @@ static int mpegts_write_section1(MpegTSSection *s, int tid, int id,
|
|||||||
|
|
||||||
q = section;
|
q = section;
|
||||||
*q++ = tid;
|
*q++ = tid;
|
||||||
put16(&q, 0xb000 | (len + 5 + 4)); /* 5 byte header + 4 byte CRC */
|
put16(&q, flags | (len + 5 + 4)); /* 5 byte header + 4 byte CRC */
|
||||||
put16(&q, id);
|
put16(&q, id);
|
||||||
*q++ = 0xc1 | (version << 1); /* current_next_indicator = 1 */
|
*q++ = 0xc1 | (version << 1); /* current_next_indicator = 1 */
|
||||||
*q++ = sec_num;
|
*q++ = sec_num;
|
||||||
|
Loading…
Reference in New Issue
Block a user