אם הזרמים משתמשים בשני סוגים שונים של מטא-נתונים, יכול להיות שתצטרכו להגדיר הגדרות נוספות בהתאם להטמעה של נגן המדיה. שידור יכול להכיל כמה סוגים של מטא-נתונים. IMA SDK מוסיף מטא-נתונים לסטרימינג כדי לאחזר מידע על המודעות מהמדיה. לדוגמה, SCTE-35 הוא סוג נפוץ של מטא-נתונים משני.
באפליקציות שמשתמשות ב-Media3 ExoPlayer בגרסה 1.6 ומעלה, המערכת מטפלת כברירת מחדל בסטרימינג עם שני סוגים של מטא-נתונים.
באפליקציות שמשתמשות בגרסה של ExoPlayer שמוקדמת לגרסה v1.6, צריך להוסיף מופע נוסף של MetadataRenderer
להטמעה של ExoPlayer. בדוגמה הבאה מוסיפים מופע 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();;