【VLC-Android】LibVLC API简介(相当于VLC的MediaPlayer)
前言
学新东西API很重要,这里抛砖引玉整理了一下,欢迎反馈!
正文
vlc-android的LibVLC相当于MediaPlayer对象,这里列一下对应关系。
1、public void playMRL(String mrl)
对应MediaPlayer的setDataSource,注意不要转成Uri再toString,否则无法播放。用法如下:
playMRL("http://live.3gv.ifeng.com/zixun.m3u8")
2、 public native void play()
对应MediaPlayer的start(),开始播放。
3、 public native void pause()
对应MediaPlayer的pause(),暂停播放。
4、public native void stop()
对应MediaPlayer的stop(),停止播放。
5、public native boolean isPlaying()
对应 MediaPlayer的isPlaying,是否正在播放。
6、public native int getPlayerState();
获取播放器的状态。
7、public native int getVolume()
获取音量。
8、public native int setVolume(int volume)
设置音量。(取值范围和MediaPlayer不一样)
9、public native long getLength()
对应 MediaPlayer的getDuration。获取视频的长度,以毫秒为单位。
10、public native long getTime()
返回视频当前时间,以毫秒为单位。
11、public native long setTime(long time)
设置视频当前时间,以毫秒为单位。
12、public native float getPosition()
对应MediaPlayer的getCurrentPosition。设置视频当前位置。
13、public native void setPosition(float pos)
对应 MediaPlayer的seekTo。设置视频当前位置。
14、public native void setRate(float rate)
设置播放速度(可实现快进快退)1是正常速度,2是两倍速(我猜可能和Vitamio一样取值是0.5 ~ 2.0) ,对应的有getRate方法。
15、public native boolean isSeekable()
是否支持seek(拖拽)。比如直播就不支持seek操作
16、public void destroy()
对应 MediaPlayer的release,销毁LibVLC实例。
17、public byte[] getThumbnail(String mrl, int i_width, int i_height)
获取视频的截图,rgba的byte数组。
18、public void setHardwareAcceleration(int hardwareAcceleration)
设置硬解编码,参考LibVLC.HW_ACCELERATION_FULL等参数
19、public void setNetworkCaching(int networkcaching)
设置网络缓冲。(还不知道怎么用,有看到设置值为3000、6000)
20、public void setFrameSkip(boolean frameskip)
(暂时也不知道有啥用,好像可以提高性能,帧解码出错以后直接跳过?)
结束
虽然用播放器很长时间了,很多基础性和原理性的东西都还不懂,还要加强学习,比如上面的frame skip就不知道是啥。
【VLC-Android】LibVLC API简介(相当于VLC的MediaPlayer)的更多相关文章
- Android 多媒体播放API简介
本文调用android的媒体播放器实现一些音乐播放操作 项目布局: <LinearLayout xmlns:android="http://schemas.android.com/ap ...
- vlc android 移植版编译
同步发表于http://avenwu.net/2015/07/27/vlc-android-compiling 安装必备工具/解决环境问题 环境准备什么的如果没配置过需要一步步配置,主要是sdk/nd ...
- 【转】vlc android 代码编译
转自:http://blog.csdn.net/asircao/article/details/7734201 系统:ubuntu12.04代码:git://git.videolan.org/vlc- ...
- Ubuntu15.10 编译VLC Android(安卓)过程记录
持续更新中... 最后一次修改于 2016-03-20 15:33:45 1.必要库的安装 除基本编译环境(gcc.g++等外),需要额外安装如下的库(用于下载必要的依赖文件) (1)JDK 推荐安装 ...
- android.net.Uri 简介 API
android.net.Uri 简介 public abstract class android.net.Uri extends Object implements Parcelable, Compa ...
- Libvlc API 简单说明 [转]
Libvlc API 简单说明 原文来自http://www.xuebuyuan.com/1519616.html libvlc_instance_t* libvlc_new(int argc, co ...
- Android Action Bar简介
Android Action Bar简介 Design: Action Bar Action Bar是在屏幕顶端的一部分内容,通常在整个app进行中都保持存在. 它提供了几个关键的功能: 1.使得重要 ...
- eclipse安装androidSDK地址,Android SDK Manager简介
eclipse安装android插件地址:https://dl-ssl.google.com/android/eclipse 这个和安装其他插件方式一样:Help—Install New Softwa ...
- 初步探究Android App API接口测试--实战
一.Android App API接口测试 1.如何学好Android App API接口测试 postman可以用来实现API接口自动化测试,但是也有弊端,无法实现接口测试数据的参数化,为了达到接口 ...
随机推荐
- es6继承 vs js原生继承(es5)
最近在看es2015的一些语法,最实用的应该就是继承这个新特性了.比如下面的代码: $(function(){ class Father{ constructor(name, age){ this.n ...
- MySQL 复制介绍及搭建
MySQL复制介绍 MySQL复制就是一台MySQL服务器(slave)从另一台MySQL服务器(master)进行日志的复制然后再解析日志并应用到自身,类似Oracle中的Data Guard. M ...
- Ajax学习笔记2之使用Ajax和XML
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Using Ajax wit ...
- poj-1703-Find them, Catch them
Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 41928 Accepted: ...
- Verilog学习笔记简单功能实现(七)...............接口设计(并行输入串行输出)
利用状态机实现比较复杂的接口设计: 这是一个将并行数据转换为串行输出的变换器,利用双向总线输出.这是由EEPROM读写器的缩减得到的,首先对I2C总线特征介绍: I2C总线(inter integra ...
- 习题: codevs 2492 上帝造题的七分钟2 解题报告
这道题是受到大犇MagHSK的启发我才得以想出来的,蒟蒻觉得自己的代码跟MagHSK大犇的代码完全比不上,所以这里蒟蒻就套用了MagHSK大犇的代码(大家可以关注下我的博客,友情链接就是大犇MagHS ...
- 减小服务器负担,Apache启用mod_expires模块
mod_expires可以减少10%左右的重复请求,让重复的用户对指定的页面请求结果都CACHE在本地,根本不向服务器发出请求. 在使用之前,首先要确认一下”mod_expires”模组是否有启用.如 ...
- 性能测试学习之二 ——性能测试模型(PV计算模型)
PV计算模型 现有的PV计算公式是: 每台服务器每秒平均PV量 =( (总PV*80%)/(24*60*60*40%))/服务器数量 =2*(总PV)/* (24*60*60) /服务器数量 通过定积 ...
- spring 3.x变通实现@Conditional注解的功能
在某些情况下,我们要根据当前的系统配置决定是否初始化一个bean,也就是条件性加载,比如本地缓存或者分布式缓存,亦或是采用http实现或者socket实现.在spring 4.x中,可以使用新增的@C ...
- Volatile实现原理
volatile 在多线程上volatile 是synchronized 轻量级实现.在多核处理器开发中保证了共享变量的"可见性".可见性是指当一个线程修改一个共享变量的时候,另外 ...