我在这个 code-lab之后使用 Android 新Media3 Exoplayer库,但是没有解决方法可以从 res/raw 目录播放视频。我从 res/raw 目录播放的代码是
val uri = RawResourceDataSource.buildRawResourceUri(R.raw.my_video)
val mediaItem = MediaItem.fromUri(uri)
exoPlayer.setMediaItem(mediaItem)
Run Code Online (Sandbox Code Playgroud)
上面的代码不起作用,如果我使用mp4URL 创建 MediaItem,那么它就可以工作。URL的代码mp4是
val mediaItem = MediaItem.fromUri(getString(R.string.media_url_mp4))
exoPlayer.setMediaItem(mediaItem)
Run Code Online (Sandbox Code Playgroud)
谁能帮我解决这个问题吗?
提前致谢!
这是对我有用的代码。
来自 HTTP URL 的视频代码。
val player: ExoPlayer = ExoPlayer.Builder(requireContext()).build()
val mediaItem = MediaItem.Builder().setUri("https://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4").build()
binding.videoPlayerMedia3.player = player
player.addMediaItem(mediaItem)
player.play()
Run Code Online (Sandbox Code Playgroud)
2.Raw 文件夹中的视频代码。
val videoUri = RawResourceDataSource.buildRawResourceUri(R.raw.test_video_2)
val mediaItem = MediaItem.fromUri(videoUri)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
813 次 |
| 最近记录: |