parse only running service

git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@862 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
satbaby
2010-10-25 08:31:28 +00:00
parent 0bbc628100
commit a1759cbfc8

View File

@@ -433,20 +433,21 @@ int parse_current_sdt( const t_transport_stream_id p_transport_stream_id, const
original_network_id = (buffer[8] << 8) | buffer[9];
for (pos = 11; pos < section_length - 1; pos += descriptors_loop_length + 5) {
tmp_free_CA_mode = -1;
service_id = (buffer[pos] << 8) | buffer[pos + 1];
EIT_schedule_flag = buffer[pos + 2] & 0x02;
EIT_present_following_flag = buffer[pos + 2] & 0x01;
running_status = buffer [pos + 3] & 0xE0;
for (unsigned short i=0; i<sidpmt.size(); i++){
if(sidpmt[i].first == service_id){
if(sidpmt[i].first == service_id && running_status == 128 ){
tmp_free_CA_mode = scan_parse_pmt( sidpmt[i].second, sidpmt[i].first );
}
}
if(tmp_free_CA_mode == -1)
if(tmp_free_CA_mode == -1){
free_CA_mode = buffer [pos + 3] & 0x10;
else
}else{
free_CA_mode = tmp_free_CA_mode;
}
descriptors_loop_length = ((buffer[pos + 3] & 0x0F) << 8) | buffer[pos + 4];
for (pos2 = pos + 5; pos2 < pos + descriptors_loop_length + 5; pos2 += buffer[pos2 + 1] + 2) {