2020 рдореЗрдВ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЖрд░рдЯреАрдПрд╕рдкреА рдХреИрд╕реЗ рдкрдХрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдХреНрдпреЛрдВ рдмреЛрдЕрд░реНрд╕ рдХреЛ рджреВрд░ рднрд╛рдЧрдиреЗ рдХрд╛ рдореМрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛


рдЖрд░рдЯреАрдПрд╕рдкреА рдПрдХ рд╕рд░рд▓ рд╕рд┐рдЧреНрдирд▓рд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИ рдЬрд┐рд╕реЗ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рд╕реЗ рдмрджрд▓ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдард┐рди рдкреНрд░рдпрд╛рд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред


рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЖрдИрдкреА рдХреИрдорд░рд╛ рд╣реИ рдЬреЛ рдЖрд░рдЯреАрдПрд╕рдкреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЬрд┐рд╕ рдХрд┐рд╕реА рдиреЗ рднреА рд╢рд╛рд░реНрдХрд╡рд╛рдпрд░ рдХреЗрдмрд▓ рдХреЗ рд╕рд╛рде рдЯреНрд░реИрдлрд╝рд┐рдХ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рд╡рд╣ рдЖрдкрдХреЛ рдмрддрд╛рдПрдЧрд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╡рд╣рд╛рдВ DESCRIBE рдЖрддрд╛ рд╣реИ, рдлрд┐рд░ PLAY рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЯреНрд░реИрдлрд╝рд┐рдХ рдЖрд░рдЯреАрдкреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реАрдзреЗ рдбрд╛рд▓рдирд╛ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдпрд╛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЯреАрд╕реАрдкреА рдЪреИрдирд▓ рдореЗрдВ рд▓рд┐рдкрдЯрд╛ рд╣реЛрддрд╛ рд╣реИред


RTSP рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:



рдпрд╣ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ RTSP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣реИ рдФрд░ рдкрд╛рдВрдЪрд╡реЗрдВ рдкрд╣рд┐рдпреЗ рдЬрд┐рддрдирд╛ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЗрд╕реЗ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЬрд▓реНрджреА рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдпрд╣ рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╣реЛрдЧрд╛ред рджреВрд╕рд░реА рдУрд░, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдкреНрд░рддреНрдпрдХреНрд╖ рдЯреАрд╕реАрдкреА рдХрдиреЗрдХреНрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдм рдпрд╣ рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЙрдарддрд╛ рд╣реИ: рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдРрд╕рд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рджреЗрдЦрд╛ рд╣реИ рдЬреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕реАрдзреЗ рдкрд░рд┐рд╡рд╣рди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛?


рд▓реЗрдХрд┐рди рд▓реЛрдЧреЛрдВ рдХреА рдорд╛рдВрдЧ рд╣реИ рдХрд┐ рдзрд╛рд░рд╛рдПрдВ "рдХрд┐рд╕реА рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ" рдЙрдкрд▓рдмреНрдз рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдФрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрд░реНрд╕ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, "рдЖрдкрдХреЛ рдХреБрдЫ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛", рдЬрдм рд╡реЗ рдЖрдИрдкреА тАЛтАЛрдХреИрдорд░рд╛ рд╕реЗ рдПрдХ рд╕реНрдЯреНрд░реАрдо рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред


рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдЧрд╛рдореА рд╡рд░реНрд╖ рдореЗрдВ рдПрдХ рдЧреЛрд▓ рдЖрдВрдХрдбрд╝рд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЪрд▓реЛ рд╣рдорд╛рд░реЗ рд▓реЗрдЦ рдореЗрдВ рдХреБрдЫ рд╕рд╛рдордпрд┐рдХрддрд╛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ 2020 рддрдХ рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рд▓реЗрдмрд▓ рдЪрд┐рдкрдХрд╛рддреЗ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд╣реИред


рддреЛ, рдПрдХ рд╡реЗрдм рдкреЗрдЬ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рд╡реАрдбрд┐рдпреЛ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЛ 2020 рдХреЗ рд╡рд░реНрд╖ рдореЗрдВ рднреВрд▓рдирд╛ рд╣реЛрдЧрд╛? рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдлреНрд▓реИрд╢ рд╣реИред рдпрд╣ рдорд░ рдЪреБрдХрд╛ рд╣реИред рдпрд╣ рдЕрдм рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рд╕реВрдЪреА рд╕реЗ рдЗрд╕реЗ рдкрд╛рд░ рдХрд░реЗрдВред


рддреАрди рдЙрдкрдпреЛрдЧреА рд╡рд┐рдзрд┐рдпрд╛рдБ


рд╡реЗ рдЙрдкрдХрд░рдг рдЬреЛ рдЖрдЬ рдЖрдкрдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВрдЧреЗ:


  1. WebRTC
  2. HLS
  3. рд╡реЗрдмрд╕реЛрдХреЗрдЯ + рдПрдордПрд╕рдИ

WebRTC рдореЗрдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ


рджреЛ рд╢рдмреНрджреЛрдВ рдореЗрдВ: рдпрд╣ рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рдФрд░ рдЬрдЯрд┐рд▓ рд╣реИред


рдЖрдк рдЗрд╕реЗ рджреВрд░ рдХрд░реЗрдВрдЧреЗ, "рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рдирддрд╛ рд╕реЗ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ?", рдЪреВрдВрдХрд┐ рдЖрдЬрдХрд▓ рд╕реАрдкреАрдпреВ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИрдВ, рдореЗрдореЛрд░реА рд╕рд╕реНрддреА рд╣реИ, рддреЛ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ? рдареАрдХ рд╣реИ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рд╕рднреА рдпрд╛рддрд╛рдпрд╛рдд рдХрд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╣реИ рднрд▓реЗ рд╣реА рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рди рд╣реЛред рджреВрд╕рд░реЗ, рд╡реЗрдмрдЖрд░рдЯреАрд╕реА рдПрдХ рдЬрдЯрд┐рд▓ рджреЛ-рддрд░рдлрд╝рд╛ рдХрдиреЗрдХреНрд╢рди рд╣реИ рдФрд░ рдЪреИрдирд▓ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреАрдпрд░-рдЯреВ-рдкреАрдпрд░ рдлреАрдбрдмреИрдХ рдПрдХреНрд╕рдЪреЗрдВрдЬ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреАрдпрд░-рдЯреВ-рд╕рд░реНрд╡рд░): рд╕рдордп рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖рдг рдореЗрдВ рдмрд┐рдЯрд░реЗрдЯ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдкреИрдХреЗрдЯ рдХреЗ рдиреБрдХрд╕рд╛рди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВред рдЙрдирдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди, рдФрд░ рдСрдбрд┐рдпреЛ-рдЯреВ-рд╡реАрдбрд┐рдпреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЧрдгрдирд╛ рдЙрди рд╕рднреА рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рддрдерд╛рдХрдерд┐рдд рд▓рд┐рдкрд╕рд┐рдВрдХ рд╣реИ, рдЬреЛ рд╡рдХреНрддрд╛ рдХреЗ рд╣реЛрдВрдареЛрдВ рдХреЛ рдЙрдирдХреЗ рд╢рдмреНрджреЛрдВ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдЗрди рд╕рднреА рдЧрдгрдирд╛рдУрдВ, рд╕рд╛рде рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЯреНрд░реИрдлрд╝рд┐рдХ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ RAM рдХреЗ рдЖрд╡рдВрдЯрд┐рдд рдФрд░ рдореБрдлреНрдд рдЧреАрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдЧрд░ рдХреБрдЫ рднреА рдЧрд▓рдд рд╣реЛрддрд╛ рд╣реИ рддреЛ 48-рдХреЛрд░ рд╕реАрдкреАрдпреВ рдХреЗ рд╕рд╛рде 256-рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рд╕рд░реНрд╡рд░ рдЖрд╕рд╛рдиреА рд╕реЗ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЯреЗрд▓-рд╕реНрдкрд┐рди рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рдПрдЧрд╛ рдмреЛрд░реНрдб рдкрд░ рд╕рднреА рдЧрд┐рдЧрд╛рд╣рд░реНрдЬрд╝, рдиреИрдиреЛрдореАрдЯрд░ рдФрд░ рдбреАрдбреАрдЖрд░ 10ред


рддреЛ, рдпрд╣ рдПрдХ рдЗрд╕реНрдХрдВрджрд░ рдорд┐рд╕рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╢рд┐рдХрд╛рд░ рдЧрд┐рд▓рд╣рд░реА рдХреА рддрд░рд╣ рд╣реИред рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЖрд░рдЯреАрдПрд╕рдкреА рд╕реНрдЯреНрд░реАрдо рдЪреВрд╕рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ, рдФрд░ рд╡реЗрдмрдЖрд░рдЯреАрд╕реА рдЬреЛ рдХрд╣рддрд╛ рд╣реИ рд╡рд╣ рд╣реИ, "рд╣рд╛рдВ, c'mon, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рднреБрдЧрддрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред"


рдХреНрдпреЛрдВ WebRTC рдЕрдЪреНрдЫрд╛ рд╣реИ


рд╡рд┐рд▓рдВрдмрддрд╛ред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдо рд╣реИред рдпрджрд┐ рдЖрдк рдХрдо рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рддреЛ WebRTC рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╕рдВрд╕реНрдХрд░рдг рд╣реИред


рдХреНрдпреЛрдВ HLS рдЕрдЪреНрдЫрд╛ рд╣реИ


рджреЛ рд╢рдмреНрджреЛрдВ рдореЗрдВ: рдпрд╣ рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ


рдПрдЪрдПрд▓рдПрд╕ рд▓рд╛рдЗрд╡ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдПрдХ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдЪрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдСрдл-рд░реЛрдбрд░ рд╣реИред рдпрд╣ рджреЛ рдЪреАрдЬреЛрдВ рдХреЗ рдХрд╛рд░рдг рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ: HTTP-transport рдФрд░ Apple рдХрд╛ рд╕рдВрд░рдХреНрд╖рдгред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рд░реНрд╡рд╡реНрдпрд╛рдкреА рд╣реИ, рдореИрдВ рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрддреЗ рд╕рдордп рднреА рдЕрдкрдиреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдорд╣рд╕реВрд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЗрд╕рд▓рд┐рдП, рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЖрдк рдХрд╣рд╛рдВ рд╣реИрдВ рдФрд░ рдЖрдк рдиреЗрдЯ рдкрд░ рд╕рд░реНрдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕рд╛ рдкреНрд░рд╛рдЪреАрди рдЯреИрдмрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдПрдЪрдПрд▓рдПрд╕ (рдПрдЪрдЯреАрдЯреАрдкреА рд▓рд╛рдЗрд╡ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ) рдЖрдкрдХреЛ рдорд┐рд▓реЗрдЧрд╛ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдЖрдкрдХреА рд╕реНрдХреНрд░реАрди рдкрд░ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд░реЗрдЧрд╛ред


рдпрд╣ рд╕рдм рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди ...


рдХреНрдпреЛрдВ HLS рдЦрд░рд╛рдм рд╣реИ


рд╡рд┐рд▓рдВрдмрддрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрдорд╛рдг рд╕реНрдерд▓ рд╡реАрдбрд┐рдпреЛ рдирд┐рдЧрд░рд╛рдиреА рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рд╣реИрдВред рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдирд┐рд░реНрдорд╛рдгрд╛рдзреАрди рд╣реИ, рдФрд░ рдЙрд╕ рд╕рдордп рдХреЗ рджреМрд░рд╛рди рдЦрд░рд╛рдм рдХреИрдорд░рд╛ рдирд┐рд░реНрдорд╛рдг рд╕реНрдерд▓ рдХреЗ рд╡реАрдбрд┐рдпреЛ рдХреЛ рджрд┐рди рдФрд░ рд░рд╛рдд 24/7 рд░рд┐рдХреЙрд░реНрдб рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдХрдо рд╡рд┐рд▓рдВрдмрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред


рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╕реВрдЕрд░ рдХрд╛ рд╣реИред рдЕрд╕рд▓реА рд╕реВрдЕрд░ред рдУрд╣рд┐рдпреЛ рдХреЗ рдХрд┐рд╕рд╛рди рдЬрдВрдЧрд▓реА рд╕реВрдЕрд░реЛрдВ рдХреЗ рдЖрдХреНрд░рдордг рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реИрдВ рдЬреЛ рдлрд╕рд▓реЛрдВ рдкрд░ рдлрд╝реАрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЯрд┐рдбреНрдбрд┐рдпреЛрдВ рдХреА рддрд░рд╣ рдиреАрдЪреЗ рдЧрд┐рд░рд╛ рджреЗрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЦреЗрддреЛрдВ рдХреА рд╡рд┐рддреНрддреАрдп рднрд▓рд╛рдИ рдХреЗ рд▓рд┐рдП рдЦрддрд░рд╛ рдкреИрджрд╛ рдХрд░рддреЗ рд╣реИрдВред рдЙрджреНрдпрдореА рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкреНрд╕ рдиреЗ рдЖрд░рдЯреАрдПрд╕рдкреА рдХреИрдорд░реЛрдВ рд╕реЗ рд╡реАрдбрд┐рдпреЛ рдирд┐рдЧрд░рд╛рдиреА рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рд╢реБрд░реВ рдХреА рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдореИрджрд╛рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдШреБрд╕рдкреИрдард┐рдпреЛрдВ рдкрд░ рдЖрдХреНрд░рдордг рдХрд░рдиреЗ рдкрд░ рдПрдХ рдЬрд╛рд▓ рдЪрд▓рд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд┐рдореНрди рд╡рд┐рд▓рдВрдмрддрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдФрд░ рдпрджрд┐ HLS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (15 рд╕реЗрдХрдВрдб рдХреА рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЗ рд╕рд╛рде), рддреЛ рдЬрд╛рд▓ рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рднрд╛рдЧ рдЬрд╛рдПрдЧрд╛ред



рдпрд╣рд╛рдВ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ: рд╡реАрдбрд┐рдпреЛ рдкреНрд░рд╕реНрддреБрддрд┐рдХрд░рдг рдЬрд╣рд╛рдВ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдЙрддреНрдкрд╛рдж рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред рдПрдХ рдЙрдЪреНрдЪ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡реЗ рдЖрдкрдХреЛ рдХреИрдорд░реЗ рдкрд░ рдЙрддреНрдкрд╛рдж рджрд┐рдЦрд╛рдПрдВрдЧреЗ, рдлрд┐рд░ рдкреВрдЫреЗрдВрдЧреЗ, "рддреЛ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ?", рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ 15 рд╕реЗрдХрдВрдб рдореЗрдВ рдЖрдк рддрдХ рдкрд╣реБрдВрдЪ рдЬрд╛рдПрдЧрд╛ред 15 рд╕реЗрдХрдВрдб рдХреЗ рднреАрддрд░, рд╕рд┐рдЧреНрдирд▓ 12 рдмрд╛рд░ рдЪрдВрджреНрд░рдорд╛ рдФрд░ рд╡рд╛рдкрд╕ рдпрд╛рддреНрд░рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдирд╣реАрдВ, рд╣рдо рдРрд╕реА рд╡рд┐рд▓рдВрдмрддрд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рд▓рд╛рдЗрд╡ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдП рдЧрдП рд╡реАрдбрд┐рдпреЛ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдкреВрд░реНрд╡-рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╡реАрдбрд┐рдпреЛ, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реИ рдХрд┐ рдПрдЪрдПрд▓рдПрд╕ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдпрд╣ рдПрдХ рдбрд┐рд╕реНрдХ рдкрд░ рдпрд╛ рд╕рд░реНрд╡рд░ рдХреА рдореЗрдореЛрд░реА рдореЗрдВ рдПрдХ рд╡реАрдбрд┐рдпреЛ рдХреЗ рднрд╛рдЧ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЦрд┐рд▓рд╛рдбрд╝реА рд░рд┐рдХреЙрд░реНрдб рдХрд┐рдП рдЧрдП рднрд╛рдЧреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреИрд╕реЗ HTTP рд▓рд╛рдЗрд╡ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд▓рд╛рдЗрд╡ рдирд╣реАрдВ рд╣реИред


рдХреНрдпреЛрдВ рд╣реЛрддрд╛ рд╣реИ? HTTP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рд╡реИрд╢реНрд╡рд┐рдХ рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рдЗрд╕рдХреА рд╕рд╛рджрдЧреА рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЗрд╕рдХреА рд╕реБрд╕реНрддреА рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ HTTP рд╢реБрд░реВ рдореЗрдВ рд╣рдЬрд╛рд░реЛрдВ рдмрдбрд╝реЗ рд╡реАрдбрд┐рдпреЛ рдЕрдВрд╢реЛрдВ (HLS рд╕реЗрдЧрдореЗрдВрдЯ) рдХреЗ рддреНрд╡рд░рд┐рдд рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рдирд╣реАрдВ рдерд╛ред рд╡реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдЦреЗрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдзреАрд░реЗ-рдзреАрд░реЗ: рдпрд╣ рдЙрди 15 рд╕реЗрдХрдВрдб рдпрд╛ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓реЗрддрд╛ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ, рдмрдлрд╝рд░ рдХрд░рдиреЗ рдФрд░ рдбреАрдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред


рдпрд╣рд╛рдВ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ Apple рдиреЗ 2019 рдХреА рд╢рд░рдж рдЛрддреБ рдореЗрдВ рдЕрдкрдиреЗ HLS рд▓реЛ рд▓реЗрдЯреЗрдВрд╕реА рдХреА рдШреЛрд╖рдгрд╛ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЕрд▓рдЧ рдХрд╣рд╛рдиреА рд╣реИред рдЖрдЗрдП рдмрд╛рдж рдореЗрдВ рдЙрдирдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред рдФрд░ рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдЯреЙрдХ рдореЗрдВ рдПрдордПрд╕рдИ рднреА рд╣реИред


рдХреНрдпреЛрдВ MSE рдЕрдЪреНрдЫрд╛ рд╣реИ


рдореАрдбрд┐рдпрд╛ рд╕реЛрд░реНрд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкреИрдХреЗрдЯ рд╡реАрдбрд┐рдпреЛ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдореВрд▓ рд╕рдорд░реНрдерди рд╣реИред рдЗрд╕реЗ H.264 рдФрд░ AAC рдХреЗ рд▓рд┐рдП рдПрдХ рдореВрд▓ рдЦрд┐рд▓рд╛рдбрд╝реА рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЖрдк HLS рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╡реАрдбрд┐рдпреЛ рд╕реЗрдЧрдореЗрдВрдЯ рдореЗрдВ рдлрд╝реАрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЬреЛ рдЯреНрд░рд╛рдВрд╕рдкреЛрд░реНрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, рдЖрдк рд╡реЗрдмрд╕реЛрдХреЗрдЯреНрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рд╡рд╣рди рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЦрдВрдбреЛрдВ рдХреЛ рдЕрдм рдкреНрд░рд╛рдЪреАрди рд░рд┐рдХреНрд╡реЗрд╕реНрдЯ-рд░рд┐рд╕реНрдкрд╛рдВрд╕ (HTTP) рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╡реЗрдмрд╕реЛрдХреЗрдЯреНрд╕ рдХрдиреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдбрд╛рд▓рдирд╛, рдЬреЛ рд▓рдЧрднрдЧ рд╕реАрдзрд╛ рдЯреАрд╕реАрдкреА рдЪреИрдирд▓ рд╣реИред рдпрд╣ рджреЗрд░реА рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдмрд╣реБрдд рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬреЛ 3-5 рд╕реЗрдХрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдХрдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рд╡рд┐рд▓рдВрдмрддрд╛ рд╢рд╛рдирджрд╛рд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдХрдард┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдПрдХ рдЯреАрд╕реАрдкреА рдЪреИрдирд▓ рдЦреЛрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рд╕рдВрд╕рд╛рдзрди-рддреАрд╡реНрд░рддрд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╣реИ, рдФрд░ рд▓рдЧрднрдЧ рдПрдЪрдПрд▓рдПрд╕ рд╕реЗрдЧрдореЗрдВрдЯ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рдЬреЛ рдЦрд┐рд▓рд╛рдбрд╝реА рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЦреЗрд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред


рдХреНрдпреЛрдВ MSE рдЦрд░рд╛рдм рд╣реИ


рдпрд╣ рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред WebRTC рдХреЗ рд╕рдорд╛рди, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЗрд╕рдХреА рдкрд╣реБрдВрдЪ рдХрдо рд╣реИред iPhones (iOS) рдореЗрдВ MSE рдЦреЗрд▓рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЗрддрд┐рд╣рд╛рд╕ рд╣реИ, рдЬреЛ MSE рдХреЛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИ: рдПрдЬ, рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, рдХреНрд░реЛрдо, рд╕рдлрд╛рд░реА, рдПрдВрдбреНрд░реЙрдЗрдб рдмреНрд░рд╛рдЙрдЬрд╝рд░, рдУрдкреЗрд░рд╛ рдореЛрдмрд╛рдЗрд▓, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдХреНрд░реЛрдо, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдпреВрд╕реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ред



MSE рдХрд╛ рд╕реАрдорд┐рдд рд╕рдорд░реНрдерди iOS рд╕рдлрд╛рд░реА рдореЗрдВ рдХрд╛рдлреА рдХрдо рд╕рдордп рдкрд╣рд▓реЗ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЬрд┐рд╕рдХреА рд╢реБрд░реБрдЖрдд iOS 13 рд╕реЗ рд╣реБрдИред



рдЖрд░рдЯреАрдПрд╕рдкреА рдкреИрд░


рд╣рдордиреЗ рд╡реАрдбрд┐рдпреЛ рд╕рд░реНрд╡рд░> рдмреНрд░рд╛рдЙрдЬрд╝рд░ рджрд┐рд╢рд╛ рдореЗрдВ рд╡рд┐рддрд░рдг рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдЗрди рджреЛ рдЪреАрдЬреЛрдВ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:


1) рдЕрдкрдиреЗ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдЖрдИрдкреА рдХреИрдорд░рд╛ рд╕реЗ рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
2) рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕реНрд╡рд░реВрдкреЛрдВ / рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред


рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдЕрдВрджрд░ рдЖрддрд╛ рд╣реИред


рдЯрд╛-рджрд╣ ... рд╡реЗрдм рдХреЙрд▓ рд╕рд░реНрд╡рд░ 5 рд╕реЗ рдорд┐рд▓реЛ (рдпрд╛ рджреЛрд╕реНрддреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╕ рдбрдмреНрд▓реНрдпреВрд╕реАрдПрд╕)ред рдХрд┐рд╕реА рдХреЛ рдЖрд░рдЯреАрдПрд╕рдкреА рдЯреНрд░реИрдлрд╝рд┐рдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИ, рд╡реАрдбрд┐рдпреЛ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдбреА-рдкреИрдХреЗрдЯ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕реЗ рд╡реЗрдмрдЖрд░рдЯреАрд╕реА, рдПрдЪрдПрд▓рдПрд╕ рдпрд╛ рдПрдордПрд╕рдИ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдирд╛ рд╣реИ, рдЕрдзрд┐рдорд╛рдирддрдГ рдЯреНрд░рд╛рдВрд╕рдХреЛрдбрд░ рджреНрд╡рд╛рд░рд╛ рдУрд╡рд░рд▓реИрдореНрдк рдХрд┐рдП рдмрд┐рдирд╛, рдФрд░ рдЗрд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЖрдХрд╛рд░ рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреА рдУрд░ рднреЗрдЬреЗрдВ, рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдФрд░ рдлреНрд░реАрдЬ рд╕реЗ рджреВрд╖рд┐рдд рдирд╣реАрдВред


рдпрд╣ рдХрд╛рд░реНрдп рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЫрд┐рдкреЗ рд╣реБрдП рдиреБрдХрд╕рд╛рди, рдЪреАрдиреА рдХреИрдорд░реЗ рдФрд░ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рдмрд╛рд░реАрдХрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрдпрд╛рдирдХ рд╣реИред рдпрд╣ рд╣реИрдХ рдХреЗ рдмрд┐рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рддрдереНрдп рдХреА рдмрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЙрддреНрдкрд╛рджрди рдореЗрдВред


рд╡рд┐рддрд░рдг рдпреЛрдЬрдирд╛


рдирддреАрдЬрддрди, рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рд╕рд░реНрд╡рд░ рдкрд░ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд╕рд╛рде рдЖрд░рдЯреАрдПрд╕рдкреА рд╕рд╛рдордЧреНрд░реА рд╡рд┐рддрд░рдг рдХреА рдПрдХ рдкреВрд░реА рдпреЛрдЬрдирд╛ рдЖрдХрд╛рд░ рд▓реЗрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддреА рд╣реИред



рд╣рдорд╛рд░реЗ рднрд╛рд░рддреАрдп рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, тАЬрдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ? рд╕реАрдзреЗ, рдмрд┐рдирд╛ рд╕рд░реНрд╡рд░ рдХреЗ? тАЭред рдирд╣реАрдВ, рдпрд╣ рдирд╣реАрдВ рд╣реИ; рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдХреНрд▓рд╛рдЙрдб рдореЗрдВ, рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдореЗрдВ, рдЖрдкрдХреА рдмрд╛рд▓рдХрдиреА рдореЗрдВ corei7 рдкрд░, рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред


рдЖрдЗрдП рд╣рдо рдЕрдкрдиреЗ рд╡рд░реНрд╖ 2020 рддрдХ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдВ


рддреЛ, рдЖрдкрдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ RTSP рдкрдХрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐ рдпрд╣рд╛рдБ рджреА рдЧрдИ рд╣реИ:


  1. рдПрдХ рддрд╛рдЬрд╛ WCS (рд╡реЗрдм тАЛтАЛрдХреЙрд▓ рд╕рд░реНрд╡рд░) рд▓реЗрдВ ред
  2. рд╕реНрд╡рд╛рдж рдХреЗ рд▓рд┐рдП WebRTC, HLS рдпрд╛ MSE рдЬреЛрдбрд╝реЗрдВред
  3. рдЙрдиреНрд╣реЗрдВ рд╡реЗрдм рдкреЗрдЬ рдкрд░ рдкрд░реЛрд╕реЗрдВред


    рдЕрдкрдиреЗ рднреЛрдЬрди рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВ!



рдирд╣реАрдВ, рдпрд╣ рд╕рдм рдЕрднреА рддрдХ рдирд╣реАрдВ рд╣реИред


рдкреВрдЫрддрд╛рдЫ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдиреНрдпреВрд░реЙрдиреНрд╕ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдпрд╣ рд╕рд╡рд╛рд▓ рдкреВрдЫрдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, тАЬрдХреИрд╕реЗ? рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ? рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛? тАЭ


рд╣рдо рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдХреЛ рд░рд╕реЛрдИ-рдЯреЗрдмрд▓ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдХрдЯреНрдареЗ рдХрд┐рдП рдЧрдП рдиреНрдпреВрдирддрд░ WebRTC рдкреНрд▓реЗрдпрд░ рдкрд░ рд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред


1) рдореБрдЦреНрдп рдПрдкреАрдЖрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝реНрд▓реИрд╢рдлреЛрдирд░.рдЬреЗрдПрд╕ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ my_player.js, рдЬреЛ рд╣рдо рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╡реЗрдм рдкреЗрдЬ рдкрд░ рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред


<script type="text/javascript" src="../../../../flashphoner.js"></script> <script type="text/javascript" src=my_player.js"></script> 

2) рд╡реЗрдм рдкреЗрдЬ рдХреЗ рд╢рд░реАрд░ рдореЗрдВ рдПрдкреАрдЖрдИ рдПрдкреАрдЖрдИ


 <body onload="init_api()"> 

3) рдкреГрд╖реНрда рдкрд░, рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдЯреЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдЬреЛ div рдЬреЛрдбрд╝реЗрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдХрд╛рд░ рдФрд░ рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред


 <div id="myVideo" style="width:320px;height:240px;border: solid 1px"></div> 

4) рдкреНрд▓реЗ рдмрдЯрди рдЬреЛрдбрд╝реЗрдВ, рдЬрд┐рд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╡реАрдбрд┐рдпреЛ рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛


 <input type="button" onclick="connect()" value="PLAY"/> 

5) рдЕрдм рд╕реНрдХреНрд░рд┐рдкреНрдЯ my_player.js рдмрдирд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдорд╛рд░реЗ рдЦрд┐рд▓рд╛рдбрд╝реА рдХрд╛ рдореБрдЦреНрдп рдХреЛрдб рд╣реЛрдЧрд╛ред рд╕реНрдерд┐рд░рд╛рдВрдХ рдФрд░ рдЪрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ


 var SESSION_STATUS = Flashphoner.constants.SESSION_STATUS; var STREAM_STATUS = Flashphoner.constants.STREAM_STATUS; var session; 

6) HTML рдкреЗрдЬ рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ API рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ


 function init_api() { console.log("init api"); Flashphoner.init({ }); } 

7) WebSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ WCS рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ WCS рдкрддреЗ рдХреЗ рд╕рд╛рде "wss: //demo.flashphoner.com" рдмрджрд▓реЗрдВ


 function connect() { session = Flashphoner.createSession({urlServer: "wss://demo.flashphoner.com"}).on(SESSION_STATUS.ESTABLISHED, function(session){ console.log("connection established"); playStream(session); }); } 

8) рдЙрд╕рдХреЗ рдмрд╛рдж, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ, "рдирд╛рдо" рдФрд░ "рдкреНрд░рджрд░реНрд╢рди" рдХреЛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░реЗрдВ, рдЬрд╣рд╛рдВ "рдирд╛рдо" рдЦреЗрд▓реА рдЬрд╛ рд░рд╣реА рдзрд╛рд░рд╛ рдХрд╛ рдЖрд░рдЯреАрдПрд╕рдкреА URL рд╣реИ, рдФрд░ "рдкреНрд░рджрд░реНрд╢рди" myVideo рдХрд╛ рддрддреНрд╡ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдорд╛рд░рд╛ рдЦрд┐рд▓рд╛рдбрд╝реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ред рдЕрдкрдиреА рд╕реНрдЯреНрд░реАрдо рдХрд╛ URL рдпрд╣рд╛рдВ рднреА рд╕реЗрдЯ рдХрд░реЗрдВ, рд╣рдорд╛рд░реА рдЬрдЧрд╣ред


 function playStream() { var options = {name:"rtsp://b1.dnsdojo.com:1935/live/sys2.stream",display:document.getElementById("myVideo")}; var stream = session.createStream(options).on(STREAM_STATUS.PLAYING, function(stream) { console.log("playing"); }); stream.play(); } 

рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдЖрд░рдЯреАрдПрд╕рдкреА рд╕реНрдЯреНрд░реАрдо рдЦреЗрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ?


рдЬрдм рд╣рдордиреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ , рддреЛ рдпрд╣ рдПрдХ рдЦреЗрд▓рд╛ рдЧрдпрд╛: rtsp: //b1.dnsdojo.com: 1935 / live / sys2.streamред


рдФрд░ рдРрд╕рд╛ рд╣реА рджрд┐рдЦрддрд╛ рд╣реИ:


рдкреНрд▓реЗ рдмрдЯрди рд╕реЗ рдкрд╣рд▓реЗ рдЦрд┐рд▓рд╛рдбрд╝реА рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ



рд╡реАрдбрд┐рдпреЛ рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╛рдбрд╝реА рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛



рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреЛрдб рдирд╣реАрдВ рд╣реИ:


рдПрдЪрдЯреАрдПрдордПрд▓


 <!DOCTYPE html> <html lang="en"> <head> <script type="text/javascript" src="../../../../flashphoner.js"></script> <script type="text/javascript" src=my_player.js"></script> </head> <body onload="init_api()"> <div id="myVideo" style="width:320px;height:240px;border: solid 1px"></div> <br/><input type="button" onclick="connect()" value="PLAY"/> </body> </html> 

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ


 //Status constants var SESSION_STATUS = Flashphoner.constants.SESSION_STATUS; var STREAM_STATUS = Flashphoner.constants.STREAM_STATUS; //Websocket session var session; //Init Flashphoner API on page load function init_api() { console.log("init api"); Flashphoner.init({ }); } //Connect to WCS server over websockets function connect() { session = Flashphoner.createSession({urlServer: "wss://demo.flashphoner.com"}).on(SESSION_STATUS.ESTABLISHED, function(session){ console.log("connection established"); playStream(session); }); } //Playing stream with given name and mount the stream into myVideo div element function playStream() { var options = {"rtsp://b1.dnsdojo.com:1935/live/sys2.stream",display:document.getElementById("myVideo")}; var stream = session.createStream(options).on(STREAM_STATUS.PLAYING, function(stream) { console.log("playing"); }); stream.play(); } 

Demo.flashphoner.com рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдкреВрд░рд╛ рдХреЛрдб рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдХреЗ рдкреГрд╖реНрда рдХреЗ рдкреИрд░ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред
рдПрдХ рд╕реБрдЦрдж рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рд╣реИ!



рдЧрд┐рдердм рдкрд░ рдкреНрд▓реЗрдпрд░ рдХреЛрдб


рдПрдХ рд╡реЗрдм рдкреЗрдЬ рдпрд╛ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдЖрд░рдЯреАрдПрд╕рдкреА рдЦрд┐рд▓рд╛рдбрд╝реА рдХрд╛ рдПрдХреАрдХрд░рдг

Source: https://habr.com/ru/post/hi479008/


All Articles