Record Delivery | 0.16.5.0+
OvenMediaEngine Enterprise 0.16.5.0-1 버전부터 Record Delivery 기능을 지원합니다.
OvenMediaEngine을 사용하여 라이브 스트림을 녹화하고 녹화된 파일을 Object Storage로 전송하는 방법을 설명합니다.
이 가이드에서는 다음과 같은 내용을 실습합니다.
OvenMediaEngine 및 OvenMediaEngine Delivery를 설정하여 녹화 파일 전송을 활성화 합니다.
OvenMediaEngine의 자동 녹화 기능을 이용하거나, 녹화 RestAPI를 이용해 녹화 전송을 시작합니다.
녹화 전송 상태를 모니터링 합니다.
1단계: OvenMediaEngine에서 녹화 기능 설정
OvenMediaEngine의 File Publisher 기능을 활성화하여 스트림 녹화 기능을 사용합니다.
설정 파일 경로:
/usr/share/ovenmediaengine/conf/Server.xml
에서 File Publisher를 활성화할 수 있습니다.
자동 녹화 설정
스트림 송출이 시작되면 자동으로 녹화 및 전송을 시작할 수 있게 설정합니다.
Server.xml
예시:
Server.xml
예시:OvenMediaEngine이 자동으로 녹화 및 전송 작업을 수행할 수 있게 하기 위해 FILE.StreamMap.Path
에 녹화 파일의 경로, 형식, Object Storage 정보 등을 정의한 파일을 지정합니다.
Server.xml에 지정한대로 record_map.xml 파일을 생성:
/usr/share/ovenmediaengine/conf/record_map.xml
record_map.xml
예시:
record_map.xml
예시:MetaData
에 key='value',key='value',...
형식으로전송 정보를 설정합니다.
- 기본 형식
aws_access_key_id='****',aws_secret_access_key='****',endpoint='https://object.storage.com',region='us-east-1',bucket_name='record-bucket',object_dir='/my/vod/path/',delete='true'
- aws_access_key_id (required)
Object Storage에 접근 가능한 access key id를 지정합니다.
- aws_secret_access_key (required)
Object Storage에 접근 가능한 secret access key를 지정합니다.
- endpoint (optional)
Object Storage의 접속 endpoint를 지정합니다. 빈 값일 경우 AWS의 S3의 endpoint를 사용합니다.
- region (optional)
Object Storage의 지역을 지정합니다. 빈 값일 경우 AWS의 S3의 기본 지역을 사용합니다.
- bucket_name (required)
녹화 파일을 전송 할 버킷명을 입력합니다.
- object_dir (required)
Bucket 내 녹화 파일을 전송할 경로를 지정합니다.
-delete (optional)
전송을 완료 후
Server.xml
의 File Publisher의RootPath
에 생성되었던 녹화 파일 삭제 여부를 true 또는 false로 지정합니다.
녹화 형식에 대한 상세한 내용은https://airensoft.gitbook.io/ovenmediaengine/recording#automated-recording에서 확인할 수 있습니다.
Rest API를 이용한 녹화 설정
OvenMediaEngine의 녹화 REST API를 이용해 송출 중인 스트림을 녹화 및 전송할 수 있게 설정합니다.
녹화 형식 및 Object Storage 정보는 녹화 시작 REST API를 호출하면서 설정할 수 있습니다.
Server.xml
예시:
Server.xml
예시:자동 녹화 및 Rest API를 이용한 녹화는 동시에 설정이 가능합니다.
관련 내용 및 자세한 녹화 기능 설정은 https://airensoft.gitbook.io/ovenmediaengine/recording에서 확인 가능합니다.
2단계: 전송 서비스 설정 및 서비스 활성화
전송 서비스 설정
전송 서비스 설정에서 OvenMediaEngine이 녹화한 파일 경로를 설정합니다.
전송 서비스 설정 파일 경로:
/usr/share/ovenmediaengine/delivery/conf/config.ini
설정 파일에서 RECORD_INFO_FILE_BASE_DIR
을 OvenMediaEngine의 File Publisher가 녹화 파일을 생성하는 경로로 설정합니다. (기본적으로 다른 설정은 변경할 필요가 없습니다.)
config.ini
예시:
config.ini
예시:전송 서비스 활성화
전송 서비스는 기본적으로 비활성화 되어있습니다. 전송 서비스를 활성화 합니다.
3단계: 녹화 및 전송 시작
자동 녹화 기능을 이용할 경우
app/stream
스트림을 송출시작합니다. OvenMediaEngine이 자동으로 녹화를 시작하고 설정된 Object Storage로 녹화 파일을 전송합니다.
녹화 REST API를 이용할 경우
app/stream
스트림을 송출 합니다. app/stream
에 대해 녹화 시작 REST API를 호출하면 OvenMediaEngine이 녹화를 시작하고 녹화가 완료되면 전송 서비스가 Object Storage에 녹화 파일을 전송합니다.
녹화 시작 API 호출 예시:
녹화 REST API는 https://airensoft.gitbook.io/ovenmediaengine/rest-api/v1/virtualhost/application/recording 에서 확인할 수 있습니다.
전송 상태 확인
전송 서비스 로그를 확인하여 녹화 파일의 전송 상태를 모니터링합니다.
이상으로 OvenMediaEngine을 사용하여 라이브 스트림 녹화 및 녹화된 파일을 Object Storage로 전송하는 방법을 마칩니다.
Last updated