<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-forward-container">Hello,<br>
<br>
The calculation of the transport_descriptors_length field in NIT
has one extra byte than it should.<br>
<br>
I am attaching the test file used to create an NIT containing one
program. Using libdvbpsi-1.2.0.<br>
<br>
Here is the hex dump of the output file, I have bolded the invalid
byte.<br>
<br>
<tt>% hd
out.ts
</tt><tt><br>
</tt><tt> 00000000 47 40 10 10 00 40 b0 13 05 39 c3 00 00 f0 00
f0 |</tt><tt><a moz-do-not-send="true"
class="moz-txt-link-abbreviated" href="mailto:G@...@...9">G@...@...9</a></tt><tt>......|</tt><tt><br>
</tt><tt> 00000010 06 02 9a 05 39 f0 </tt><tt><b>01</b></tt><tt>
5f b2 83 b6 ff ff ff ff ff |....9.._........|</tt><tt><br>
</tt><tt> 00000020 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff |................|</tt><tt><br>
</tt><tt> *</tt><tt><br>
</tt><tt> 000000bc</tt><tt><br>
</tt><tt> </tt><br>
It should be 0x00 as there are no descriptors attached. EN 300 468
V1.13.1 explicitly states:<br>
transport_descriptors_length: This is a 12-bit field specifying
the total length in bytes of the TS descriptors <i>that follow</i>.
(emphasis mine)<br>
<br>
Curiously enough, if you create a dummy NIT containing no
programs, the highlighted byte is correctly set to 0x00.<br>
<br>
For your consideration.<br>
<br>
Thanks,<br>
Michael<br>
<br>
</div>
<br>
</body>
</html>