This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
software:msd:internals [2022/02/04 18:46] – removed - external edit (Unknown date) 127.0.0.1 | software:msd:internals [2022/02/04 18:54] (current) – root | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== How it works ====== | ||
+ | |||
+ | The client request goes to integrated web server.\\ | ||
+ | Settings are applied as described in section [[software: | ||
+ | |||
+ | Client socket is passed to the existing Stream Hub, or Stream Hub can be created on request.\\ | ||
+ | |||
+ | For each channel, created its own Stream Hub.\\ | ||
+ | |||
+ | To one Stream Hub can connect multiple clients.\\ | ||
+ | |||
+ | Stream Hub has a unique name by which identified. For dynamic Stream Hub is generated based on the request URL. Channels from the configuration file, it is the name of the channel.\\ | ||
+ | |||
+ | Stream Hub is bound to a single thread (thread + kqueue/ | ||
+ | Each thread is bound to the processor core. You can configure the number of threads and processor affinity.\\ | ||
+ | |||
+ | Stream Hub may have one or more sources (multicast, http etc).\\ | ||
+ | Each source has its own circular buffer (ring Buf) to receive data.\\ | ||
+ | |||
+ | Stream Hub as data become available from the active source sends data to clients from the ring buffer.\\ | ||
+ | |||
+ | New client Stream Hub can send MPEG2-TS service headers (flag [[software: | ||
+ | It is necessary to initialize the decoder client and not drop a MPEG2-TS packets in the search of a service data. Just Stream Hub can send specified in [[software: | ||
+ | |||
+ | |||
+ | ==== Types Stream Hub ==== | ||
+ | * static channels: described in the config file, may have multiple sources with different settings | ||
+ | * dynamic - multicast: compatible with udpxy by URL, for example: http:// | ||
+ | * dynamic - http: As the source stream URL acts another server, for example: http:// | ||
+ | * dynamic - transparent: | ||