728x90
Janus 미디어서버는 서버사이드 레코딩을 지원한다.
내부 API 를 통해 레코딩을 시작하면 아래와 같이 파일이 생성되는데
영상 : 파일명-vido.mjr
오디오: 파일명-audio.mjr
데이터 : 파일명-data.mjr
해당 파일은 raw data 로, 몇가지 라이브러리를 설치하여 변환을 해야 일반적인 비디오/오디오 파일이 만들어진다.
정리가 필요하지만, 우선 기록용으로 가볍게 작성하려 한다.
0. update
apt-get update
1. janus-pp-rec 설치
apt-get install janus-tools
2. ffmpeg 설치
apt-get install ffmpeg
3. 파일 변환
- 먼저, 아래와 같이 레코딩 된 raw data 를 준비한다.
- bash script 를 아래와 같이 준비한다.
#!/bin/bash
# 변수 정의
filename_prefix="$1"
output_file="$2"
tmp_video=/tmp/mjr-$filename_prefix.webm
tmp_audio=/tmp/mjr-$filename_prefix.opus
# 파일 변환
janus-pp-rec /opt/janus/share/janus/recordings/$filename_prefix-video.mjr $tmp_video
janus-pp-rec /opt/janus/share/janus/recordings/$filename_prefix-audio.mjr $tmp_audio
# 병합 및 내보내기
ffmpeg -i $tmp_audio -i $tmp_video -c:v copy -c:a opus -strict experimental $output_file
# 임시 파일 제거
rm $tmp_video
rm $tmp_audio
- 아래와 같이 script 를 실행한다.
( "7094390277113162-60668" 로 생성된 오디오/비디오 파일을 변환하여 "7094390277113162-60668.webm" 파일로 내보낸다. )
sh convert.sh 7094390277113162-60668 7094390277113162-60668.webm
- 스크립트가 정상적으로 실행되면, 아래와 같이 진행 경과 및 결과를 확인 할 수 있다.
이상 끝-
728x90
'WebRTC' 카테고리의 다른 글
클라우드 서버에 turn 서버 띄우기 (feat. Google Cloud Platform, CoTurn) (2) | 2021.12.12 |
---|---|
간단하게 turn 서버 띄우기 (mac os) (0) | 2021.09.22 |
Iframe 에서 getUserMedia 가져오기 (0) | 2020.10.29 |