Video streaming Exoplayer如何知道使用自定义视频视图播放哪个URL
我正在开发一个在线视频播放器,我正在使用Video streaming Exoplayer如何知道使用自定义视频视图播放哪个URL,video-streaming,exoplayer,exoplayer2.x,Video Streaming,Exoplayer,Exoplayer2.x,我正在开发一个在线视频播放器,我正在使用TextureView静音扩展TextureView实现TextureViewSurfaceTextRelistener自定义类作为自定义视频播放器 我的回复中有两个url(主url)和dash\u url。现在我想使用ExomediaPlayer,但我有以下问题 如何对要播放的URL进行分类 或者这是否将由球员自己在比赛中决定 或者我们需要使用一个URL播放器自动完成他的工作 4.或者是否可以将自定义视频表面视图和SimpleXoPlayer结合使用 如
TextureView静音扩展TextureView实现TextureView
<代码>SurfaceTextRelistener自定义类作为自定义视频播放器
我的回复中有两个url
(主url)和dash\u url
。现在我想使用ExomediaPlayer
,但我有以下问题
URL
进行分类URL
播放器自动完成他的工作自定义视频表面视图
和SimpleXoPlayer
结合使用
如何实现自适应比特率流
像你管144p 220p 720p。。。etc
根据网络状况?
我已经尝试了GIT上提供的示例,但它们不是在玩dash\u url
就是在玩source\u url
Exoplayer的示例代码
哪个URL应该由您播放。破折号还是简单的HTTP URL?玩家不会决定播放哪个URL。这是由你来发挥这些媒体的。这完全取决于最终结果。所以我再次询问需要播放哪个URL?你为什么在这里使用2个URL?@BawenderYandra我使用的“HTTP URL”应该像YouTube
一样播放,根据网络条件144p 240p 720p….
我应该如何实现这一点你真正需要的是DASH实现。DASH代表HTTP上的动态自适应流。您可以在线检查一些实现,exoplayer支持DASH mediatype。你也可以在网上找到一些很好的例子。这是exoplayer提供的主要功能,youtube使用此功能。检查以下链接:1.[link]()2.[link]()第二个链接也提供了详细的实现。希望这能帮助你快乐编码
String videoURL = "http://blueappsoftware.in/layout_design_android_blog.mp4";
SimpleExoPlayerView exoPlayerView = (SimpleExoPlayerView) findViewById(R.id.exo_player_view);
try {
BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
TrackSelector trackSelector = new DefaultTrackSelector(new AdaptiveTrackSelection.Factory(bandwidthMeter));
SimpleExoPlayer exoPlayer = ExoPlayerFactory.newSimpleInstance(this, trackSelector);
Uri videoURI = Uri.parse(videoURL);
DefaultHttpDataSourceFactory dataSourceFactory = new DefaultHttpDataSourceFactory("exoplayer_video");
ExtractorsFactory extractorsFactory = new DefaultExtractorsFactory();
MediaSource mediaSource = new ExtractorMediaSource(videoURI, dataSourceFactory, extractorsFactory, null, null);
exoPlayerView.setPlayer(exoPlayer);
exoPlayer.prepare(mediaSource);
exoPlayer.setPlayWhenReady(true);
} catch (Exception e) {
Log.e("MainAcvtivity", " exoplayer error " + e.toString());
}