一般情况下,1套节目是否加扰 在SDT表中或者包头的加扰位2处判断。
1.SDT表的free_CA_mode=0是未加密,1是加密;在SDT表中,只是一个规范(如果节目加密了,应该让free_CA_mode=1)。实际上,这里是否加密不影响用vlc播出这套节目内容的。
2.包头的transport_scrambling_control=0未加扰,其他值为加扰。一般情况下,这里加扰了,这个流就不能通过vlc播出节目来的了。
transport_scrambling_control
字段用于指示TS包有效负载的加密模式,也就是是否加扰。这个字段位于TS包头的第3个字节(从0开始计数),并且占用2位(bit 4和5)。
transport_scrambling_control
字段的取值及其代表的含义如下:
'00'
:未加扰(Not scrambled)。这表示TS包的有效负载没有被加扰。'01'
到'11'
:保留值。在当前的MPEG-2 TS标准中,这些值被保留用于未来使用,当前没有定义具体的加扰模式。
(还要注意的是,TS流中的加扰通常是基于整个流或特定的PID(Packet Identifier)进行的,而不是针对单个TS包。因此,即使某个TS包的transport_scrambling_control
字段表示该包未加扰,如果该包所属的流或PID被加扰,那么该包的有效负载仍然可能是加扰的。)