āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĻā§‚āĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ

āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ›āĻ¯āĻŧ āĻŽāĻžāĻ¸ āĻ†āĻ—ā§‡ āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽāĨ¤ āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻ•āĻ•-āĻ¸āĻ•ā§‡āĻŸ HTTP āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻ¯āĻž āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡ āĻšāĻŋāĻ¤ā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻžāĻ°ā§āĻ¸āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§‡ āĻ†āĻŽāĻŋ āĻŦā§āĻāĻ¤ā§‡ āĻĒā§‡āĻ°ā§‡āĻ›āĻŋ āĻ¯ā§‡ WebRTC āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻāĻ‡ āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡ āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤āĨ¤ āĻ•ā§āĻ°ā§‹āĻŽ āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡ āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡; āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻāĻ•ā§āĻ¸āĻŸā§‡āĻ¨āĻļāĻ¨ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻ˛āĻžāĻ‡āĻŸāĻ“āĻ¯āĻŧā§‡āĻŸ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšā§‡āĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻ¯āĻž āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ā§‡āĻļāĻ¨ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻ†āĻŽāĻŋ Google āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ‚āĻ•āĻ˛āĻ¨ā§‡āĻ° āĻĒāĻ°ā§‡ āĻāĻŸāĻŋ 500MB āĻ˛āĻžāĻ—ā§‡āĨ¤ āĻ†āĻŽāĻžāĻ•ā§‡ āĻĒā§āĻ°ā§‹ WebRTC āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ•ā§āĻ°ā§āĻ¯āĻžāĻš āĻĨā§‡āĻ•ā§‡ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛, āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ 2.5MB exe āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻĢāĻŋāĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒā§‡āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻ•āĻœāĻ¨ āĻŦāĻ¨ā§āĻ§ā§ JS-āĻāĻ° āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛, āĻāĻŦāĻ‚ āĻāĻŸāĻŋāĻ‡ āĻ†āĻŽāĻ°āĻž āĻļā§‡āĻˇ āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤

āĻšāĻ˛ā§āĻ¨ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ°āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĻā§‚āĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ
āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ° āĻŸā§āĻ¯āĻžāĻŦā§‡ āĻ˛āĻŋāĻ™ā§āĻ•āĻŸāĻŋ āĻ–ā§āĻ˛ā§āĻ¨ āĻāĻŦāĻ‚ āĻĄā§‡āĻ¸ā§āĻ•āĻŸāĻĒā§‡ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻĒāĻžāĻ¨:

āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĻā§‚āĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ
āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ¸ā§‡āĻŸāĻ†āĻĒ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ…ā§āĻ¯āĻžāĻ¨āĻŋāĻŽā§‡āĻļāĻ¨:

āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĻā§‚āĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ
āĻ•ā§āĻ°ā§‹āĻŽ, āĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻĢāĻ•ā§āĻ¸, āĻ¸āĻžāĻĢāĻžāĻ°āĻŋ, āĻ…āĻĒā§‡āĻ°āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤

āĻļāĻŦā§āĻĻ, āĻ…āĻĄāĻŋāĻ“ āĻ•āĻ˛, āĻ•ā§āĻ˛āĻŋāĻĒāĻŦā§‹āĻ°ā§āĻĄ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž, āĻĢāĻžāĻ‡āĻ˛ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻŦāĻ‚ āĻ•āĻ˛ āĻšāĻŸ āĻ•ā§€āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°ā§‡āĻ°āĻŖ āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦāĨ¤

āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ†āĻŽāĻžāĻ•ā§‡ āĻāĻ• āĻĄāĻœāĻ¨ RFC āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻāĻŦāĻ‚ āĻŦā§āĻāĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻ¯ā§‡ āĻ“āĻ¯āĻŧā§‡āĻŦāĻ†āĻ°āĻŸāĻŋāĻ¸āĻŋ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻ¨ā§‡āĻ‡āĨ¤ āĻ†āĻŽāĻŋ āĻāĻŸāĻŋāĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—ā§āĻ˛āĻŋāĻ° āĻ‰āĻĒāĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻšāĻžāĻ‡, āĻ†āĻŽāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‹āĻ¨āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ—ā§āĻ°āĻšā§€ āĻ¤āĻž āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡:

  • SDP āĻ¸ā§āĻŸā§āĻ°āĻŋāĻŽāĻŋāĻ‚ āĻĄā§‡āĻŸāĻž āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛
  • ICE āĻĒā§āĻ°āĻžāĻ°ā§āĻĨā§€ āĻāĻŦāĻ‚ āĻĻā§āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ, STUN āĻāĻŦāĻ‚ āĻŸāĻžāĻ°ā§āĻ¨ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž
  • DTLS āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻāĻŦāĻ‚ RTP āĻ¸ā§‡āĻļāĻ¨ā§‡ āĻ•ā§€ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°
  • āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧāĻž āĻĄā§‡āĻŸāĻž āĻĒā§āĻ°ā§‡āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ¨āĻ•ā§āĻ°āĻŋāĻĒāĻļāĻ¨ āĻ¸āĻš RTP āĻāĻŦāĻ‚ RTSPP āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛
  • RTP āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ H264, VP8 āĻāĻŦāĻ‚ Opus āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°ā§āĻ¨
  • āĻŦāĻžāĻ‡āĻ¨āĻžāĻ°āĻŋ āĻĄā§‡āĻŸāĻž āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ SCTP āĻ¸āĻ‚āĻ¯ā§‹āĻ—

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨