epg present by : alex chang r&d 6 email: [email protected]

28
EPG EPG present by present by Alex Chang Alex Chang R&D 6 R&D 6 Email: Email: [email protected] [email protected]

Upload: gwendoline-park

Post on 01-Jan-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

EPGEPG

present bypresent by : : Alex ChangAlex Chang

R&D 6R&D 6

Email: [email protected]: [email protected]

Page 2: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

大 綱大 綱What is EPG?What is EPG?Transport stream and DVB-SITransport stream and DVB-SINetwork Information Table (NIT)Network Information Table (NIT)Bouquet Association Table (BAT)Bouquet Association Table (BAT)Service Description Table (SDT)Service Description Table (SDT)Event Information Table (EIT)Event Information Table (EIT)Sending TS packetsSending TS packetsTS packet structureTS packet structure結論與討論結論與討論

Page 3: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Electronic Program Guide (EPG) is a feature unique to the digital TV world.

used to entice consumers to purchase programming。

DVB-SI data consisted of EPG navigation

The protocol used to create the EPG is known as the Service Information (SI) tables

Too many service providers implement variety of technologies to achieve EPG, like binary format, file format (XML) etc.

we focus on DVB standard – DVB-SI

What is EPGWhat is EPG

Page 4: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

DVB-SI data is multiplexed together with MPEG-2 compressed A/V data streams to form TSs

The multiplexed TS must be demultiplexed in the set-top box.

DVB-SI adds information that enables set-top box to tune automatically to particular services and allows services to be grouped into categories with relevant schedule information.

Transport stream and DVB-SITransport stream and DVB-SI

Page 5: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw
Page 6: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

TS packets are derived from elementary TS packets are derived from elementary streams, service information, private data, and streams, service information, private data, and conditional access control.conditional access control.

Null transport packets are used to soak-up any Null transport packets are used to soak-up any spare multiplex capacity, which can also appear spare multiplex capacity, which can also appear in the TS.in the TS.

MPEG-2 allows a separate Service Information MPEG-2 allows a separate Service Information system to be used to complement its Program system to be used to complement its Program Specific Information (PSI)Specific Information (PSI)

Page 7: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Defined in the MPEG-2 systems specification.Defined in the MPEG-2 systems specification.Structured in the four tables:Structured in the four tables:

PAT (PID=0x0000) – indicates the location of the corresponding PAT (PID=0x0000) – indicates the location of the corresponding PMTPMT..

– – gives the location of gives the location of NITNIT.. CAT (PID=0x0001) – provides information on the CAT (PID=0x0001) – provides information on the CACA system system

used in the multiplex.used in the multiplex. PMT (PID=P) – identifies and indicates the locations of the PMT (PID=P) – identifies and indicates the locations of the

streams the make up each service and the locations of the streams the make up each service and the locations of the Program Clock ReferenceProgram Clock Reference fields for a service. fields for a service.

NIT – contains information relating to the physical organization NIT – contains information relating to the physical organization of the multiplexes carried via a given network and the relevant of the multiplexes carried via a given network and the relevant tuning information.tuning information.

Program Specific Information (PSI)

Page 8: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Provides information on available services:Provides information on available services: What frequencies carry themWhat frequencies carry them Groups services into common interest categoriesGroups services into common interest categories Information on the events in a serviceInformation on the events in a service Contains information used by network operator: which Contains information used by network operator: which

network originated the service etc.network originated the service etc.

DVB-SI’s four main tables:DVB-SI’s four main tables: NITNIT BATBAT SDTSDT EITEIT

Service Information (SI)

Page 9: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Each table is split into Each table is split into sectionssections. Each section has a . Each section has a header, and either two (SDB & EIT), or three (NIT & header, and either two (SDB & EIT), or three (NIT & BAT) loops containing descriptors specific to each table.BAT) loops containing descriptors specific to each table.The section_number beingThe section_number being incremented incremented each time a new each time a new table section is sent.table section is sent.Section_number is an 8-bit field, so the max number of Section_number is an 8-bit field, so the max number of sections per table is 256.sections per table is 256.The section length for all tables is 1021 bytes, apart from The section length for all tables is 1021 bytes, apart from the EIT which is 4096the EIT which is 4096The descriptors carry information relevant to its function.The descriptors carry information relevant to its function.BAT and SDT can be carried on the same PID.BAT and SDT can be carried on the same PID.Table information changes are notified by incrementing Table information changes are notified by incrementing the section version number.the section version number.

Service Information (SI)

Page 10: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

DVB Service Information Table Structure

Page 11: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Network Information TableNetwork Information Table

NIT sections always use PID 10hexNIT sections always use PID 10hex

Each network described is identified by its Each network described is identified by its network_id.network_id.

NIT table_id has one of two values: NIT table_id has one of two values: 40hex – for sections describing the current network40hex – for sections describing the current network 41hex – for section describing other networks41hex – for section describing other networks This allows rapid translation of information at Network This allows rapid translation of information at Network

boundaries, e.g. moving from satellite to cable TV boundaries, e.g. moving from satellite to cable TV networknetwork

Page 12: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

NIT structure

Network descriptor loop carries network wide information: -- linkage_descriptor provides links to other services describing the network.

For example, if the STB is tuned to one rf channel, and the user requests a service on a different channel. The frequency for this channel is contained in this loop

transport stream loop identifies each stream carried.

Inner transport stream descriptor loop contains network information on each transport stream

Page 13: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Bouquet Association TableBouquet Association Table

Allows the grouping of common interest services Allows the grouping of common interest services in the EPGin the EPGProvides a list of services for each bouquet as Provides a list of services for each bouquet as well as the name of the bouquet.well as the name of the bouquet.A particular service can belong to one or more A particular service can belong to one or more bouquets.bouquets.BAT sections identified by the BAT table_id BAT sections identified by the BAT table_id 4Ahex4AhexThe bouquet_id identifies which bouquet it The bouquet_id identifies which bouquet it described (e.g. sports services).described (e.g. sports services).

Page 14: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

BAT structure

bouquet descriptor loop contains bouquet wide information, like its name and its country availability.

For example, a bouquet specially for sportschannels; with the transport stream looplisting all streams containing sports; the stream descriptor loop listing all sport services contained in each stream.

transport stream loop lists all the streams relevant to this bouquet. its contents being identical to the NIT transport stream loop.

Inner transport stream descriptor loop lists all services in that transport stream.

Page 15: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Service Description TableService Description Table

Contains data describing the services in a transport Contains data describing the services in a transport stream, e.g., the names of services, the service provider, stream, e.g., the names of services, the service provider, etc.etc.Lists the names and other parameters associated with Lists the names and other parameters associated with each service in a multiplex.each service in a multiplex.SDT table_id has one of two values: SDT table_id has one of two values:

42hex – for section describing the current transport stream42hex – for section describing the current transport stream 46hex – for section describing another transport stream46hex – for section describing another transport stream

The header contains global information.The header contains global information. ex. Transport stream idex. Transport stream id original network idoriginal network id section numbersection number version numberversion number

Page 16: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

SDT structure

service loop identifies each service (via the service_id)

inner service descriptor loop contains detailed information on each service listed in the outer loop.

a unique descriptor in the DVB-SDT is the Mosaic function. This allows information (still images, MPEG-2 clips etc.) on all services (or events) to be displayed on one screen.

Page 17: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Event Information Table (1/2)Event Information Table (1/2)Include present/following and schedule tablesInclude present/following and schedule tablesContains data concerning events such as event name, start time, Contains data concerning events such as event name, start time, duration, etc.duration, etc.Carried on PID 12hex.Carried on PID 12hex.Has the same structure as the SDT, but four different types of Has the same structure as the SDT, but four different types of EIT section can exist: EIT section can exist:

Actual transport streamActual transport stream Other transport streamOther transport stream

Present/following Present/following eventevent

Contains info on current Contains info on current and next event availableand next event availabletable_id=4Ehextable_id=4Ehex

Contains info on current Contains info on current and next event available and next event available for a diff TSfor a diff TSTable_id=4FhexTable_id=4Fhex

Event scheduleEvent schedule Contains info on several Contains info on several events following current events following current event.event.Table_id=50hex~5FhexTable_id=50hex~5Fhex

Contains info on several Contains info on several events following current events following current event for a diff TSevent for a diff TSTable_id=60hex~6FhexTable_id=60hex~6Fhex

Page 18: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Event Information Table (2/2)Event Information Table (2/2)The present/following EIT is distributed over two The present/following EIT is distributed over two sections:sections:

Section_number 00hex – reserved for presentSection_number 00hex – reserved for present Section_number 01hex – reserved for followingSection_number 01hex – reserved for following

The 256 sections per table are divided into 32 The 256 sections per table are divided into 32 segments of 8 sections each.segments of 8 sections each.Each segment contains event information for a three Each segment contains event information for a three hour period, with segment0 of table_id50hex covering hour period, with segment0 of table_id50hex covering events from 2400hrs to 02:59:59 etc. events from 2400hrs to 02:59:59 etc. 32 segments of table_id=50hex cover a four day 32 segments of table_id=50hex cover a four day period.period.With 16 table_id’s available, a schedule/EIT covers 64 With 16 table_id’s available, a schedule/EIT covers 64 days of events.days of events.Table_id’s and section_number’s are ordered Table_id’s and section_number’s are ordered chronologically.chronologically.

Page 19: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

EIT structure

service_id, transport_stream_id and original_network_id identify the service, stream and network, the EIT section belongs to.

service_id is the same as the same as the program_number in the corresponding program_map_section

events loop lists all the events descripbed by this section, their start time, length, encryption etc.

inner descriptor loop carries detailed information on parental ratings, content description, telephone description for interactivity etc.

Page 20: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

SummarySummaryThe DVB-SI tables are transmitted in sections.The DVB-SI tables are transmitted in sections.

Each table must be segmented into one or Each table must be segmented into one or more sections with the same more sections with the same table_idtable_id as the as the table before being inserted into TS packets.table before being inserted into TS packets.

A section is a syntactic structure.A section is a syntactic structure.

Each table are limited to 1024 bytes in length, Each table are limited to 1024 bytes in length, except for sections within EIT, which are except for sections within EIT, which are limited to 4096 bytes.limited to 4096 bytes.

Each section is uniquely identified by the Each section is uniquely identified by the combination of the five fields in a section, combination of the five fields in a section, such as table_id, section_number, etc.such as table_id, section_number, etc.

Page 21: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Sending TS packetsSending TS packetsFor SI specified in *ETSI, the min time interval For SI specified in *ETSI, the min time interval between the arrival of the last byte of a between the arrival of the last byte of a section and the first byte of the next section and the first byte of the next transmitted section should be transmitted section should be 25 milliseconds25 milliseconds..

This limit applies for transport streams with a This limit applies for transport streams with a total data rate of up to 100Mb/s.total data rate of up to 100Mb/s.

A TS packet is always 188 bytes long.A TS packet is always 188 bytes long.

It comprises a 4-byte header followed by a It comprises a 4-byte header followed by a payload. The payload is 184 bytes in lengthpayload. The payload is 184 bytes in length

註 : European Telecommunications Standards InstituteEuropean Telecommunications Standards Institute

Page 22: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

A UDP Datagram Packet

Page 23: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

TS packet structureTS packet structureThe first byte is a sync-byte having the value The first byte is a sync-byte having the value 0x470x47, which is used for , which is used for the decoder to the decoder to identify the startidentify the start of each new transport packet of each new transport packetIn 2In 2ndnd and 3rd bytes, the 1st bit is and 3rd bytes, the 1st bit is transport_error_indicator, transport_error_indicator, the 2nd bit the 2nd bit is is payload_unit_start_indicatorpayload_unit_start_indicator, the 3rd bit is , the 3rd bit is transport_prioritytransport_priority, and the , and the last 13-bit is last 13-bit is PIDPIDIn 4th byte, the first two bits are In 4th byte, the first two bits are transport_scrambling_controltransport_scrambling_control, the , the second two bits are second two bits are adaptation_controladaptation_control, the last 4-bit is , the last 4-bit is continuity_countcontinuity_count

01000111byte1

01000000 00000000byte2 byte3

Trnasport_error_indicatorPayload_unit_start_indicator

Transport_priority PID

11000000

Transport_scrambling_controladaptation_control

Continuity_count

A header of a TS packet

Page 24: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw

Service Information Organization

Page 25: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw
Page 26: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw
Page 27: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw
Page 28: EPG present by : Alex Chang R&D 6 Email: alex1_chang@asus.com.tw