Exoplayer使用介绍


1. Exoplayer简介

ExoPlayer是google开源的应用级媒体播放器项目。与Android内置的MediaPlayer相比,ExoPlayer具有许多优点。支持通过HTTP(DASH)和SmoothStreaming进行动态自适应流,通过接入ffmpeg组件从而支持更多的码流和封装格式。具体接口调用可参考官方文档https://exoplayer.dev/。

2. 软件介绍

软件名:SStarExoPlayer.apk

需要的设备:遥控器、开发板、显示屏

SStarExoPlayer基于exoplayer 2.17.1的版本进行自定义开发,主要介绍Exoplayer界面的功能,便于开发人员和测试人员能够更清晰便捷的调试音视频的相关功能,以及快速定位问题原因。

3. SStarExoPlayer使用说明

3.1. 播放音视频方式

  • 将多媒体文件push到sdcard目录

  • 通过插入U盘播放,默认挂载到/mnt/media_rw/目录下

  • 可以通过点击文件管理器跳转到SStarExoPlayer播放音视频

注意:如果检测到U盘会切换到U盘目录,拔出U盘会切换到默认sdcard目录

3.2. SStarExoPlayer播放界面介绍

ExoPlayer播放器界面 描述
主界面
播放模式可分为:
1. 顺序播放/随机播放
2. 单集循环/列表循环
遥控器按键适配:
1. 点击“ok”键可调出控制界面
2. 将焦点移到进度条,按“左”“右”键可实现快退、快进。
3. 按菜单键可弹出播放菜单
4. 按设置键可弹出设置界面
文件列表

在播放界面,可按遥控器菜单键弹出
注意:播放菜单界面的列表为当前目录下的所有音视频文件,如果是不支持的封装格式和码流可能会播放失败,详见章节3.3的列出支持的码流格式。
设置菜单

播放设置提供了字幕开关,播放速度,音频声道,视频清晰度,画面尺寸,断点播放,旋转等几项功能。如图所示。
字幕菜单

选择字幕菜单,可手动打开或关闭字幕显示。如图所示。
速度

Speed:倍速播放功能,当前支持0.5x、0.75x、Normal、1.25x、1.5x、2x几种模式,如图所示。
音频轨道

可选择音频轨道
视频清晰度

根据不同的网络源提供的分辨率,可手动切换
画面尺寸

Asect-Ratio:宽高比,当前支持Auto、16:9、4:3、Fill、Zoom几种模式
注意:支持在TextureView上进行宽高比设置,不支持SurfaceView上进行宽高比设置。
旋转

Rotate:画面旋转功能,当前支持0°、90°、180°和270°旋转。
注意:在TextureView上支持旋转设置,在SurfaceView中不支持旋转设置。
断点播放

Breakpoint:断点播放功能开启后,退出当前播放时会保存视频退出时的播放进度,再次播放该视频会从上一次退出的进度继续播放。
音频播放

音频播放支持的码流和封装格式详见章节3.3

备注:

  1. 音量调节为系统自带控件,不在exoplayer应用中

  2. 图像模式为SystemUI控件,不在exoplayer应用中

  3. 声音模式为SystemUI控件,不在exoplayer应用中

3.3. SStarExoPlayer支持的码流格式以及封装格式

  • 码流格式

    码流格式 类型 是否支持
    H264 Video
    H265 Video
    MPEG2 Video
    MPEG4 Video
    VC1 Video
    VP6 Video
    VP8 Video
    VP9 Video
    MJPEG Video
    AVS Video
    AVS+ Video
    RV30 Video
    RV40 Video
    MP3 Audio
    WAV Audio
    AAC Audio
    AC3 Audio 不支持
    EAC3 Audio 不支持
    Vorbis Audio
    FLAC Audio
    APE Audio
    DTS Audio
  • 封装格式

    封装格式 是否支持
    3GP
    3G2
    AVI
    FLV
    F4V
    MP4
    MOV
    TS
    M2TS
    TP
    TRP
    M2P
    MKV
    VOB
    DAT
    M4V
    ASF
    WEBM
    MP3
    WAV
    MPEG
    PCM
    MKA
    RMVB
    RM

    说明:以上为验证可以在exoplayer播放的码流和封装格式,如果是其它格式,可能会出现播放异常等情况。