VLC播放器web插件接口(Part2)
本文转自:http://www.educity.cn/wenda/124878.html
VLC Activex控件(VideoLAN.VLCPlugin.1 VideoLAN.VLCPlugin.2)的所有方法 属性及使用 在一个老外的网站上找到的
无意中在老外的网站上发现了关于VideoLAN.VLCPlugin.1和VideoLAN.VLCPlugin.2所有方法和属性~~公布出来~~以免大家浪费时间去寻找~~(注意你使用的VLC的版本)
If you open a link to a video file handled by the VLC plugin (To get the list of handled types, browse to about:plugins) or a page with an embedded video, the plugin should open and read the video.
Build HTML pages that use the plugin (version <= 0.8.5)
The following API description is only valid uptill version 0.8.5 of the mozilla plugin.
Additionally to viewing video on all pages, you can build custom pages that will use the advanced features of the plugin, using Javascript functions to control playback or extract information from the plugin.
The vlc plugin supports the following function calls:
play() : Start playing media in the plugin.
pause() : Pause playback.
stop() : Stop media playback.
fullscreen() : Switch the video to full screen.
set_volume(vol) : Set the volume. vol has to be an int in the 0-200 range.
get_volume() : Get the current volume setting.
mute() : Toggle volume muting.
set_int_variable(var_name, value) :
set_bool_variable(var_name, value) :
set_str_variable(var_name, value) :
get_int_variable(var_name) :
get_bool_variable(var_name) :
get_str_variable(var_name) :
clear_playlist() : Clear the playlist.
add_item(mrl) : Append an item whose location is given by the Media Resource Locator to the playlist.
next()
previous()
isplaying() : return true if the plugin is playing something.
get_length() : Get the media's length in seconds.
get_position() : Get the current position in the media in percent.
get_time() : Get the current position in the media in seconds.
seek(seconds,is_relative) : If is_relative is true, seek relatively to current time, else seek from beginning of the stream. Seek time is specified in seconds.
Here are a few examples of HTML pages that use the Mozilla plugin.
Example 1
In this example, the plugin will read an HTTP stream inside the web page. If the user goes fullscreen, he will have to press f to go back in normal view.
<html> <head><title>Demo of VLC mozilla plugin</title></head> <body> <h1>Demo of VLC mozilla plugin - Example 1</h1> <embed type="application/x-vlc-plugin" name="video1" autoplay="no" loop="yes" width="400" height="300" target="" /> <br /> <a javascript:;" onclick='document.video1.play()'>Play video1</a> <a javascript:;" onclick='document.video1.pause()'>Pause video1</a> <a javascript:;" onclick='document.video1.stop()'>Stop video1</a> <a javascript:;" onclick='document.video1.fullscreen()'>Fullscreen</a> </body> </html>
Example 2
In this example, the plugin will read a multicast RTP/UDP stream in a dedicated video output window.
<html> <head><title>Demo of VLC mozilla plugin</title></head> <body> <h1>Demo of VLC mozilla plugin - Example 2</h1> <embed type="application/x-vlc-plugin" name="video2" autoplay="no" loop="no" hidden="yes" target="rtp://@239.255.12.42:5004" /> <br /> <a javascript:;" onclick='document.video2.play()'>Play video2</a> <a javascript:;" onclick='document.video2.stop()'>Stop video2</a> <a javascript:;" onclick='document.video2.fullscreen()'>Fullscreen</a> </body> </html>
Build HTML pages that use the plugin (version > 0.8.5.1)
Additionally to viewing video on all pages, you can build custom pages that will use the advanced features of the plugin, using Javascript functions to control playback or extract information from the plugin.
The vlc plugin exports serveral objects that can be accessed for setting and getting information. When used improperly the API's will throw an exception that includes a string that explains what happened. For example when asking for vlc.input.length when there is no playlist item playing.
The vlc plugin knows the following objects:
audio : Access audio properties.
input : Access input properties.
playlist : Access playlist properties.
video : Access video properties.
log : Access log properties.
messages : Access to log message properties.
iterator : Access to log iterator properties.
The following JavaScript code shows howto get a reference to the vlc plugin. This reference can then be used to access the objects of the vlc plugin.
<html> <title>VLC Mozilla plugin test page</title> <body> <embed type="application/x-vlc-plugin" pluginspage="" version="VideoLAN.VLCPlugin.2" width="640" height="480" id="vlc"> </embed> <script language="Javascript"> <!-- var vlc = document.getElementById("vlc"); vlc.audio.toggleMute(); !--> </script> </body> </html>
Root object
readonly properties
VersionInfo : returns version information string
read/write properties
none
methods
vlc.versionInfo() : returns version information string
Audio object
readonly properties
none
read/write properties
vlc.audio.mute : boolean value to mute and ummute the audio
vlc.audio.volume : a value between [0-200] which indicates a percentage of the volume.
vlc.audio.track : a value between [0-65535] which indicates the audio track to play or that is playing. (supported in vlc version > 0.8.6)
vlc.audio.channel : an integer between 1 and 5 that indicates which audio channel mode is used, values can be: "1=stereo", "2=reverse stereo", "3=left", "4=right", "5=dolby". Use vlc.audio.channel to check if setting of the new audio channel has succeeded. (supported in vlc version > 0.8.6)
Audio Channel: <SELECT readonly onChange='doAudioChannel(this.value)'> <OPTION value=1>Stereo</OPTION'> <OPTION value=2>Reverse stereo</OPTION'> <OPTION value=3>Left</OPTION'> <OPTION value=4>Right</OPTION'> <OPTION value=5>Dolby</OPTION'> </SELECT'> <SCRIPT language="javascript"'> <!-- function doAudioChannel(value) { var vlc = getVLC("vlc"); vlc.audio.channel = parseInt(value); alert(vlc.audio.channel); }; --'>
methods
vlc.audio.toggleMute() : boolean toggle that mutes and unmutes the audio based upon the previous state
Input object
readonly properties
vlc.input.length : length of the input file in number of milliseconds
vlc.input.fps : frames per second returned as a float
vlc.input.hasVout : a boolean that returns true when the video is being displayed, it returns false when video is not displayed
read/write properties
vlc.input.position : normalized position in multimedia stream item given as a float value between [0.0 - 1.0]
vlc.input.time : the absolute position in time given in milliseconds, this property can be used to seek through the stream
<!-- absolute seek in stream !--> vlc.input.time = <absolute seek> <!-- relative seek in stream !--> vlc.input.time = vlc.input.time + <relative seek>
vlc.input.state : current state of the input chain given as enumeration (IDLE/CLOSE=0, OPENING=1, BUFFERING=2, PLAYING=3, PAUSED=4, STOPPING=5, ERROR=6)
vlc.input.rate : input speed given as float (1.0 for normal speed, 0.5 for half speed, 2.0 for twice as fast, etc.)
methods
none
Playlist object
readonly properties
vlemCount : number that returns the amount of items currently in the playlist
vlc.playlist.isPlaying : a boolean that returns true if the current playlist item is playing and false when it is not playing
read/write properties
none
methods
vlc.playlist.add(mrl) : add a playlist item as MRL (Multimedia Resource Locator). The MRL must be given as a string.
vlc.playlist.add(mrl,name,options) : add a playlist item as MRL (Multimedia Resource Locator), with metaname 'name' and options 'options'. All input values must be given as string.
vlc.playlist.play() : start playing the current playlist item
vlc.playlist.togglePause() : toggle the pause state for the current playlist item
vlc.playlist.stop() : stop playing the current playlist item
vlc.playlist.next() : iterate to the next playlist item
vlc.playlist.prev() : iterate to the previous playlist item
vlc.playlist.clear() : empty the current playlist, all items will be deleted from the playlist
vlc.playlist.removeItem(number) : remove the given item number (which cannot be greater then vlemCount)
Video object
readonly properties
vlc.video.width : returns the horizontal size of the video
vlc.video.height : returns the vertical size of the video
read/write properties
vlc.video.fullscreen : when set to true the video will be displayed in fullscreen mode, when set to false the video will be shown inside the video output size. The property takes a boolean as input.
vlc.video.aspectRatio : get and set the aspect ratio to use in the video screen. The property takes a string as input value. Valid values are: "1:1", "4:3", "16:9", "16:10", "221:100" and "5:4"
methods
vlc.video.toggleFullscreen() : toggle the fullscreen mode based on the previous setting
Log object
readonly properties
vlssages : returns a messages object
read/write properties
vlc.log.verbosity : write number [-1,0,1,2,3] for changing the verbosity level of the log messages. The numbers have the following meaning: -1 disable, 0 info, 1 error, 2 warning, 3 debug.
methods
none
Messages object
readonly properties
messages.count : returns number of messages in the log
messages.severity : number that indicates the severity of the log message (0 = info, 1 = error, 2 = warning, 3 = debug)
message.name : name of VLC module that printed the log message (e.g: main, http, directx, etc...)
message.type : type of VLC module that printed the log message (eg: input, access, vout, sout, etc...)
message.message : the message text
read/write properties
none
methods
messages.clear() : clear the current log buffer. It should be called as frequently as possible to not overflow the plugins logging buffer. Call this method after the log messages of interest are read.
messages.iterator() : returns a messages iterator object, which is used to iterate over the messages in the log. Don't clear the log buffer while holding an iterator object.
Iterator object
readonly properties
iterator.hasNext : returns a boolean that indicates when true, that wheter vlssages.next() returns the next message.
read/write properties
none
methods
iterator.next() : returns the next message object it the log
源文档 <http://blog.csdn.net/fm0517/article/details/39009971>
VLC播放器web插件接口(Part2)的更多相关文章
- VLC播放器web插件接口(Part1)
本文转自:http://blog.csdn.net/xiaoxiaoxuewen/article/details/7698803Embed tag attributesTo embed the plu ...
- 使用vlc播放器做rtsp流媒体服务器
可参考: 使用vlc播放器播放rtsp视频 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器做rts ...
- 使用vlc播放器播放rtsp流视频
可参考: 使用vlc播放器做rtsp服务器 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器播放rt ...
- Android VLC播放器二次开发1——程序结构分析
最近因为一个新项目需要一个多媒体播放器,所以需要做个视频.音频.图片方面的播放器.也查阅了不少这方面的资料,如果要从头做一个播放器工作量太大了,而且难度也很大.所以最后选择了VLC作为基础,进行二次开 ...
- Android VLC播放器二次开发3——音乐播放(歌曲列表+歌词同步滚动)
今天讲一下对VLC播放器音频播放功能进行二次开发,讲解如何改造音乐播放相关功能.最近一直在忙着优化视频解码部分代码,因为我的视频播放器需要在一台主频比较低的机器上跑(800M主频),所以视频解码能力受 ...
- Android VLC播放器二次开发2——CPU类型检查+界面初始化
上一篇讲了VLC整个程序的模块划分和界面主要使用的技术,今天分析一下VLC程序初始化过程,主要是初始化界面.加载解码库的操作.今天主要分析一下org.videolan.vlc.gui.MainActi ...
- Ubuntu 16.04安装VLC播放器,替代系统默认播放器
VLC播放器应该说是开源项目中最好的视频播放器,但功能不止于视频播放,还有视频直播等等.可以通过安装字幕插件搜索字母等. 安装步骤: 1.安装: sudo add-apt-repository ppa ...
- vlc 播放器的点播和广播服务
vlc 是一个开源的,同时跨平台的播放器.在研究 rtsp 协议时发现,它同时还是一个强大的流媒体服务器 VLM VLM(VideoLAN Manager) 在 vlc 中是一个小型的媒体管理器,它能 ...
- centos7安装VLC播放器
centos7安装VLC播放器 1.安装eple 下载地址:https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noar ...
随机推荐
- 预处理、编译、汇编、链接、启动代码、相关command
被忽略的过程 对于C这种编译性语言,我们平时编译时,不管是通过IDE图形界面,还是通过命令行,总感觉编译一下就完成了,然后就得到了针对某OS和某CPU的二进制可执行文件(机器指令的文件).但是实际上在 ...
- LVM——基本概念
介绍 LVM(Logical Volume Management)是一种存储设备管理技术,它赋予用户权力,汇集和抽象物理存储设备,从而实现更轻松,更灵活的管理. 利用device mapper这个Li ...
- pynq系列__LED灯闪烁
1.实现在board项中自动配置pynq-z2开发板 (1).board file下载地址:http://www.tul.com.tw/ProductsPYNQ-Z2.html (2).下载之后得 ...
- 复杂sql书写方法
给你一个复杂sql连接不同的表,多个嵌套查询条件等的语句时,你是非常的胆怯由于对语法的不熟悉以及没有经验和自信,现在我们来学习一下如何写复杂的sql,我们把它分解为很多小的步骤进行 一.集中最后的输出 ...
- 连接mongodb服务器
连接mongodb有几种方法 一种是使用mongodb编译时生成的客户端进行连接,就是我们之前介绍过的mongo客户端 另一种是使用各种驱动进行连接 这次使用mongo客户端进行连接,之前我们启动了一 ...
- [ 原创 ] Map之HashMap的使用方法
import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;/ ...
- nginx中ngx_http_ssl_module模块
此模块为HTTPS提供必要的⽀支持worker_processes auto;http {...server {listen 443 ssl;keepalive_timeout 70;ssl_prot ...
- Python+requests r.json()获取的内容,控制台显示中文Unicode转为utf-8《九》
在接口测试中,直接使用r.json()获取到的结果,难免会在结果中带有中文,但是在控制台的中文输出默认是Unicode编码,不能通过统一在设置中进行设置utf-8,因此为了在控制台更显而易见的显示出中 ...
- 第59题:螺旋矩阵 II
一. 问题描述 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵. 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], ...
- python自动华 (三)
Python自动化 [第三篇]:Python基础-集合.文件操作.字符编码与转码.函数 1. 集合 1.1 特性 集合是一个无序的,不重复的数据组合,主要作用如下: 去重,把一 ...