Skip to content

Commit

Permalink
Check network ID for Freesat EIT PID
Browse files Browse the repository at this point in the history
The UK TV on satellite Astra-2, also known as Freesat, uses the non-standard
PID value 0xF02 (3842) for EIT. Check that the network ID is indeed the network
ID used by Freesat before adding the Freesat EIT PID value to the list of PIDs
to listen to.
This fixes an issue for some channels on the Hotbird 13 satellite who were
received with an additional stream from another channel on the same multiplex
that had the Freesat EID PID value.
  • Loading branch information
kmdewaal committed Dec 22, 2023
1 parent 4b8d761 commit 8ea12d4
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions mythtv/libs/libmythtv/mpeg/dvbstreamdata.cpp
Expand Up @@ -500,7 +500,8 @@ bool DVBStreamData::GetEITPIDChanges(const uint_vec_t &cur_pids,
add_pids.push_back(PID::PREMIERE_EIT_SPORT_PID);
}

if (find(cur_pids.begin(), cur_pids.end(),
if (m_desiredNetId == OriginalNetworkID::SES2 &&
find(cur_pids.begin(), cur_pids.end(),
(uint) PID::FREESAT_EIT_PID) == cur_pids.end())
{
add_pids.push_back(PID::FREESAT_EIT_PID);
Expand Down Expand Up @@ -569,7 +570,8 @@ bool DVBStreamData::GetEITPIDChanges(const uint_vec_t &cur_pids,
del_pids.push_back(PID::PREMIERE_EIT_SPORT_PID);
}

if (find(cur_pids.begin(), cur_pids.end(),
if (m_desiredNetId == OriginalNetworkID::SES2 &&
find(cur_pids.begin(), cur_pids.end(),
(uint) PID::FREESAT_EIT_PID) != cur_pids.end())
{
del_pids.push_back(PID::FREESAT_EIT_PID);
Expand Down

0 comments on commit 8ea12d4

Please sign in to comment.