Значит, проблема проясняется. Поставил oscam и он выдал мне более определенную ошибку. Оказывается, все дело в файле pmt2_1.tmp. Обычно, при переключении канала, в файл pmt2_1.tmp пишутся какие-то данные и mgcamd их постоянно читает. Так вот: если удалить этот файл, то mgcamd сразу перестает работать и можно созерцать надпись "Канал закодирован".
Теперь к сути проблемы. Через произвольное время работы ресивера, он при переключении канала перестает писать в файл pmt2_1.tmp какие-либо данные. То есть он имеет нулевой размер. А, как мы знаем, mgcamd читает этот файл, и, соответственно, перестает работать. Помогает перезагрузка ресивера. После перезагрузки ресивер начинает писать данные в файл pmt2_1.tmp.
Пробовал различные эмуляторы, только xcamclient игнорирует содержимое файла pmt2_1.tmp. Но смущает долгое переключение каналов и отсутствие лога.
Теперь возникшие вопросы:
1. Что это за файл?
2. Почему через произвольное время ресивер перестает писать в него данные?
3. Как побороть эту проблему без перезагрузки?
4. Можно ли настроить mgcamd или oscam, чтобы они не зависели от этого файла?
Спасибо!