您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何将自定义android.media.MediaDataSource与android.media.MediaPlayer一起使用?

如何将自定义android.media.MediaDataSource与android.media.MediaPlayer一起使用?

要点是,它MediaPlayer确实可以播放 (通过URL和自定义两种方式MediaDataSource),但是 流只能通过URL像一样播放DataSource

因此,让我们了解幕后情况。

当您将URL作为数据源传递时,将执行以下检查:

    if ("file".equals(scheme)) {
        path = uri.getPath();
    } else if (scheme != null) {
        // handle non-file sources
        nativeSetDataSource(
            MediaHTTPService.createHttpServiceBinderIfNecessary(path),
            path,
            keys,
            values);
        return;
    }

MediaPlayer使用MediaHTTPService类,它负责提供从数据httphttpswidevine协议。MediaHTTPService在内部使用MediaHTTPConnection,使用这种类型的流需要花费大量的精力。不幸的是,这些API尚未公开(但是),但是您可以看到如何在MediaHTTPConnection源中建立连接(特别是seekTomethod)。因此,您提供的自定义数据源MediaPlayer应该大致描述MediaHTTPConnection该类实现的逻辑。

其他 2022/1/1 18:25:15 有488人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶