터미널에서 비디오 + 오디오 회의!
그것에 뛰어 들자!
우선, 화상 회의 시스템은 최소한의 대기 시간으로 다른 모든 참가자의 오디오 및 비디오 스트림을 연결된 각 사람에게 방송하는 실시간 응용 프로그램입니다!
터미널에서 작업해야 했기 때문에 데이터 입력을 위한 문자와 "바이트"만 있었습니다!
첫 번째 질문: 이미지를 터미널에서 인지할 수 있는 문자열로 변환하는 방법은 무엇입니까?
내 알고리즘은 매우 간단합니다. 먼저 OpenCv를 사용하여 카메라/dev/0 장치가 제공하는 이미지를 검색한 다음 OpenCV의 cvtColor 메서드를 사용하여 흰색 바탕에 검은색으로 변환합니다. 그런 다음 이 이미지를 0에서 255까지의 사각형으로 색상 대비를 제공하는 일종의 그리드로 자릅니다. 각 픽셀의 정렬 배열 등가가 있습니다! ""에서 "B"까지의 다른 문자 배열을 설정하여 픽셀의 점유율과 일치합니다!
복잡하게 ?
다시 설명하겠습니다. 픽셀이 어두울수록 문자의 밀도가 낮아지므로 "."또는
10
또는 12
에 더 가까운 "B"또는 "K"와 달리 색상 값이 250
또는 255
인 ","거기에서 문자로 컬러 이미지를 전사할 수 있습니다. 터미널에서 !두 번째 질문: 오디오 스트림을 검색하고 전송하는 방법은 무엇입니까?
이를 위해 마이크에 연결하는 PyAudio를 사용하여 오디오 스트림을 검색한 다음 시퀀스당 바이트 형식으로 전송하고 수신 시 비트 전송률에 따라 리모델링을 수행합니다!
세 번째 질문: 각 세션에 대한 스트림(비디오 및 오디오)을 보내고 검색하는 방법은 무엇입니까?
여기서는 클라이언트가 데이터를 검색하고 분석한 다음 패키지의 내용을 검색할 때 보내는 항목과 보내는 세션을 식별할 수 있는 요소를 추가하여 json에서 바이트 서식 지정 시스템을 사용하고 있습니다.
네 번째 질문: 이러한 시스템에서 보안은 어떻게 작동합니까?
두 가지 유형의 데이터 암호화, 비대칭 암호화 및 대칭 암호화를 구현했습니다. 두 시스템 모두 키 공유를 먼저 수행해야 하지만 테스트 중인 버전에서는 최종 렌더링에 영향을 미치므로 모든 암호화를 비활성화했습니다. 품질!
AES(대칭 암호화)
RSA(비대칭 암호화)
s2c를 사용하려면 pip를 통해 설치하십시오!
pip install s2c
서버 시작:
s2c_server -p 1122
그런 다음 클라이언트를 시작합니다.
s2c -s session1 -c darker -i 127.0.0.1 -p 1122
또는 도움말을 사용하여 설명서를 볼 수 있습니다.
물론 이 모든 기사는 데모 없이는 쓸모가 없습니다: WATCH ME
s2c는 오픈 소스이며 무료입니다!
소스 코드 : https://github.com/sanix-darker/s2c
Pypi-패키지 : https://pypi.org/project/s2c/
추신: 어떤 의견이나 건설적인 조언도 환영합니다!
Reference
이 문제에 관하여(터미널에서 비디오 + 오디오 회의!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sanixdarker/video-audio-conferencing-in-your-terminal-3mie텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)