точка
Несколько лет назад мы с другом бездельничали, и мы создали очень простую ссылку в видеочате, запустив VLC дважды на обоих наших компьютерах: один "наблюдал" за локальной веб-камерой и клонировал видеоданные в поток RTMP, а другой скопировать настроенный в удаленный RTMP-канал. Мы оба сделали удаленное окно больше, чем локальное, и вуаля, инста-видео чат.
Фон
Это было потрясающе. Поскольку все это использовало TCP вместо UDP, мы не видели никакого пропуска кадров - нам просто пришлось иметь дело с задержками передачи, которые были невероятно крошечными, потому что мы могли точно настроить качество исходного видео и битрейт передачи, и так как данные были точечными - к моменту, когда не было задействовано никаких реле, была практически нулевая задержка.
Как только мы доказали, что действительно можем сделать эту работу, мы оба быстро отвлеклись на другие интересные эксперименты, поэтому не пошли дальше, но было бы тривиально добавить PuTTY в смесь с парой перенаправлений портов в там - и вдруг все это было бы в туннеле SSL.
Эту систему было довольно неудобно использовать, хотя: если удаленный канал колебался один раз, локальная копия VLC пошла бы "нет" и пошла бы капать. Обе наши связи были потрясающими, поэтому этого не произошло (IIRC), но это всегда было потенциальным происшествием. И настройка всего заняла 30 кликов. Я полагаю, что мог бы настроить приличную автоконфигурацию с помощью флагов командной строки, но это не исправило бы разрыв соединения.
Вопрос
Мне интересно, что там не использует SIP, не требует странных прокси, не полагается на кучу «ужасно сложных архитектур и протоколов, которые вы должны установить и настроить, потому что ... традиция!», Но не действительно обеспечивает без проблем видео и аудио транспорта через тонкий, ресурсно-легкий слой транспорта / шифрования , который невероятно быстрая установка.
Если бы это работало и на Android, это тоже было бы здорово, но я в первую очередь хочу, чтобы это работало на Linux.
ОТМЕТЬТЕ, что я сказал "какие методы я могу использовать" в заголовке - я не ищу рекомендации продукта или услуги, но общие понятия, которые я могу применить, используя выбор различных инструментов.