栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

无法使用exoPlayer 2.11播放MKV Matroska视频

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

无法使用exoPlayer 2.11播放MKV Matroska视频

我在Github上制作了一个示例项目,该项目可以正确处理您的文件。您可以在下面的链接中进行检查和测试:

https://github.com/squti/ExoPlayer-MKV-
Sample

如果您只想使用项目中的代码,请先从设备或仿真器中卸载以前安装的应用程序,然后运行新的应用程序。

以下是项目的基本代码:

MainActiviy.java

public class MainActivity extends AppCompatActivity {    private PlayerView playerView;    private SimpleExoPlayer player;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        playerView = findViewById(R.id.player_view);    }    @Override    protected void onStart() {        super.onStart();        player = ExoPlayerFactory.newSimpleInstance(this, new DefaultTrackSelector());        playerView.setPlayer(player);        DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(     this,     Util.getUserAgent(this, getString(R.string.app_name)));        ProgressiveMediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory)     .createMediaSource(Uri.parse("file:///android_asset/jellyfish-3-mbps-hd-h264.mkv"));        player.prepare(mediaSource);        player.setPlayWhenReady(true);    }    @Override    protected void onStop() {        super.onStop();        playerView.setPlayer(null);        player.release();    }}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    android:layout_width="match_parent"    android:layout_height="match_parent">    <com.google.android.exoplayer2.ui.PlayerView        android:id="@+id/player_view"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="#000000"        app:resize_mode="fill" /></androidx.constraintlayout.widget.ConstraintLayout>

另外,您需要将以下依赖项添加到应用程序级别的Gradle文件中:

implementation 'com.google.android.exoplayer:exoplayer-core:2.11.7'implementation 'com.google.android.exoplayer:exoplayer-ui:2.11.7'

我将视频文件放在

asset
文件夹中,但是您可以根据需要进行更改。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/419499.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号