본문 바로가기

Computer195

[Go] Vim 을 이용한 go 언어 개발 (windows 10에서 vim-go 활용) vim 에서 go 언어를 지원하는 vim-go 라는 플러그인이 있다. https://github.com/fatih/vim-go에서 패키지를 다운로드 할 수 있으며 이 페이지에서 설명하는 main feature는 다음과 같다. Compile your package with :GoBuild, install it with :GoInstall or test it with :GoTest. Run a single test with :GoTestFunc). Quickly execute your current file(s) with :GoRun. Improved syntax highlighting and folding. Debug programs with integrated delve support with :GoDe.. 2020. 6. 7.
WebRTC 미디어 서버, mediasoup 이용해 보기 #1 - Publisher 분석 WebRTC의 미디어 서버 계열은 대체로 수신되는 미디어 영상을 조작하고 전송하는 MCU 와 수신된 미디어를 그대로 포워딩 해주는 SFU 로 나눠진다고 할 수 있다. MCU와 SFU의 장/단점은 이전 포스팅 [WebRTC] MediaServer(MCU/SFU) 정리 에서 확인 가능하다. 이번 포스팅은 SFU 계열의 미디어 서버 인 mediasoup SFU 이용에 대한 것이다. mediasoup 은 core library는 c++로 이루어져 있고, node.js 기반 자바스크립트로 server를 구성할 수 있도록 해주는 node.js api 이다. 최근에 v3 으로 업데이트 되면서 DataChannel 등 흥미로운 기능들이 추가되었다. (https://mediasoup.org/documentation/v3.. 2019. 7. 21.
WebAssembly에 대해서, 그리고 Hello WebAssembly WebAssembly에 대하여.. WebAssembly는 최근에 많이 회자되는 웹 기술중 하나이다. 웹은 개발의 편의성과 호환성으로 사실상 대표적인 네트워크 기반 응용 플랫폼이 되었다고 해도 과언이 아니지만, 스크립트 기반의 런타임(HTML, JavaScript)의 성능적 한계로 게임과 같은 성능이 필요한 응용 프로그램에서는 잘 사용되지 않는 플랫폼이다. 물론 웹으로 만든 게임 프로그램중에 훌륭한 것들도 많이 있지만 특정 plugin이 없이 실시간성 성능이 필요한 게임들은 돌리기가 버거운 것은 사실이다. (당연히 plugin사용은 지양하는게 좋다.) WebAssembly는 Low-Level 언어들(C++)로 개발한 어플리케이션을 Binary Format 형태로 웹브라우저에서 실행하는 기술이라고 할 수 있.. 2019. 5. 6.
NGINX 로 VOD를 HLS로 동영상 파일 스트리밍 하기. NGINX 는 고성능 웹서버이다. 이 웹서버에서 로컬 동영상 파일을 HLS 로 스트리밍할 수 있다. 본 포스팅에서는 ubuntu 16.04 에서 NGINX 를 이용해 HLS 동영상 파일 스트리밍 하는 것에 대해서 설명한다. 1. 소스 다운로드 및 컴파일NGINX 와 nginx-vod-module 을 다운로드 한다.- nginx: wget http://nginx.org/download/nginx-1.12.2.tar.gz- nginx-void-module : git clone https://github.com/kaltura/nginx-vod-module.git 각각 압축을 풀고 nginx 소스 폴더에서 다음과 같이 configure 를 진행한다. ./configure --add-module=../nginx-.. 2017. 11. 26.
Let's encrypt를 이용해서 node.js 에 https 사용하기(linux 환경) node.js 의 express 서버로 SSL 을 이용하고자 한다면 인증서를 발급받아야 한다. 인증서는 인증 기관에 구입하거나 무료 인증서를 발급받아서 처리해야 하는데, 이번 포스팅에서는 Let's Encrypt라는 무료 인증 발급 기관에서 인증서를 발급받아서 SSL이 적용된 express를 이용해 보도록 하겠다. 1. DNS 준비 SSL 인증서와는 별개로 DNS가 준비 되어 있어야 한다. 필자는 synology nas를 이용하고 있어서 synology 의 DNS를 이용한다. (---.synology.me) 2. Linux Console에서 인증서 받기 let's encrypt 는 let's encrypt client를 이용해서 사용해서 다운로드 가능하다. 필자의 서버 환경은 raspberry pi 에 .. 2017. 8. 20.
[WebRTC] Janus-Gateway의 Audiobridge Plugin 이용하기 #2: Chrome Browser에서 이용 이전 두 포스팅에서는 1. Janus-Gateway API 분석 2. Audiobridge API 분석 을 설명했었다. 이번 포스팅에서는 Chrome Browser에서 audiobridge 를 이용하는 방법에 대해서 코드를 중심으로 설명한다. 이전 포스팅에서 spec 중심으로 간단한 javascript 코드를 예를 들어 설명했는데, 이번 포스팅은 실제 사용 가능한 javascript 코드를 예를 들어 설명하도록 하겠다. 다음은 상기 1,2 에서 실제 WebRTC 연결 설정까지 필요한 프로토콜을 구현한 코드이다. 이 코드는 HTML 상에서 다음은 실제 console.log 에 출력되는 값들이다.1. connect websocket server addr:wss://XXX.XX.XXX.XXX/api 2. cr.. 2017. 4. 11.