首页
学习
活动
专区
圈层
工具
发布

YouTube开源播放器中文使用指南

壹·前言 在这之前笔者使用原生的MediaPlayer、B站开源的IJKVideoView等播放器。直到发现ExoPlayer,这款由YouTube开发的播放器真的是非常强大。...对于自定义播放器非常友好,里面将很多模块抽象成独立的组件可供使用者自行定制,当然官方也提供了一些默认的实现。如果你正在开发视频类功能,强烈推荐你尝试一下ExoPlayer。...可以根据用户的需求方便的对播放器行为进行定制和扩展,ExoPlayer中的很多组件都支持自定义和扩展。 支持播放视频列表,并且可以支持对视频的裁剪、合并,以及循环播放设置。...支持大部分流媒体格式,并且对DRM的支持也比较友好,比如下方就是官方提供的支持的设备情况: 用例 Android版本号 Android API Level Audio Playback 4.1 16 Video...我们可以参考官方的API说明:官方文档 释放播放器 当我们不再使用播放器的时候,将手机有限的资源进行释放是非常的必要的。

4.3K20

03.视频播放器Api说明

03.视频播放器Api说明 目录介绍 01.最简单的播放 02.如何切换视频内核 03.切换视频模式 04.切换视频清晰度 05.视频播放监听 06.列表中播放处理 07.悬浮窗口播放 08.其他重要功能...Api 09.播放多个视频 10.VideoPlayer相关Api 11.Controller相关Api 12.边播放边缓存api 13.类似抖音视频预加载 14.视频播放器埋点 00.视频播放器通用框架...比如需要支持播放器UI高度定制,而不是该lib库中UI代码 针对视频播放,音频播放,播放回放,以及视频直播的功能。...使用简单,代码拓展性强,封装性好,主要是和业务彻底解耦,暴露接口监听给开发者处理业务具体逻辑 该播放器整体架构:播放器内核(自由切换) + 视频播放器 + 边播边缓存 + 高度定制播放器UI视图层 项目地址...01.最简单的播放 必须需要的四步骤代码如下所示//创建基础视频播放器,一般播放器的功能 BasisVideoController controller = new BasisVideoController

4.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android TV 开发之 TV视频播放器

    Android TV视频播放器VideoView 不想往下看可以直接在GitHub上面克隆到自己的项目中 GitHub地址 闲谈 最近公司又给了一个新任务,说要做电视机顶盒开发,这个机顶盒开发之前也没有接触过啊...第三步:确定你的开发信息无误之后点击Finish,创建这个项目(Android Studio3.5中开发TV 最低的API版本为5.0,低于这个版本则不能正常运行) ?...这些问题一定在你的脑海里面环绕着,我们注意到,电视机使用遥控器,而我们的手机使用手指触摸点击,这个不能混为一谈,所以电视上需要用到焦点电视上都是通过控件获取焦点来实现点击效果的,我们在布局文件的button...本地 和 网络 2.播放视频的的停止播放、继续播放、重新播放 3.播放视频时的时间和进度计算 4.播放时候按遥控器左右键时,前进 后退 先想清楚这些问题,才能使编码过程中变得有条理 视频来源...本地: 我们可以在valuse文件夹下面创建一个raw文件夹,在里面放一个mp4短视频文件,(PS:至于在真机存储里面放一个视频,你只要播放路径指定这个视频所在地址,然后再加上文件的读写权限,因为我不是这么实现的

    7.3K71

    使用VideoView做个实用的视频播放器

    最终效果图 最终效果图 前言 这里用VideoView写一个播放器, 可以横竖屏, 可以选文件, 可以暂停, 可以快进后退, 可以进度条拖动, 可以触屏调节音量. 来看看怎么实现的吧!...> VideoView的使用 VideoView使用起来非常简单, 设置好MediaController, 然后设置URI或者是Path, 然后start开始就好....这里的要点是一些使用功能的实现. 可以查阅官方文档. 官方文档 横竖屏切换 第一步是到配置文件里面设置....文件选择 关于文件选择器, 请查看我之前的文章. 然后就是要返回选中的文件路径. 这是Intent的常规使用了. 不多说了. 手势调节音量 添加触摸监听, 然后用手势操作实现...., 可以考虑使用SurfaceView, 但是VideoView大部分时候也够用了.

    1.5K50

    Python使用PyQT制作视频播放器

    最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。...这一篇用PyQT实现一个视频播放器,并借此来说明PyQT的基本用法。 视频播放器 先把已经完成的代码放出来。...视频播放利用了PyQT中的Phonon模块。此外,还有一个进程每隔一秒发出一个信号。窗口在接收到信号后,更新视频播放的时间。这个应用的效果如下: ?...在这个例子中,就是更新视频播放时间。QT中的“信号与槽”是普遍存在的机制。一些组建如按键,预设了“点击”这样的信号,可以直接对应到“槽”。...如代码中的: self.button.clicked.connect(self.handleButton) 此外,Phonon是一个很好用的多媒体模块,使用方法也很简单,可以参考代码本身,这里不再赘述。

    2.9K20

    使用播放器播放视频有黑边

    可能有两种原因: 1.推流端推的画面本身有黑边。...因为SDK推流只支持16:9(或者9:16)的画面,如果推流端采集的画面不是16:9的,SDK编码时也会编码成16:9的比例,多出来的部分以黑色填充,具体表现就是编码出来的画面有黑边。...这样的情况拉流端SDK一般是处理不了的 2.推流端推的画面无黑边,拉流端播放时有黑边。...这是因为拉流端显示屏的长宽比与画面的长宽比不一致所导致,如果需要完整的显示画面,那肯定会有多出来的部分(这部分会以黑色填充,具体表现就是黑边),否则画面就会被拉伸、变形。...使用的渲染的模式 可以在SuperPlayerGlobalConfig中的renderMode 默认是自适应模式

    3.4K30

    Android多媒体之视频播放器(基于MediaPlayer)

    零、前言 对于视频的播放,Android有内置的VideoView,用起来非常简单 本篇从自定义VideoView来封装MediaPlayer开始说起 <VideoView android...[2].使用媒体库的ContentProvider查询手机中视频,并列表显示 [3].更改视频的宽高以及适应横竖屏切换 [4].自定义控制界面以及倍速播放 [5].视频封面图(视频帧)的获取 [6]....API 23 + 也就是一句Api的事,很方便 /** * 变速 * @param speed */ public void changeSpeed(float speed) { //...本篇就这样,更多的功能可以自己去拓展, 搭个后台,弄个简单的网络播放器也未尝不可。...---- 后记:捷文规范 1.本文成长记录及勘误表 项目源码 日期 备注 无 2018-3-9 Android多媒体之视频播放器(基于MediaPlayer) 2.更多关于我 笔名 QQ 微信 爱好

    5.8K52

    Android音视频——系统播放器介绍(二)

    在上文Android音视频——系统播放器介绍(一)中,介绍到了状态,但是没有详细讲解,本篇就为大家带来MediaPlayer状态涉及到的方法。...在这2个状态之间的可以看做是MediaPlayer的生命周期。 Error 一些情形可能会让MediaPlayer操作失败,比如不支持的音视频格式,分辨率过高,网络超时等等。...开发者可以设置错误监听器setOnErrorListener(android.media.MediaPlayer.OnErrorListener)。...为了重复使用同一个MediaPlayer对象,可以使用reset()方法把它从Error状态恢复到Idle状态。 设置错误监听器OnErrorListener是一个好的编程习惯。...同步方式主要使用本地音视频文件,异步方式主要使用网络数据,需要缓冲数据。

    1K30

    使用国产SDK的播放器wlmedia渲染视频

    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章  FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer...,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器观看网络视频》。...除此以外,wlmedia也是一款优秀的国产音视频播放SDK,该框架既支持Android系统,也支持鸿蒙系统,集成方便、使用简单,可谓异军突起。... wlPlayer = new WlPlayer(); // 设置使用OpenGL渲染的最大视频宽高 wlPlayer.setRenderDefaultSize(3840, 2160); // 是否自动播放...总结一下,wlmedia的确使用简单,播放功能也丰富,是个不错的国产播放器SDK。 更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

    10300

    Android音视频——系统播放器介绍(一)

    相信大家看到这个标题就能想到,本篇讲的是什么播放器了,没错就是MediaPlayer。 分享一首动听的纯音乐Shut The Window!...相信有不少人都用过它,但是有少人是只停留在用的阶段呢,下一篇文章会接着详细介绍各个状态下的生命周期,本篇对新人友好一点,先简单讲一下相关知识点及调用。...什么是MediaPlayer MediaPlayer是Android自带的一个多媒体播放类,它可以用来播放音视频文件,或者是音频文件,我们可以用它来播放本地音频,或者是网络在线音频。...,可以是项目导入的文件,也可以是资源网址url(http://…/.mp3) 使用该方法,切记要申请权限(读写权限、访问网络) android:name="android.permission.WRITE_EXTERNAL_STORAGE...(2)打包到项目 在res中创建raw文件夹,将音乐放入,就可以使用: mediaPlayer = MediaPlayer.create(this,R.raw.video) 使用方法 initMediaPlayer

    84130

    使用国产的RedPlayer播放器观看网络视频

    RedPlayer是小红书基于FFmpeg4.3研发并开源的国产播放器,它可运行于Android和iOS系统,既支持播放本地视频文件,也支持播放网络上的流媒体链接。...有关FFmpeg在Android平台的集成说明参见《FFmpeg开发实战:从零基础到短视频上线》一书的“第12章 FFmpeg的移动开发”。...之前的文章《使用国产的ijkplayer播放器观看网络视频》介绍了另一款由B站研发的国产播放器ijkplayer,可惜ijkplayer已经多年未更新源码,使得应用在App项目中颇为不便。...其中android为RedPlayer适配Android系统的源码,ios为RedPlayer适配iOS系统的源码,redplayercore为RedPlayer的播放器核心源码,前两个源码都依赖于redplayercore...OpenRedPreload:这是播放器的预加载模块,主要提供网络视频流在下载过程中的缓存机制。

    36710

    教你使用超简单的视频播放器JiaoZiVideoPlayer

    在之前的项目中用到了视频播放的功能,在网上看了看使用了大家用的比较多的一个开源项目JiaoZiVideo让我迅速的实现了视频播放的相关功能。...); Jz播放器的简单使用,只需要在布局文件中引入该文件,然后为其设置待播放视频的链接和播放视频的封面图即可。...代码结构分析 JiaoZiVideo主要特点 可以完全自定义UI和任何功能 可以完全自定义UI和任何功能 一行代码切换播放引擎,支持的视频格式和协议取决于播放引擎,android.media.MediaPlayer...android:layout_width="match_parent" android:layout_height="200dp" /> 3.设置视频地址...-- or android:screenOrientation="landscape"--> 以上只是简单的播放视频功能,但是大家的项目需求里应该不仅仅只是需要播放视频就好了,所以下面写一下还有哪些常规使用方法

    5.5K20

    Python应用03 使用PyQT制作视频播放器

    最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。...这一篇用PyQT实现一个视频播放器,并借此来说明PyQT的基本用法。 视频播放器 先把已经完成的代码放出来。...视频播放利用了PyQT中的Phonon模块。此外,还有一个进程每隔一秒发出一个信号。窗口在接收到信号后,更新视频播放的时间。这个应用的效果如下: ?...在这个例子中,就是更新视频播放时间。QT中的“信号与槽”是普遍存在的机制。一些组建如按键,预设了“点击”这样的信号,可以直接对应到“槽”。...如代码中的: self.button.clicked.connect(self.handleButton) 此外,Phonon是一个很好用的多媒体模块,使用方法也很简单,可以参考代码本身,这里不再赘述。

    1.1K20

    Python应用03 使用PyQT制作视频播放器

    最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。...这一篇用PyQT实现一个视频播放器,并借此来说明PyQT的基本用法。 视频播放器 先把已经完成的代码放出来。...视频播放利用了PyQT中的Phonon模块。此外,还有一个进程每隔一秒发出一个信号。窗口在接收到信号后,更新视频播放的时间。这个应用的效果如下: ?...在这个例子中,就是更新视频播放时间。QT中的“信号与槽”是普遍存在的机制。一些组建如按键,预设了“点击”这样的信号,可以直接对应到“槽”。...如代码中的: self.button.clicked.connect(self.handleButton) 此外,Phonon是一个很好用的多媒体模块,使用方法也很简单,可以参考代码本身,这里不再赘述。

    1.5K30

    视频播放器的极致体验优化

    Photo by Vlada Karpovich from Pexels 视频体验由开始的视频清晰流畅,演变到现在的视频快速响应、即点即放、快速切换等等。...基于这些优化林勇平将介绍播放器的一些技巧,使得视频体验在较少改动的情况下就能达到极致体验的效果。...现有的大部分短视频使用的是MP4格式,选择MP4格式主要是文件信息头MOOV的信息应该是前移的而不是在文件末尾,所以需要整个服务端进行一遍转码。...其次翻页播放选择多播放器进行翻页播放,当前页播放时翻到下一页,点击时下一个播放器已经启动播放,相当于两个播放器同时播放,上滑播放上一个播放器,下滑播放下一个播放器,只不过下一个播放器的音量在非当前页面时为...其次翻页多播放器,不同于直播时的两个播放器同时进行播放,点播翻页播放在播放当前页面的时候,可以把上一个和下一个直接准备好,上滑时准备好上一个播放器,下滑时准备好下一个播放器,翻页时直接就准备播放。

    3.2K30

    Python应用03 使用PyQT制作视频播放器

    最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。...这一篇用PyQT实现一个视频播放器,并借此来说明PyQT的基本用法。 视频播放器 先把已经完成的代码放出来。...视频播放利用了PyQT中的Phonon模块。此外,还有一个进程每隔一秒发出一个信号。窗口在接收到信号后,更新视频播放的时间。这个应用的效果如下: ?...在这个例子中,就是更新视频播放时间。QT中的“信号与槽”是普遍存在的机制。一些组建如按键,预设了“点击”这样的信号,可以直接对应到“槽”。...如代码中的: self.button.clicked.connect(self.handleButton) 此外,Phonon是一个很好用的多媒体模块,使用方法也很简单,可以参考代码本身,这里不再赘述。

    3.6K90

    Infuse Mac(专业的视频播放器)

    Infuse for Mac是一款OS上专业的视频播放器,Infuse Mac可以在 iPhone、iPad、Apple TV 和 Mac 上观看几乎任何视频格式的美妙方式。无需转换文件!...Infuse 针对 macOS 11 进行了优化,具有强大的流媒体选项、Trakt 同步以及无与伦比的 AirPlay 和字幕支持。华丽的界面。精确控制。...图片软件功能播放更多视频类型强大的视频播放器几乎可以播放任何内容,包括标准 MP4、M4V 和 MOV – 加上 MKV、AVI、WMV、MTS、ISO、VIDEO_TS、FLV、OGM、OGV、ASF...PC、NAS、Wi-Fi 硬盘驱动器、Plex、Emby 和 Jellyfin 等应用程序或来自 Dropbox、Google Drive、OneDrive、Box、pCloud、Yandex 等云服务的视频...由开放字幕提供支持的优化字幕带上您自己的字幕,或以几乎任何语言即时(免费)下载它们。基础丝般流畅的视频播放器(播放带有 HDR 和杜比视界的全 4K)

    1K20
    领券