Subject: RE: Hepl required regarding the PAT table

From: "Regis Crinon" <[email-masked]>
Date: Thu, 18 Mar 2004 01:53:22 -0800

Hi Vinay:

This is the typical MPEG-2 Systems way to indicate that the length is
not explicitly specified in the syntax. However, it can be easily
inferred that this loop cannot take more than (section_length - 9)
bytes. (9 = 5 bytes after the  section_length field + 4 bytes of CRC at
the bottom of the section). The section length cannot exceed 1021 bytes
so this further constrains the number of iterations (no more than
(1021-9) / 4 = 253 programs can be listed in the section ). So, N <=
253. 

While I am at it, I will encourage you to buy the following book (I am
one of the authors). It includes a nice intro to MPEG-2 systems where
all this kind of stuff is already resolved for you.

The title is:

Data Broadcasting: Understanding the ATSC Data Broadcast Standard

http://www.amazon.com/exec/obidos/tg/detail/-/0071375902/qid=1079602791/
sr=1-2/ref=sr_1_2/102-4421880-4066506?v=glance&s=books

Kind regards,

Regis.

================================================

Regis J. Crinon, Ph.D.

Lead Program Manager, Core Media Processing Technologies

Windows Digital Media Division

Microsoft Corporation

One Microsoft Way

Building 50 - Office 3509

Redmond WA 98052-6399

USA

Tel: 425-707-3475

Fax: 425-936-7329

================================================

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]
On Behalf Of Vinay S.
Sent: Thursday, March 18, 2004 1:05 AM
To: [email-masked]
Subject: Hepl required regarding the PAT table

hi

 I m a newbie to DVB-RCS.While trying to get the Program map PIDs, for
the

different programs,from the PAT table,

a variable N is presented in the standard, saying that so many program

channels are present.But, I have not found any place/hint

indicating what this variable n might be? The exact context is given

below.(marked by the Arrow)

program_association_table

program_association_section()

{

      table_id 8 uimsbf

      section_syntax_indicator 1 bslbf

      '0' 1 bslbf

      reserved 2 bslbf

      section_length 12 uimsbf

      transport_stream_id 16 uimsbf

      reserved 2 bslbf

      version_number 5 uimsbf

      current_next_indicator 1 bslbf

      section_number 8 uimsbf

      last_section_number 8 uimsbf

      for (i = 0; i < N; i++)  -------------------->what is the value of
N?

      {

            program_number 16 uimsbf

            reserved 3 bslbf

            if (program_number = = '0')

            {

                  network_PID 13 uimsbf

            }

            else

            {

            program_map_PID 13 uimsbf

            }

      }

CRC_32 32 rpchof

}

with warm regards,

Vinay.S