邏輯頻道號---DVB NIT LCN
阿新 • • 發佈:2017-08-23
lcd alt class logic 展開 結構 ans .com 技術分享 先介紹NIT,NIT描述如下:
支持的描述符如下:
LCN存在於NIT表中,描述符TAG=0x83,不過version2.0 好像TAG=0x87,並且語法結構也做了修改。
描述符基本結構如下:
根據描述符的基本結構如下:一個LCN應該占4字節32bit
那麽就根據結構來分析一下吧:這裏的N==8
在分析之前,看看它的PAT表吧
根據PAT可以看出總共8個節目
1. 03 f2 c0 01 service_id //16bit 是 03 f2 這個不正好是上面的program_number=0x03f2嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x001 2.13 c4 c0 02 service_id //16bit 是 13 c4 這個不正好是上面的program_number=0x13c4嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x002 3.03 66 c0 62 service_id //16bit 是 03 66 這個不正好是上面的program_number=0x0366嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x062 4. 11 a8 40 00 service_id //16bit 是 11 a8 這個好像沒有0x11a8這個臺,所以LCN也沒有,可能也正常吧 visible_service_flag//1bit 0 難道visible_service_flag 可以控制是否有臺? reserved //5bit logical_channel_number//10bit LCN = 0x0
5. 11 9e 40 00 service_id //16bit 是 11 9e 這個好像沒有0x11 9e這個臺,所以LCN也沒有,可能也正常吧 visible_service_flag//1bit 0 reserved //5bit logical_channel_number//10bit LCN = 0x0
6. 11 c6 40 00 service_id //16bit 是 11 c6 這個不正好是上面的program_number=0x11 c6嗎 visible_service_flag//1bit 0 但是這個臺RTK沒有搜到 reserved //5bit logical_channel_number//10bit LCN = 0x0 7. 14 32 c0 63 service_id //16bit 是 14 32 這個不正好是上面的program_number=0x14 32嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x63 8. 03 70 c0 61 service_id //16bit 是 03 70 這個不正好是上面的program_number=0x03 70嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x61 例如泰國的LCN,註意一下幾點: 1、泰國LCN,original_network_id = 0x22fc,標識泰國運營商的流。 2、NIT descriptor_tag = 0x83,為LCN描述符,DVB標準。 3、LCN描述符中的service_id=program_number(PAT/PMT),以此對應LCN是與哪一個節目關聯。 4、不是每個國家都要求LCN,但要求LCN的國家規則不一定相同 如符合“0x22fc”則為泰國運營商,LCN分布在1-800,否則分布為800+LCN 5、排序:LCN開關為“ON”,則按LCN排序,否則為“OFF”按program_number排序。
logical_channel_desciptor { descriptor_tag //8bit , 0x83 descriptor_length // =8bit for(i=0;i<N;i++) { service_id //16bit 對應PMT的program_numbervisible_service_flag //1bit reserved //5bit logical_channel_number //10bit } }
不同版本的LCN差異體現在logical_channel_number比特位的不同,NORDIG-Unified_ver_2.1版本中LCD V1的描述子結構為:
logical_channel_desciptor { descriptor_tag //8bit , 0x83 descriptor_length //當然,還有其他描述,此處不一一列舉。以上兩種TAG是一樣的,都是0x83 下面看一張,帶LCN的實例Svt_1.ts,這是一張NIT表,LCN就在transport_streams裏,展開如下 找到transport_descriptors裏的descriptor_tag==0x83 這個描述的就是LCN 把descriptor_data 數據放大:leng為32字節如下: 03 f2 c0 01 13 c4 c0 02 03 66 c0 62 11 a8 40 00 11 9e 40 00 11 c6 40 00 14 32 c0 63 03 70 c0 61=8bit for(i=0;i<N;i++) { service_id //16bit 對應PMT表的program_number visible_service_flag //1bit reserved //1bit logical_channel_number //14bit } }
1. 03 f2 c0 01 service_id //16bit 是 03 f2 這個不正好是上面的program_number=0x03f2嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x001 2.13 c4 c0 02 service_id //16bit 是 13 c4 這個不正好是上面的program_number=0x13c4嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x002 3.03 66 c0 62 service_id //16bit 是 03 66 這個不正好是上面的program_number=0x0366嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x062 4. 11 a8 40 00 service_id //16bit 是 11 a8 這個好像沒有0x11a8這個臺,所以LCN也沒有,可能也正常吧 visible_service_flag//1bit 0 難道visible_service_flag 可以控制是否有臺? reserved //5bit logical_channel_number//10bit LCN = 0x0
5. 11 9e 40 00 service_id //16bit 是 11 9e 這個好像沒有0x11 9e這個臺,所以LCN也沒有,可能也正常吧 visible_service_flag//1bit 0 reserved //5bit logical_channel_number//10bit LCN = 0x0
6. 11 c6 40 00 service_id //16bit 是 11 c6 這個不正好是上面的program_number=0x11 c6嗎 visible_service_flag//1bit 0 但是這個臺RTK沒有搜到 reserved //5bit logical_channel_number//10bit LCN = 0x0 7. 14 32 c0 63 service_id //16bit 是 14 32 這個不正好是上面的program_number=0x14 32嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x63 8. 03 70 c0 61 service_id //16bit 是 03 70 這個不正好是上面的program_number=0x03 70嗎 visible_service_flag//1bit 1 reserved //5bit logical_channel_number//10bit LCN = 0x61 例如泰國的LCN,註意一下幾點: 1、泰國LCN,original_network_id = 0x22fc,標識泰國運營商的流。 2、NIT descriptor_tag = 0x83,為LCN描述符,DVB標準。 3、LCN描述符中的service_id=program_number(PAT/PMT),以此對應LCN是與哪一個節目關聯。 4、不是每個國家都要求LCN,但要求LCN的國家規則不一定相同 如符合“0x22fc”則為泰國運營商,LCN分布在1-800,否則分布為800+LCN 5、排序:LCN開關為“ON”,則按LCN排序,否則為“OFF”按program_number排序。
LCN的國家及頻道表:
邏輯頻道號---DVB NIT LCN