如何解决在没有 UI 的情况下使用 ExoPlayer?
我知道如何使用 ExoPlayer 通过其核心功能播放视频流:
布局:
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/playerView"
app:surface_type="texture_view"/> <!-- for enabling screenshot -->
代码:
com.google.android.exoplayer2.SimpleExoPlayer mp;
mp = new SimpleExoPlayer.Builder(ctx).build();
com.google.android.exoplayer2.ui.PlayerView pv = findViewById(R.id.playerView);
pv.setPlayer(mp);
MediaItem mi = MediaItem.fromUri(videoUri);
mp.setMediaItem(mi);
mp.prepare();
mp.play();
我知道我可以通过以下方式从视频中创建屏幕截图:
pv.getBitmap(...);
但是,我现在根本不想显示视频流,我只需要定期从中提取一些屏幕截图(假设每分钟 1 个)。
我可以使用上面的代码并通过一些 UI 元素来屏蔽它,但那是
- 丑
- 不合适(因为手机甚至可能在屏幕关闭的情况下睡觉)
我如何使用 ExoPlayer 加载流,并在没有显示/渲染器(?)的情况下对其进行解码,并定期给我截图(或者如果更简单,应要求)考虑到手机可能不会处于活动状态(因此可能会关闭显示)?
我见过类似的 question,但它仅用于音频。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。