라이브 API: RTMP 출력

이 항목에서는 Live API를 사용하여 RTMP를 출력하는 방법에 대해 설명합니다. RTMP 출력은 HLS 라이브 스트림을 지원하지 않는 플랫폼으로 스트리밍 할 때 유용합니다.

일반 정보

RTMP 출력을 사용하려면 다음 사항에 유의하십시오.

  • 이벤트 시간또는 디지털 마케팅 패키지를 구매했어야 합니다.
  • RTMP 출력 시간은 이벤트 시간에 대해 청구됩니다.
  • 라이브 작업 당 5 개의 출력으로 제한됩니다.
  • 레이블이 스트림용으로 선택한 출력 변환 중 하나를 선택할 수label있는 위치를 정의할 수 있습니다. 를 설정하지 않으면label출력은 기본적으로 입력 소스로 설정됩니다.
  • 표준 작업 및 반복 이벤트 (SEP)와 함께 사용할 수 있습니다.
  • 이벤트 또는 연중무휴 스트리밍에 사용할 수 있습니다.
  • 라이브 스트림과는 별도로 시작 및 중지 할 수 있습니다.
  • RTMP 출력 기능이 구현되기 전에 생성 된 SEP 작업의 경우 기능이 완전히 작동하지 않습니다. API에서는 RTMP 출력이 실제로 생성 되더라도 실패가 표시됩니다. 최상의 결과를 얻으려면 RTMP 출력 기능을 사용하는 새 SEP 작업을 만드십시오.
  • 표준 작업 (비 SEP)과 함께 RTMP 출력을 사용하는 경우 작업이 종료되면 RTMP 출력 스트림이 종료됩니다.
  • RTMP 출력하다지원하다rtmps urls이며 소셜 미디어 플랫폼에서 지원하는 경우 사용하는 것이 좋습니다. 또한 2019년 5월 1일부터 페이스북은 RTMPS만 허용한다는 점을 참고하세요.
  • 현재 RTMP URL에 지원되는유일한 형식은입니다rtmps://host:port/application/streamName .

알림

rtmp_output_state_changed이벤트에 대한 알림을 설정할 수 있습니다. 다음 상태에 대한 알림이 전송됩니다.

RTMP 출력 상태
RTMP 출력 상태 ( rtmp_output_state_changed알림에 대해서는 다음과 같이state보고됨)
starting 스트림이 시작 중입니다.
connected 엔코더가 연결되었습니다.
Disconnected 인코더가 분리되었습니다.
error 스트림에 연결하지 못했습니다.
pending_deactivation 스트리밍 워커에서 정리를 위해 진입점이 대기되었습니다.
deactivation_in_progress 진입 점이 스트리밍 워커에서 연결을 끊고 있습니다.
cancelled 진입 점이 취소되었습니다.
finished 진입 점이 성공적으로 완료되었습니다.

RTMP 출력에 대한 알림은직업 수준라이브 작업을 생성할 때.

RTMP 출력에 대해 보고된 다양한state값을 보려면실시간 알림을 참조하십시오 .

RTMP 출력 생성

먼저 평소와 같이 라이브 작업을 생성 한 다음 RTMP 엔드 포인트를 생성하기위한 추가 요청을해야합니다.

참고: 작업 활성화/비활성화와 같은 특정 상황에서는 이 API 호출에서 오류가 반환될 수 있습니다. 이 경우 일시 중지 후 다시 시도하십시오.

끝점

	https://api.bcovlive.io/v1/jobs/{jobId}/rtmpouts

방법

POST

요청 본문

	{
		"url": "rtmps://host:port/application/streamName",
		"output_label": "480p"
	}
요청 본문 필드
필드 이름 필수 유형 설명
url RTMP 출력의 URL - 예제rtmp://live-api-s.facebook.com:80/rtmp/my_stream
output_label 아니요 RTMP 출력의 소스로 사용할 작업 출력의 레이블입니다. 대신 RTMP 입력을 사용하려면이 매개 변수를 생략하십시오.

샘플 응답

	{
		"host": "live-api-s.facebook.com",
		"port": 80,
		"application": "rtmp",
		"streamName": "my_stream",
		"rtmp_out_id": "asdfg-lkjh"
	}

RTMP 출력 얻기

끝점

	https://api.bcovlive.io/v1/jobs/{jobId}/rtmpouts

방법

GET

샘플 응답

	[
		{
			"rtmp_out_id": "asdfg-lkjh",
			"stream_start": 1538746255247,
			"connection_info": {
				"host": "a.rtmp.youtube.com",
				"port": 1935,
				"application": "live2",
				"streamName": "my_stream",
				"sessionStatus": "Active"
			}
		}
	]

RTMP 출력 중지

끝점

	https://api.bcovlive.io/v1/jobs/{jobId}/rtmpouts/{rtmp_out_id}/stop

방법

PUT

샘플 응답

	{
		"message": "RTMP out asdfg-lkjh deleted successfully"
	}