【问题标题】:How do I send metadata from ExoPlayer to bluetooth?如何将元数据从 ExoPlayer 发送到蓝牙?
【发布时间】:2021-07-08 13:13:54
【问题描述】:

我正在尝试通过我的广播应用程序上的蓝牙发送固定元数据,基本上我会将广播名称作为标题,将广播口号作为副标题,所以不涉及任何动态。 我曾尝试在 StackOverflow 上搜索其他答案,但它们与 ICY 流或从 ExoPlayer 本身获取元数据有关。

通过 FM 或 流播放器(例如 VLC)直接收听时,流本身提供元数据,但在通过我的应用时无法显示。

这是我的代码,据我所知,我应该在“addMetadataOutput”之后将元数据发送到括号内。

        extractorsFactory = new DefaultExtractorsFactory();
        trackSelectionFactory = new AdaptiveTrackSelection.Factory(bandwidthMeter);
        trackSelector = new DefaultTrackSelector(trackSelectionFactory);
        defaultBandwidthMeter = new DefaultBandwidthMeter();
        dataSourceFactory = new DefaultDataSourceFactory(this,
                Util.getUserAgent(this, "mediaPlayerSample"), defaultBandwidthMeter);
        mediaSource = new ExtractorMediaSource(Uri.parse("https://sr11.inmystream.it/proxy/radiocircuito29?mp=/stream"), dataSourceFactory, extractorsFactory, null, null);
        player = ExoPlayerFactory.newSimpleInstance(this, trackSelector);
        
        player.addMetadataOutput();

【问题讨论】:

    标签: bluetooth stream metadata radio


    【解决方案1】:

    这方面有很多依赖关系,这不仅仅是发送值的情况,您还需要处理通知和媒体会话。

    为此,您将需要一些额外的 Exoplayer 扩展。具体来说:MediaSessionCompat、MediaSessionConnector 并将它们连接到您的 Exoplayer 和 NotificationManager。

    mMediaSession = new MediaSessionCompat( this, Constants.PLAYBACK_CHANNEL_ID );
    mPlayerNotificationManager.setMediaSessionToken( mMediaSession.getSessionToken() );
    mMediaSession.setActive( true );
    mMediaSessionConnector = new MediaSessionConnector( mMediaSession );
    mMediaSessionConnector.setPlayer( mPlayer );
    

    一旦你有了这些,你还需要实现一个 DescriptionAdapter 类

    public class MyDescriptionAdater implements PlayerNotificationManager.MediaDescriptionAdapter
    

    这将创建用于填充静态元数据的界面。然后,您需要使用 setMediaDescriptionAdapter 将其连接到 PlayerNotificationManager

    【讨论】:

      猜你喜欢
      • 2016-05-25
      • 1970-01-01
      • 1970-01-01
      • 2016-10-30
      • 2018-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多