스트림에서 여러 메타데이터 유형 지원
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
두 가지 유형의 메타데이터를 사용하는 스트림의 경우 플레이어 구현에 따라 추가 구성 설정이 필요할 수 있습니다. 스트림에는 여러 유형의 메타데이터가 포함될 수 있습니다. IMA SDK는 미디어에서 광고 정보를 검색하기 위해 스트림에 메타데이터를 추가합니다. 예를 들어 SCTE-35는 일반적인 두 번째 메타데이터 유형입니다.
Media3 ExoPlayer v1.6 이상을 사용하는 앱의 경우 기본적으로 두 개의 메타데이터 유형이 있는 스트림이 처리됩니다.
v1.6보다 낮은 버전의 ExoPlayer를 사용하는 앱의 경우 ExoPlayer 구현에 MetadataRenderer
인스턴스를 추가해야 합니다. 다음 예에서는 두 가지 메타데이터 유형을 지원하기 위해 두 번째 MetadataRenderer
인스턴스를 추가합니다.
RenderersFactory defaultRenderersFactory = new DefaultRenderersFactory(context) {
@Override
protected void buildMetadataRenderers(Context context, MetadataOutput output,
Looper outputLooper, @ExtensionRendererMode int extensionRendererMode,
ArrayList<Renderer> out) {
// Add a `MetadataRenderer` for each type of metadata. This example adds 2.
out.add(new MetadataRenderer(output, outputLooper));
out.add(new MetadataRenderer(output, outputLooper));
}
};
new ExoPlayer.Builder()
.setRenderersFactory(defaultRenderersFactory)
.setMediaSourceFactory(mediaSourceFactory)
.build();;
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-08-31(UTC)
[null,null,["최종 업데이트: 2025-08-31(UTC)"],[],[],null,["For streams using two different types of metadata, you might need additional\nconfiguration setup depending on your player implementation. A stream can\ncontain multiple types of metadata. The IMA SDK adds metadata to the stream to\nretrieve ad information from the media. For example,\n[SCTE-35](//support.google.com/admanager/answer/7506166) is a common second\nmetadata type.\n\nFor apps using\n[Media3 ExoPlayer](//developer.android.com/media/media3/exoplayer) v1.6 or\nhigher, streams with two metadata types are handled by default.\n\nFor apps using an ExoPlayer version lower than v1.6, you must add an additional\n[`MetadataRenderer`](//developer.android.com/reference/androidx/media3/exoplayer/metadata/MetadataRenderer)\ninstance to your ExoPlayer implementation. The following example adds a\nsecond `MetadataRenderer` instance to support two metadata types: \n\n RenderersFactory defaultRenderersFactory = new DefaultRenderersFactory(context) {\n\n @Override\n protected void buildMetadataRenderers(Context context, MetadataOutput output,\n Looper outputLooper, @ExtensionRendererMode int extensionRendererMode,\n ArrayList\u003cRenderer\u003e out) {\n // Add a `MetadataRenderer` for each type of metadata. This example adds 2.\n out.add(new MetadataRenderer(output, outputLooper));\n out.add(new MetadataRenderer(output, outputLooper));\n }\n };\n\n new ExoPlayer.Builder()\n .setRenderersFactory(defaultRenderersFactory)\n .setMediaSourceFactory(mediaSourceFactory)\n .build();;"]]