我正在按照本教程实施Exoplayer。但是不建议使用ExtractorMediaSource类。我需要从远程URL播放视频。在这种情况下可以使用什么替代方法?
val mediaSource = ExtractorMediaSource
.Factory(DefaultDataSourceFactory(context, userAgent))
.setExtractorsFactory(DefaultExtractorsFactory())
.createMediaSource(Uri.parse(url))
Run Code Online (Sandbox Code Playgroud) 我的文件res/raw夹中有一个dog.mp4视频文件,我想与ExoPlayer一起播放。我正在尝试从ExoPlayer开发人员指南(https://google.github.io/ExoPlayer/guide.html)中找出如何获取此代码行的视频Uri :
MediaSource videoSource = new ExtractorMediaSource(mp4VideoUri,
dataSourceFactory, extractorsFactory, null, null);
Run Code Online (Sandbox Code Playgroud)
要获得它,我使用以下行:
Uri mp4VideoUri = Uri.parse("android.resources://"+getPackageName()+"/"+R.raw.dog);
Run Code Online (Sandbox Code Playgroud)
还尝试了以下语法: android.resource://[package]/[res type]/[res name]
但是SimpleExoPlayerView保持黑色,我得到以下错误:
com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: Unable to connect to android.resources://lt.wilkas.deleteexoplayer/2131099648
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?