Exoplayer2 更改 HLS http headers

Exoplayer2 change HLS http headers

我正在尝试更改使用 HLS 时发送的 http headers。 这就是我当前的代码:

private MediaSource buildMediaStore(String streamUrl) {
    Uri streamUri = Uri.parse(streamUrl);

    HttpDataSource.Factory dataSourceFactory = new DefaultHttpDataSourceFactory("custom_player", defaultBandwidthMeter);
    return new HlsMediaSource.Factory(dataSourceFactory).setExtractorFactory(new DefaultHlsExtractorFactory()).createMediaSource(streamUri);
}

我该怎么做?我考虑过使用内置的 HttpDataSource,但据我所知无法将其传递到 HlsMediaSource 或 HlsMediaSource.Factory。

据我所知应该是

dataSourceFactory.getDefaultRequestProperties().set("Some Header Key", "Header Value");

如果我能找到它,我会编辑它以支持我

编辑: https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/upstream/HttpDataSource.BaseFactory.html

您可以在 DataSource.Factory 或 HttpDataSource.Factory

上使用 getDefaultRequestProperties