@
hfx9 Co je to za otázku a proč to potřebuješ vědět? Nestačí ti fakt, že to funguje?
OK, je to asi takto - platí to o příjmu z DVB, při příjmu IPTV to (částečně) funguje trochu jinak:
1. Klient pošle Tvheadend serveru požadavek na
program.
2.
Program si vybere (podle priority)
service, která daný TV kanál, tedy PS (program stream), obsahuje
3.
Service si vybere
mux, který daný PS (program stream) obsahuje
4.
Mux se podívá, jestli už nějaký přijímač přijímá TS (transport stream), který požadovaný PS (program stream) obsahuje
5. pokud je odpověď na 4. ANO,
mux si vybere PS (program stream) a ten pošle
service a ta zase
program a server ho začne posílat klientovi v parametrech podle zvoleného profilu.
KONEC - server posílá klientovi daný PS (program steram)
6. pokud je odpověď na 4. NE,
mux se podívá se jestli má ještě nějaký volný přijímač s TS (transport stream), který požadovaný PS (program stream) obsahuje. Pokud ANO, začne ho přijímat a jsme v bodě 5. pokud NE jde se na bod 2. vybere si další
service v pořadí. Když už
program další
service nemá (defaultně má
program přiřazenu pouze jednu
service), nahlásí klientovi, že žádný volný přijímač nemá.
KONEC - server klientovi nic neposílá
Na místě klienta si můžeš představit i funkci recorder-u Tvehadend. Z tohoto pohledu je to vlastně další klient.
Lineárně se to popisuje dost špatně, snad je to pochopitelné. Pokud ne, tak to zkusím popsat ještě jinak.
Z pohledu TS (transport stream) a PS (program stream) je to tak, že přijímač přijímá TS, který obsahuje několik PS. Přijímač může v jednom okamžiku přijímat pouze jeden TS (multiplex nebo síť z pohledu DVB). Pokud tedy už nějaký přijímač přijímá TS ve které je požadovaný PS, tak se použije tento, pokud ale požadovaný PS v přijímaném TS není, musí se použít další přijímač.
Jinak rozdíl mezi DVB a IPTV je asi následující. U DVB je v jednom
mux jeden TS, ale v každé TS je více PS. U IPTV je v jednom
mux vždy pouze jeden PS.