场景介绍

视频播放包括播放控制、播放设置和播放查询,如播放的开始/停止、播放速度设置和是否循环播放等。

接口说明

接口名

功能描述

Player(Context context)

创建Player实例。

setSource(Source source)

设置媒体源。

prepare()

准备播放。

play()

开始播放。

pause()

暂停播放。

stop()

停止播放。

rewindTo(long microseconds)

拖拽播放。

setVolume(float volume)

调节播放音量。

setVideoSurface(Surface surface)

设置视频播放的窗口。

enableSingleLooping(boolean looping)

设置为单曲循环。

isSingleLooping()

检查是否单曲循环播放。

isNowPlaying()

检查是否播放。

getCurrentTime()

获取当前播放位置。

getDuration()

获取媒体文件总时长。

getVideoWidth()

获取视频宽度。

getVideoHeight()

获取视频高度。

setPlaybackSpeed(float speed)

设置播放速度。

getPlaybackSpeed()

获取播放速度。

setAudioStreamType(int type)

设置音频类型。

getAudioStreamType()

获取音频类型。

setNextPlayer(Player next)

设置当前播放结束后的下一个播放器。

reset()

重置播放器。

release()

释放播放资源。

setPlayerCallback(IPlayerCallback callback)

注册回调,接收播放器的事件通知或异常通知。

开发步骤

创建 Player 实例,可调用 Player(Context context),创建本地播放器,用于在本设备播放。

构造数据源对象,并调用 Player 实例的 setSource(Source source)方法,设置媒体源,代码示例如下:

Player impl = new Player(context);

File file = new File("/path/test_audio.aac");

in = new FileInputStream(file);

FileDescriptor fd = in.getFD(); // 从输入流获取FD对象

Source source = new Source(fd);

impl.setSource(source);

调用 prepare(),准备播放。

(可选)构造 IPlayerCallback,IPlayerCallback 需要实现 onPlayBackComplete 和 onError(int errorType, int errorCode) 两个方法,实现播放完成和播放异常时做相应的操作。代码示例如下:

@Override

public void onPlayBackComplete() {

HiLog.info("[PlayerCallback]", "onPlayBackComplete");

if (impl != null) {

impl.stop();

impl = null;

}

}

@Override

public void onError(int errorType, int errorCode) {

HiLog.error("[PlayerCallback]", "onError");

}

调用 play() 方法,开始播放。

(可选)调用 pause() 方法和 resume() 方法,可以实现暂停和恢复播放。

(可选)调用 rewindTo(long microseconds) 方法实现播放中的拖拽功能。

(可选)调用 getDuration() 方法和 getCurrentTime() 方法,可以实现获取总播放时长以及当前播放位置功能。

调用 stop() 方法停止播放。

播放结束后,调用 release() 释放资源。

分享

鸿蒙视频potato,鸿蒙OS 视频播放开发指导相关推荐

  1. 鸿蒙智联生态产品《接入智慧生活App开发指导》(官方更新版)

    原文:有更新!鸿蒙智联生态产品<接入智慧生活App开发指导>(官方版),点击链接查看更多技术内容. 在HarmonyOS Connect生态产品应用开发过程中,很多开发者对于如何接入智慧生 ...

  2. 鸿蒙OS应用开发之——环境搭建

    一 概述 作为鸿蒙OS应用开发的初学者,本篇介绍开发工具的安装与配置 准备工作 软件的下载与安装 配置开发环境 第一个程序(Hello World) 2.1 开发工具 Java:编译构建依赖JDK(版 ...

  3. 乐视pro3应用鸿蒙OS,完美兼容、无广告,初体验华为鸿蒙系统,鸿蒙OS明显优于iOS?...

    原标题:完美兼容.无广告,初体验华为鸿蒙系统,鸿蒙OS明显优于iOS? 周末的时间体验了一下最近比较热门的华为鸿蒙系统,说说感受,第一感觉就是原来的APP都能用,没有闪退等现象,电量消耗和以前基本一样 ...

  4. 【鸿蒙学院】鸿蒙App开发直播学员提问与回答

    最近我做了一场关于鸿蒙的直播,学员非常踊跃,提出了数百个问题,我特意挑出了30个比较典型的问题,并一一回复. Q1.  安卓开发的APP能运行在鸿蒙系统么,鸿蒙和安卓的关系是子集还是扩展或是完全独立不 ...

  5. 鸿蒙应用runtime,鸿蒙OS初探

    因为要验证我的几个应用能否移植到鸿蒙,仔细看了下鸿蒙,当然作为开发者,肯定要从开发环境看起. 开发环境 鸿蒙OS的开发工具叫做DevEco Studio,和Android Studio一样,也是基于I ...

  6. 鸿蒙系统生态建设怎样了,鸿蒙系统正式发布-华为OS生态建设开始布局

    鸿蒙系统正式发布-华为OS生态建设开始布局 9日下午,华为在其全球开发者大会HDC上正式向全球发布其全新的基于微内核的面向全场景的分布式操作系统--鸿蒙OS,这一消息还获得了央视新闻的转发.点赞. 据 ...

  7. 华为鸿蒙系统发布完整视频,华为发布鸿蒙系统 华为鸿蒙系统发布会完整视频 华为鸿蒙系统发布会回放...

    您可能感兴趣的话题: 华为发布鸿蒙系统 核心提示:华为发布鸿蒙系统 华为鸿蒙系统发布会完整视频 华为鸿蒙系统发布会回放.华为鸿蒙手机操作系统的正式发布无疑是近期数码圈中的大事件.下面就让小编带大家看看 ...

  8. 鸿蒙系统,鸿蒙app简易登录界面,界面开发教程

    鸿蒙系统,鸿蒙app简易登录界面,界面开发教程. // 这个是主Ability public class MainAbilitySlice extends AbilitySlice {@Overrid ...

  9. 梅科尔工作室——鸿蒙设备开发实战004:内核开发

    目录 华为云14天鸿蒙设备开发培训Day4:内核开发 任务管理 任务管理的简介 任务相关的概念 任务的调度机制 实现任务的管理 实验结果与扩展实验 软件定时器 软件定时器的基本概念 软件定时器的运作机 ...

最新文章

  1. phpinfo 信息利用
  2. forward 和redirect的区别
  3. HDU5875 - Function
  4. 8分钟答辩稿_5分钟学会8个答辩小套路,教资面试没在怕的啦!
  5. Day26:configparser、subprocess模块
  6. 东南亚ERP系统怎么样?
  7. 计算机网络四级题库word,计算机四级考试题库2016
  8. SpringMVC学习(六)处理乱码问题
  9. javascript百度地图使用(根据地名定位、根据经纬度定位)
  10. 互联网热点自动获取工具的实现
  11. 一个简单的BitTorrent客户端实现(五):tracker manager和tracker实现
  12. QQ用户的帐号和密码安全
  13. Vue 实现华视身份证读卡器功能
  14. R语言把DataFrame的一行变成向量
  15. [原]as3 flash web 应用 (2)批量上传之php页面接收flash传递的数据
  16. The Summary of October
  17. 【愚公系列】2022年01月 攻防世界-进阶题-MISC-76(warmup)
  18. LM358集成运算放大器的简易测量
  19. Android launcher 上滑进入allapps和recentUI
  20. FaceBook_android配置openssl签名

热门文章

  1. 微软体感设备Kinect上市三天即遭黑客破解
  2. html 导航栏 选中状态,CSS导航菜单高亮选中菜单项
  3. 对西部数据硬盘自带的加密进行修改密码和取消密码保护
  4. 小型功率放大器的设计与制作——功率放大器电路仿真模型搭建
  5. WeUI for 小程序--使用教程
  6. php下载二进制流文件下载,从MySQL流式传输二进制文件以使用PHP下载
  7. 通过ROS控制真实机械臂(2)----单轴运动,手柄控制
  8. 华为鸿蒙邀请函,2019年华为开发者大会邀请函曝光,鸿蒙实锤?
  9. [学习报告]《LeetCode零基础指南》(第三讲)一维数组
  10. 一早醒来皮肤很糟糕 该怎么办