OSCam-Emu (By VeRDe) ARM-MIPSEL-AARCH64
Changeset 11943
09.02.2026
dvbapi: use SERVICE_TYPE_MASK descriptor to fix CW delivery for shared services
When stream_write_cw() successfully delivers a CW to a stream client,
it returns true and prevents the same CW from being written via the
CA device (ioctl/netsend). This exclusive routing causes a CW gap
on demuxers that require CA device delivery until the next cw cycle,
because stream_write_cw() consumes the CW before the stream client
has fully disconnected.
Parse the SERVICE_TYPE_MASK descriptor (0x85) from the CA PMT to
identify whether a demux serves a stream client (type 7/8) or requires
direct CA device or netsend descrambling. For demuxers that require
CA device or netsend delivery, always write the CW via dvbapi_write_cw
regardless of whether stream_write_cw() consumed it. For stream-only
demuxers and clients that don't send descriptor 0x85, preserve the
original exclusive behavior.
Please report broken links on the forum.
Download in topposting 