Mendukung beberapa jenis metadata dalam streaming

Untuk streaming yang menggunakan dua jenis metadata yang berbeda, Anda mungkin memerlukan penyiapan konfigurasi tambahan, bergantung pada penerapan pemutar. Streaming dapat berisi beberapa jenis metadata. IMA SDK menambahkan metadata ke streaming untuk mengambil informasi iklan dari media. Misalnya, SCTE-35 adalah jenis metadata kedua yang umum.

Untuk aplikasi yang menggunakan Media3 ExoPlayer v1.6 atau yang lebih baru, streaming dengan dua jenis metadata akan ditangani secara default.

Untuk aplikasi yang menggunakan ExoPlayer versi lebih rendah dari v1.6, Anda harus menambahkan instance tambahan MetadataRenderer ke penerapan ExoPlayer. Contoh berikut menambahkan instance MetadataRenderer kedua untuk mendukung dua jenis metadata:

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();;