Youtube视频的Exoplayer

时间:2016-08-22 15:56:34

标签: android video youtube exoplayer

我的目标是在应用程序中播放Youtube视频。

  • Youtube Player API不是我想要的,因为视频前面可能有叠加层。
  • Webviews对于表演很糟糕,并且不允许自动播放。

Exoplayer似乎很好,但是他们的大部分文档都被破坏了(链接),对于一个非常简单的任务来说非常复杂,并且没有提供工作演示(他们的演示崩溃......)。此外,他们没有解释如何正确获取YouTube的URL的DASH。

那么,有没有办法让Exoplayer轻松获取https://www.youtube.com/watch?v=yFAnn2j4iB0等任何youtube链接的DASH信息?

我使用http://www.youtube.com/get_video_info?&video_id=yFAnn2j4iB0,一旦解码,我就会收到此DASH网址:https://manifest.googlevideo.com/api/manifest/dash/ms/au/nh/IgpwcjAxLnBhcjAxKgkxMjcuMC4wLjE/mv/m/source/youtube/requiressl/yes/ip/165.225.76.70/fexp/3300108,3300130,3300161,3313267,9419451,9422596,9424135,9425619,9426788,9428398,9431012,9431719,9433096,9433223,9433946,9435526,9438327,9438662,9439580,9441225,9441737,9442156,9442424,9442426,9442680,9443322,9443345,9443768,9443913,9444207,9445344/ipbits/0/as/fmp4_audio_clear,webm_audio_clear,webm2_audio_clear,fmp4_sd_hd_clear,webm2_sd_hd_clear/sparams/as,hfr,id,initcwndbps,ip,ipbits,itag,mm,mn,ms,mv,nh,pl,playback_host,requiressl,source,expire/pl/23/id/c850279f68f8881d/mn/sn-25g7snee/mm/31/hfr/1/playback_host/r18---sn-25g7snee.googlevideo.com/itag/0/mt/1471872416/sver/3/key/yt6/initcwndbps/9365000/expire/1471894709/upn/w1CO218TeQA/s/11395DF1FE7737DA54826F38EE1C61D28B46619DC.9724AB654EE916E8B5C5F687BE3504E4799BA939933

但它并没有在Exoplayer Demo中开始抛光。 DASH是否正确?你们有人在他们的应用程序中使用ExoPlayer吗?

到目前为止我发现的文件:
How to play youtube video in ExoPlayer in Android? https://github.com/google/ExoPlayer/tree/release-v1/demo_ext(但崩溃><)

2 个答案:

答案 0 :(得分:0)

如果您的目标是播放YouTube视频,请使用YouTube Android Player API。您需要提供Exoplayer的直接URL。

答案 1 :(得分:0)

我成功运行了演示应用。您可以按照https://google.github.io/ExoPlayer/demo-application.html上的指南操作并在github上https://github.com/google/ExoPlayer.git

克隆项目 不过有点注意,这是我见过的最复杂的项目,需要我经历过最长时间来建立它的平台。

在gradle构建完成后,您只需运行演示项目。