from .port import TSIPort, MemoryManager, Capturer, PortIO from .modules.capturer.video.video_capturer import VideoCapturerDP, VideoCapturerHDMI from .modules.capturer.audio.audio_capturer import AudioCapturer class RX(TSIPort): """ Class describe base capabilities of Sink (RX - receiver). This functionality is used by child classes `DPRX` and `HDRX`. You cannot use a class `RX` object directly. """ def __init__(self, port_io: PortIO, memory_manager: MemoryManager, capturer: Capturer): super().__init__(port_io, memory_manager, capturer) self.__audio_capturer = AudioCapturer(capturer) @property def audio_capturer(self) -> AudioCapturer: """ Should be used to control `AudioCapturer` on Sink (RX - receiver) role. Returns: object of `AudioCapturer` type. """ return self.__audio_capturer