दो अलग-अलग तरह के मेटाडेटा का इस्तेमाल करने वाली स्ट्रीम के लिए, आपको अपने प्लेयर के हिसाब से अतिरिक्त कॉन्फ़िगरेशन सेट अप करने की ज़रूरत पड़ सकती है. किसी स्ट्रीम में कई तरह का मेटाडेटा हो सकता है. IMA SDK, स्ट्रीम में मेटाडेटा जोड़ता है, ताकि मीडिया से विज्ञापन की जानकारी मिल सके. उदाहरण के लिए, SCTE-35 एक सामान्य सेकंड मेटाडेटा टाइप है.
Media3 ExoPlayer v1.6 या इसके बाद के वर्शन का इस्तेमाल करने वाले ऐप्लिकेशन के लिए, दो तरह के मेटाडेटा वाली स्ट्रीम को डिफ़ॉल्ट रूप से हैंडल किया जाता है.
अगर आपके ऐप्लिकेशन में ExoPlayer के v1.6 से कम वर्शन का इस्तेमाल किया जा रहा है, तो आपको 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();;