본문으로 건너뛰기

흐름

Video Editor SDK를 사용하게 되면 거치게 되는 각 단계들을 알아보고, Video Editor SDK를 사용했을 때의 전반적인 흐름을 살펴봅니다.

비디오 생성하기​

Video Editor SDK의 단계를 크게 나누어보면 비디오 생성과 비디오 URL 확인, 두 부분으로 나눌 수 있습니다. 비디오 생성 단계에서는 서버 액세스 토큰을 가져와 렌더 세션을 만들고, 렌더 세션 ID를 이용하여 에디터를 실행하게 됩니다.

서버 액세스 토큰 가져오기​

Get server access token

가장 먼저 서버 액세스 토큰을 가져옵니다. 백엔드 서버에서 API 요청을 할 때 언제나 서버 액세스 토큰을 사용하게 되며, 서버 액세스 토큰을 가져오는 과정은 OAuth 2.0 표준 내 Client Credentials Grant를 활용합니다.

서버 액세스 토큰을 가져오는 방법은 빠른 시작 가이드 와 인증 및 액세스 토큰을 참고해주세요.

렌더 세션과 스코프드 액세스 토큰 만들기​

Create RenderSession and scoped access token

액세스 토큰이 준비되었으면 렌더 세션을 생성합니다. 매핑과 템플릿 정보, 그리고 스코프드 액세스 토큰을 발급하는 edit_token 옵션을 주어 렌더 세션을 생성하고, 반환되는 ID를 저장합니다.

렌더 세션을 만드는 과정을 알아보려면 빠른 시작 가이드와 레퍼런스를 참고해주세요.

에디터 실행하기​

Launch Editor

앞서 반환된 렌더 세션 ID와 edit_token을 웹 애플리케이션으로 전달해준 후, 해당 정보로 에디터 인스턴스를 생성하고 실행합니다.

Video Editor SDK를 설치하고 에디터를 실행하는 방법은 빠른 시작 가이드와 SDK 설치를 참고해주세요.


비디오 URL 확인하기​

앞서 비디오를 생성하고 에디터를 통해 비디오 제작을 완료했으면, 제작된 비디오의 URL을 확인할 차례입니다.

비디오 URL을 확인하는 방법은 크게 세 가지가 있습니다. wait_rendering 옵션을 사용하면 별도의 서버 구현체 없이 웹 애플리케이션 내에서 모든 것을 처리할 수 있고, URL을 노출하고 싶지 않거나 페이지가 닫혔을 때도 안정적으로 알림을 받는 Automated Video Delivery를 사용하는 방법도 있습니다.

wait_rendering 옵션 사용​

Use wait_rendering option

wait_rendering 옵션을 사용하면 서버를 수정하지 않고도 비디오 렌더링 여부 및 완성된 비디오의 URL을 확인할 수 있습니다. Video Editor SDK를 wait_rendering 옵션을 주어 초기화하면, 에디터 내에서 비디오의 렌더 진행 상황을 프로그레스 바 형태로 보여주며, 렌더 완료 시 finish event를 통해 비디오의 다운로드 URL을 얻을 수 있습니다.

wait_rendering 옵션을 사용하는 방법은 빠른 시작 가이드를 참고해주세요.

Automated Video Delivery Webhook 사용​

Use Automated Video Delivery webhook

렌더 세션을 만들 때 external_uploads 옵션을 지정하면, Amazon Web Services S3 등 지정한 목적지에 비디오가 자동으로 업로드됩니다. 해당 목적지에 존재하는 이벤트 기능(S3의 경우 SNS로 알림 가능)을 사용하여 비디오 완료를 처리할 수 있고, Amplify API에서 보내는 Webhook을 사용할 수도 있습니다.

자세한 사항은 Automated Video Delivery와 Webhook으로 알림 받기를 참고해주세요.

API 엔드포인트 폴링​

Use polling

가장 기본적인 방법으로는 GET /v2/render_sessions 엔드포인트를 주기적으로 확인하는 방법이 있습니다. 해당 엔드포인트에 video_url이 채워지면 렌더가 완료된 비디오 URL을 확인할 수 있습니다. 이 방법은 API 서버에 지속적인 요청을 보내야 하기 때문에 사용량 제한 등의 영향을 받을 수 있으므로, 가능하면 사용을 피하는 것이 좋습니다.

API 엔드포인트를 사용하는 방법은 레퍼런스를 참고해주세요.