Video Stitcher API를 사용하여 광고 시점 중 광고가 동적으로 병합되는 실시간 스트림 재생을 시작할 때마다 라이브 세션을 만듭니다. 응답은 재생 URL 및 라이브 세션의 구성을 지정합니다.
이 문서에서는 라이브 세션을 만드는 방법을 설명합니다. 자세한 내용은 REST 문서를 참조하세요.
시작하기 전에
라이브 세션 정의
라이브 세션을 정의할 때는 다음 필드가 필요합니다.
liveConfig
라이브 세션을 정의할 때 다음 필드는 선택사항입니다.
adTagMacros
manifestOptions
adTagMacros
매개변수는 광고 태그 매크로 바꾸기를 위한 키-값 쌍 목록입니다. 자세한 내용은 광고 태그 매크로 섹션을 참조하세요.
manifestOptions
매개변수는 병합된 동영상 매니페스트에서 생성되는 동영상 버전을 지정합니다. 또한 병합된 동영상 매니페스트에서 동영상 버전의 순서 지정을 지원합니다. 자세한 내용은 매니페스트 옵션 문서를 참조하세요.
라이브 세션 만들기
라이브 세션을 만들려면 projects.locations.liveSessions.create
메서드를 사용합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER
: IAM 설정 페이지에서 프로젝트 번호 필드에 있는 Google Cloud 프로젝트 번호입니다.LOCATION
: 세션을 만들 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: 라이브 구성의 사용자 정의 식별자입니다.
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "PLAY_URI", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 C# 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API C# API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Go
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Go API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Java API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Node.js API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
PHP
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 PHP 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API PHP API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Python API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Ruby
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Ruby 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Ruby API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Video Stitcher API는 각 요청에 대해 고유한 세션 ID를 생성합니다. 5분 이내에 playUri
를 요청하지 않으면 세션이 만료됩니다.
광고를 라이브 세션에 병합할 수 있으려면 먼저 인코딩해야 합니다. 광고 병합 동영상에 대한 세션을 만들 때 Video Stitcher API는 이전 세션에서 광고가 이미 인코딩되어 있는지 확인합니다. API는 Google Cloud 프로젝트와 연관된 세션에서 생성된 인코딩된 광고만 찾습니다. 이 프로세스에 대한 자세한 내용은 개요를 참조하세요.
응답은 라이브 세션 객체입니다. playUri
는 이 라이브 세션에서 광고 병합 스트림을 재생하기 위해 클라이언트 기기에서 사용되는 URL입니다.
고객의 기기 대신 세션을 생성하는 경우 HTTP 헤더를 사용하여 다음 매개변수를 설정할 수 있습니다.
매개변수 | HTTP 헤더 |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
앞의 curl
요청에 다음 헤더를 추가할 수 있습니다.
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
x-forwarded-for
헤더가 제공되지 않으면 Video Stitcher API가 광고 메타데이터 요청에 클라이언트의 IP 주소를 사용합니다. 고객의 기기 대신 세션이 생성된 경우 클라이언트의 IP 주소가 고객 기기의 IP와 일치하지 않을 수 있습니다.
광고 태그 매크로
광고 태그는 각 세션에 대해 서로 다른 광고 태그를 생성할 수 있는 매크로를 포함할 수 있습니다. 매크로는 다음 예시에 표시된 것처럼 광고 태그에서 대괄호로 표시됩니다.
AD_TAG_URI¯o=[value]
adTagUri
는 라이브 구성에 정의됩니다.
광고 태그 매크로에서 값을 대체하려면 adTagMacros
필드에 매핑을 제공합니다. 예를 들어 [value] 매크로를 bar
문자열로 바꾸려면 다음을 제공해야 합니다.
{ ... "adTagMacros": { "value": "bar" }, ... }
Video Stitcher API가 광고 메타데이터를 요청할 때는 다음 광고 태그가 사용됩니다.
AD_TAG_URI¯o=bar
세션 가져오기
라이브 세션을 가져오려면 projects.locations.liveSessions.get
메서드를 사용합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
PROJECT_NUMBER
: IAM 설정 페이지에서 프로젝트 번호 필드에 있는 Google Cloud 프로젝트 번호입니다.LOCATION
: 세션을 만들 위치입니다. 지원되는 리전 중 하나를 사용합니다.위치 표시us-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: 라이브 세션의 식별자입니다.
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "ad-stitched-live-stream-uri", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 C# 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API C# API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Go
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Go API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Java API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Node.js API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
PHP
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 PHP 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API PHP API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Python API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Ruby
이 샘플을 사용해 보기 전에 Video Stitcher API 빠른 시작: 클라이언트 라이브러리 사용의 Ruby 설정 안내를 따르세요. 자세한 내용은 Video Stitcher API Ruby API 참조 문서를 확인하세요.
Video Stitcher API에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정하세요. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
샘플 광고 병합 재생목록
다음은 광고 병합 전의 샘플 소스 실시간 재생목록을 보여줍니다.
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:32:00Z",DURATION=60,SCTE35-OUT=0xF...
#EXTINF:10.010
segment_00007.ts
#EXTINF:10.010
segment_00008.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:39:20Z",SCTE35-IN=0xF...
#EXTINF:10.010
segment_00009.ts
다음은 광고 병합 후의 샘플 소스 실시간 재생목록을 보여줍니다.
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:10.010
segment_00009.ts