原文地址:https://wiki.videolan.org/Documentation:WebPlugin/
简介:使用视频构建网页
该VLC媒体播放器 webplugins是原生浏览器插件,类似于Flash或Silverlight插件,并允许所有的视频在浏览器中播放VLC媒体播放器可以读取。
除了在所有页面上查看视频外,您还可以构建将使用插件的高级功能的自定义页面,使用Javascript函数控制播放或从插件中提取信息。
有两个主要插件:一个是用于IE的ActiveX,另一个是用于其他浏览器的NPAPI。它们具有相同数量的功能。
在旧版本中,这些插件非常崩溃。我们希望您使用VLC 2.0.0或更新版本。
浏览器支持
它已经过测试:
Mozilla Firefox | |
Internet Explorer | |
Safari | |
Chrome | |
Konqueror | |
Opera |
它已经在GNU / Linux,Windows和MacOS上进行了测试。
嵌入标记属性
要将插件嵌入网页,请使用以下<embed>模板:
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" />
如果您在Internet Explorer中使用vlc版本<2.2.0,请使用以下<object>模板:
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab"></object>
对于标记属性的声明,请使用标记<param>。这是一个例子:
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab">
<param name="autostart" value="true" />
<param name="allowfullscreen" value="false" />
</object>
为了与mozilla插件兼容,您可以组合两个标记:
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab" id="vlc">
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" name="vlc" />
</object>
必需的元素
这些是<embed>标记的必需属性:
- width:指定插件的宽度。
- height:指定插件的高度。
- target(或其中一个别名:mrl,filename,src):指定要加载的视频的源位置(URL)。
可选元素
这些是<embed>标记的附加属性:
- autoplay,autostart:指定插件是否在加载时开始播放。默认值:true
- allowfullscreen(或fullscreenEnabled,fullscreen):(自VLC版本2.0.0)指定用户是否可以切换到全屏模式。默认值:true
- windowless :(因为VLC版本2.0.6,仅适用于Mozilla)在无窗口(非加速)表面上绘制视频并允许样式化(CSS叠加,3D转换等等)。默认值:false
- mute:指定音频音量最初是否静音。默认值:false
- volume :(自VLC版本2.2.2开始)以百分比形式指定初始音频音量。默认值:100
- loop,autoloop:指定视频是否循环播放。默认值:false
- controls (或toolbar):指定默认情况下是否显示控件。默认值:true
- bgcolor:指定视频播放器的背景颜色。默认值:#000000
- text :(仅适用于MacOS上的Mozilla)指定只要不显示视频就显示的文本。默认值:空
- branding:(仅适用于MacOS上Mozilla的vlc版本<2.2.2)指定是否应在Web插件的绘图上下文中显示VLC品牌。默认值:true
普通的DOM元素
- id:DOM id
- name:DOM名称
Javascript API说明
vlc插件导出几个可以访问的对象,用于设置和获取信息。如果使用不当,API会抛出一个异常,其中包含一个解释发生了什么的字符串。例如,当您将vlc.audio.track设置为超出范围时。
VLC对象
vlc插件知道以下对象:
- audio:访问音频属性。
- input:访问输入属性。
- input.title:访问标题属性(在vlc版本中可用> = 2.2.2,仅支持> = 3.0.0)
- input.chapter:访问章节属性(在vlc版本中可用> = 2.2.2,仅支持> = 3.0.0)
- 播放列表:访问播放列表属性。
- playlist.items:访问播放列表项属性。
- 副标题:访问字幕属性。
- 视频:访问视频属性。
- video.deinterlace:访问deinterlace属性。
- video.marquee:访问选取框视频过滤器属性。
- video.logo:访问徽标视频过滤器属性。
- mediaDescription:访问媒体信息属性(在vlc版本> = 2.0.2中可用)。
以下是不推荐使用的:
- log:访问日志属性(仅在vlc版本<= 1.0.0-rc1中可用)。
- messages:访问日志消息属性(仅在vlc版本<= 1.0.0-rc1中可用)。
- iterator:访问日志迭代器属性(仅在vlc版本<= 1.0.0-rc1中可用)。
- message:访问日志消息属性(仅在vlc版本<= 1.0.0-rc1中可用)。
例
以下JavaScript代码显示了如何获取对vlc插件的引用。然后,可以使用此引用来访问vlc插件的对象。
<!DOCTYPE html>
<html>
<title>VLC Mozilla plugin test page</title>
<body>
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org"
width="640"
height="480"
id="vlc" />
<script type="text/javascript">
<!--
var vlc = document.getElementById("vlc");
vlc.audio.toggleMute();
//-->
</script>
</body>
</html>
根对象
只读属性
- vlc.VersionInfo:返回版本信息字符串
读/写属性
- 没有
方法
- vlc.versionInfo() :(仅适用于Mozilla)返回版本信息字符串(与VersionInfo相同)
- vlc.getVersionInfo() :(在vlc版本> = 2.2.2中受支持)返回版本信息字符串(与VersionInfo和versionInfo()相同)
- vlc.addEventListener(eventname,callback,bubble) :(仅适用于Mozilla)为所提到的事件名称添加一个监听器,回调期望函数和气泡影响JS的事件处理顺序(通常设置为false)。
- vlc.removeEventListener(eventname,callback,bubble) :(仅适用于Mozilla)删除所提及事件名称的监听器,回调期望函数和气泡影响JS事件处理的顺序(通常设置为false)。
- vlc.attachEvent(eventname,callback) :(仅用于ActiveX)为所提到的事件名添加监听器,回调期望一个函数
- vlc.detachEvent(eventname,callback) :(仅用于ActiveX)删除提到的事件名称的监听器,回调期望一个函数
事件
- MediaPlayerNothingSpecial:vlc处于空闲状态,只是等待发出命令
- MediaPlayerOpening:vlc正在打开媒体资源定位器(MRL)
- MediaPlayerBuffering(int cache):vlc正在缓冲
- MediaPlayerPlaying:vlc正在播放媒体
- MediaPlayerPaused:vlc处于暂停状态
- MediaPlayerStopped:vlc处于停止状态
- MediaPlayerForward:vlc通过媒体快速转发(这永远不会被调用)
- MediaPlayerBackward:vlc正在向后通过媒体(这永远不会被调用)
- MediaPlayerEncounteredError:vlc遇到错误,无法继续
- MediaPlayerEndReached:vlc已到达当前播放列表的末尾
- MediaPlayerTimeChanged(int time):时间已经改变
- MediaPlayerPositionChanged(浮动位置):媒体位置已更改
- MediaPlayerSeekableChanged(bool seekable):媒体可搜索标志已更改(true表示媒体可搜索,false表示不可搜索)
- MediaPlayerPausableChanged(bool pausable):媒体可用标志已更改(true表示媒体可暂停,false表示不可暂停)
- MediaPlayerMediaChanged :(在vlc版本> = 2.2.0中受支持)媒体已更改
- MediaPlayerTitleChanged(int title) :(仅在Mozilla的vlc版本<2.2.0中)标题已更改(DVD / Blu-ray)
- MediaPlayerChapterChanged(int chapter) :(在vlc版本> = 3.0.0中支持)章节已更改(DVD / Blu-ray)
- MediaPlayerLengthChanged(int length) :(在vlc版本<2.2.0仅适用于Mozilla)长度已更改
- MediaPlayerVout(int count) :(在vlc版本> = 2.2.7中受支持)视频输出的数量已更改
- MediaPlayerMuted :(在vlc版本> = 2.2.7中受支持)音频音量被静音
- MediaPlayerUnmuted :(在vlc版本> = 2.2.7中受支持)音频音量未取消静音
- MediaPlayerAudioVolume(float volume) :(在vlc版本> = 2.2.7中受支持)音频音量已更改
例
以下代码段提供了在所有支持的平台上注册和取消注册事件回调的简单功能。
<script type="text/javascript">
<!--
function registerVLCEvent(event, handler) {
var vlc = getVLC("vlc");
if (vlc) {
if (vlc.attachEvent) {
// Microsoft
vlc.attachEvent (event, handler);
} else if (vlc.addEventListener) {
// Mozilla: DOM level 2
vlc.addEventListener (event, handler, false);
}
}
}
// stop listening to event
function unregisterVLCEvent(event, handler) {
var vlc = getVLC("vlc");
if (vlc) {
if (vlc.detachEvent) {
// Microsoft
vlc.detachEvent (event, handler);
} else if (vlc.removeEventListener) {
// Mozilla: DOM level 2
vlc.removeEventListener (event, handler, false);
}
}
}
// event callbacks
function handle_MediaPlayerNothingSpecial(){
alert("Idle");
}
function handle_MediaPlayerOpening(){
alert("Opening");
}
function handle_MediaPlayerBuffering(val){
alert("Buffering: " + val + "%");
}
function handle_MediaPlayerPlaying(){
alert("Playing");
}
function handle_MediaPlayerPaused(){
alert("Paused");
}
function handle_MediaPlayerStopped(){
alert("Stopped");
}
function handle_MediaPlayerForward(){
alert("Forward");
}
function handle_MediaPlayerBackward(){
alert("Backward");
}
function handle_MediaPlayerEndReached(){
alert("EndReached");
}
function handle_MediaPlayerEncounteredError(){
alert("EncounteredError");
}
function handle_MediaPlayerTimeChanged(time){
alert("Time changed: " + time + " ms");
}
function handle_MediaPlayerPositionChanged(val){
alert("Position changed: " + val);
}
function handle_MediaPlayerSeekableChanged(val){
alert("Seekable changed: " + val);
}
function handle_MediaPlayerPausableChanged(val){
alert("Pausable changed: " + val);
}
function handle_MediaPlayerMediaChanged(){
alert("Media changed");
}
function handle_MediaPlayerTitleChanged(val){
alert("Title changed: " + val);
}
function handle_MediaPlayerChapterChanged(val){
alert("Chapter changed: " + val);
}
function handle_MediaPlayerLengthChanged(val){
alert("Length changed: " + val + " ms");
}
function handle_MediaPlayerVout(val){
alert("Number of video output changed: " + val);
}
function handle_MediaPlayerMuted(){
alert("Audio volume muted");
}
function handle_MediaPlayerUnmuted(){
alert("Audio volume unmuted");
}
function handle_MediaPlayerAudioVolume(volume){
alert("Audio volume changed: " + Math.round(volume * 100) + "%");
}
// Register a bunch of callbacks.
registerVLCEvent("MediaPlayerNothingSpecial", handle_MediaPlayerNothingSpecial);
registerVLCEvent("MediaPlayerOpening", handle_MediaPlayerOpening);
registerVLCEvent("MediaPlayerBuffering", handle_MediaPlayerBuffering);
registerVLCEvent("MediaPlayerPlaying", handle_MediaPlayerPlaying);
registerVLCEvent("MediaPlayerPaused", handle_MediaPlayerPaused);
registerVLCEvent("MediaPlayerStopped", handle_MediaPlayerStopped);
registerVLCEvent("MediaPlayerForward", handle_MediaPlayerForward);
registerVLCEvent("MediaPlayerBackward", handle_MediaPlayerBackward);
registerVLCEvent("MediaPlayerEndReached", handle_MediaPlayerEndReached);
registerVLCEvent("MediaPlayerEncounteredError", handle_MediaPlayerEncounteredError);
registerVLCEvent("MediaPlayerTimeChanged", handle_MediaPlayerTimeChanged);
registerVLCEvent("MediaPlayerPositionChanged", handle_MediaPlayerPositionChanged);
registerVLCEvent("MediaPlayerSeekableChanged", handle_MediaPlayerSeekableChanged);
registerVLCEvent("MediaPlayerPausableChanged", handle_MediaPlayerPausableChanged);
registerVLCEvent("MediaPlayerMediaChanged", handle_MediaPlayerMediaChanged);
registerVLCEvent("MediaPlayerTitleChanged", handle_MediaPlayerTitleChanged);
registerVLCEvent("MediaPlayerChapterChanged", handle_MediaPlayerChapterChanged);
registerVLCEvent("MediaPlayerLengthChanged", handle_MediaPlayerLengthChanged);
registerVLCEvent("MediaPlayerVout", handle_MediaPlayerVout);
registerVLCEvent("MediaPlayerMuted", handle_MediaPlayerMuted);
registerVLCEvent("MediaPlayerUnmuted", handle_MediaPlayerUnmuted);
registerVLCEvent("MediaPlayerAudioVolume", handle_MediaPlayerAudioVolume);
//-->
</script>
音频对象
只读属性
- vlc.audio.count :(在vlc版本> = 1.1.0中受支持)返回可用音轨的数量。
读/写属性
- vlc.audio.mute:用于静音和取消静音的布尔值。
- vlc.audio.volume:介于[0-200]之间的值,表示卷的百分比。
- vlc.audio.track :(在vlc版本> 0.8.6中支持)[1-65535]之间的值,表示要播放或正在播放的音轨。值为0表示音频将被禁用。
- vlc.audio.channel :(在vlc版本> 0.8.6中支持)[1-5]之间的整数值,表示使用哪种音频通道模式,值可以是:“1 =立体声”,“2 =反向立体声”, “3 =左”,“4 =右”,“5 =杜比”。使用vlc.audio.channel检查音频通道模式的设置是否成功。
方法
- vlc.audio.toggleMute():布尔切换,用于根据先前的状态静音和取消静音。
- vlc.audio.description(int i) :(在vlc版本> = 1.1.0中受支持)给出第i个音轨名称。0对应于禁用,1对应于第一音频轨道。
例
Audio Channel:
<select 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 type="text/javascript">
<!--
function doAudioChannel(value)
{
var vlc = getVLC("vlc");
vlc.audio.channel = parseInt(value);
alert(vlc.audio.channel);
}
//-->
</script>
输入对象
只读属性
- vlc.input.length:输入文件的长度,以毫秒为单位。对于“实时”流或剪辑,返回0,其长度不能由VLC确定。如果没有输入,则返回-1。
- vlc.input.fps:以float为单位返回的每秒帧数(通常为60.0,50.0,23.976等...)
- vlc.input.hasVout:在显示视频时返回true的布尔值,在未显示视频时返回false
读/写属性
- vlc.input.position:多媒体流项中的规范化位置,以[0.0 - 1.0]之间的浮点值给出
- vlc.input.time:以毫秒为单位的绝对时间位置,此属性可用于搜索流
<!-- absolute seek in stream -->
vlc.input.time = <absolute seek>
<!-- relative seek in stream -->
vlc.input.time = vlc.input.time + <relative seek>
- vlc.input.state:以枚举形式给出的输入链的当前状态:
0 | IDLE |
1 | OPENING |
2 | BUFFERING |
3 | PLAYING |
4 | PAUSED |
5 | STOPPING |
6 | ENDED |
7 | ERROR |
注意:测试ENDED = 6以捕捉回放结束。检查STOPPING = 5是不够的。
- vlc.input.rate:输入速度为float(正常速度为1.0,半速度为0.5,速度为两倍,等等)。
rate > 1 | fast forward |
rate = 1 | normal speed |
rate < 1 | slow motion |
方法(methods)
- none
标题对象
只读属性
- vlc.input.title.count :(在vlc版本> = 2.2.2中受支持)返回可用标题的数量。
读/写属性
- vlc.input.title.track :(在vlc版本> = 2.2.2中支持)获取并设置标题轨道。该属性采用整数作为输入值[0..65535]。如果没有可用的标题,则返回-1。
方法
- vlc.input.title.description(int i) :(在vlc版本> = 2.2.2中支持)给出第i个标题名称。
章对象
只读属性
- vlc.input.chapter.count :(在vlc版本> = 2.2.2中受支持)返回当前标题中可用的章节数。
读/写属性
- vlc.input.chapter.track :(在vlc版本> = 2.2.2中支持)获取并设置章节轨道。该属性采用整数作为输入值[0..65535]。如果没有可用章节,则返回-1。
方法
- vlc.input.chapter.description(int i) :(在vlc版本> = 2.2.2中受支持)给出第i个章节名称。
- vlc.input.chapter.countForTitle(int i) :(在vlc版本> = 2.2.2中受支持)返回特定标题可用的章节数。
- vlc.input.chapter.prev() :(在vlc版本中支持> = 2.2.2)播放上一章。
- vlc.input.chapter.next() :(在vlc版本> = 2.2.2中支持)播放下一章。
播放列表对象
只读属性
- vlc.playlist.itemCount:返回播放列表中当前项目数量的数字(不建议使用,请勿使用,请参阅播放列表项目)
- vlc.playlist.isPlaying:一个布尔值,如果播放当前播放列表项则返回true,不播放时返回false
- vlc.playlist.currentItem :(在vlc版本> = 2.2.0中受支持)number,返回播放列表中当前项的索引。如果播放列表为空或没有项目处于活动状态,则返回-1。
- vlc.playlist.items:返回播放列表项集合,请参阅播放列表项
读/写属性
- 没有
方法
- vlc.playlist.add(mrl):将播放列表项添加为MRL。MRL必须以字符串形式给出。以数字形式返回播放列表中刚添加的项目的索引。
- vlc.playlist.add(mrl,name,options):将播放列表项添加为MRL,其中包含名称'name'和选项'options'。options是文本参数,可以作为包含空格分隔值的单个字符串提供,类似于VLC命令行,也可以作为字符串值数组。以数字形式返回播放列表中刚添加的项目的索引。
var options = new Array(":aspect-ratio=4:3", "--rtsp-tcp");
// Or: var options = ":aspect-ratio=4:3 --rtsp-tcp";
var id = vlc.playlist.add("rtsp://servername/item/to/play", "fancy name", options);
vlc.playlist.playItem(id);
- vlc.playlist.play():开始播放当前播放列表项
- vlc.playlist.playItem(number):开始播放标识符为number的项目
- vlc.playlist.pause():暂停当前播放列表项
- vlc.playlist.togglePause():切换当前播放列表项的暂停状态
- vlc.playlist.stop():停止播放当前播放列表项
- vlc.playlist.next():迭代到下一个播放列表项
- vlc.playlist.prev():迭代到上一个播放列表项
- vlc.playlist.clear():清空当前播放列表,所有项目都将从播放列表中删除(不建议使用,请勿使用,请参阅播放列表项目)
- vlc.playlist.removeItem(number):从标识符为number的播放列表中删除该项目(不建议使用,请勿使用,请参阅播放列表项目)
播放列表项目对象
只读属性
- vlc.playlist.items.count:当前播放列表中的项目数
读/写属性
- 没有
方法
- vlc.playlist.items.clear():清空当前播放列表,所有项目都将从播放列表中删除。(注意:如果正在播放电影,它将不会停止)
- vlc.playlist.items.remove(number):从播放列表中删除标识符为number的项目。(注意:这个数字是播放列表中的当前位置。如果播放列表的任何项目在此期间被删除,则不是vlc.playlist.add()给出的数字。)
字幕对象
只读属性
- vlc.subtitle.count :(在vlc版本> = 1.1.0中受支持)返回可用字幕的数量。
读/写属性
- vlc.subtitle.track :(在vlc版本> = 1.1.0中受支持)获取并设置要在视频屏幕上显示的字幕轨道。该属性采用整数作为输入值[1..65535]。如果字幕轨道设置为0,则将禁用字幕。
方法
- vlc.subtitle.description(int i) :(在vlc版本> = 1.1.0中受支持)给出第i个字幕名称。0对应于禁用,1对应于第一个字幕。
视频对象
只读属性
- vlc.video.width:返回视频的水平大小
- vlc.video.height:返回视频的垂直大小
- vlc.video.count :(在vlc版本> = 2.2.7中支持)返回可用的视频轨道数。
读/写属性
- vlc.video.fullscreen:当设置为true时,视频将以全屏模式显示,设置为false时,视频将显示在视频输出大小内。该属性采用布尔值作为输入。
- vlc.video.aspectRatio:获取并设置要在视频屏幕中使用的宽高比。该属性采用字符串作为输入值。典型值为:“1:1”,“4:3”,“16:9”,“16:10”,“221:100”和“5:4”
- vlc.video.subtitle :(在vlc版本> 0.8.6a中受支持)获取并设置要在视频屏幕上显示的字幕轨道。该属性采用整数作为输入值[1..65535]。如果字幕轨道设置为0,则将禁用字幕。
- vlc.video.crop:获取并设置要裁剪的区域的几何图形。设置为<width> x <height> + <left offset> + <top offset>。可能的值是:“120x120 + 10 + 10”
- vlc.video.teletext :(在vlc版本> = 0.9.0中受支持)获取并设置要在视频流上显示的图文电视页面。这仅在视频流中有图文电视基本流可用时才有效。该属性采用整数作为输入值[0..1000]来指示要查看的图文电视页面,将值设置为0表示隐藏图文电视。
- vlc.video.track :(在vlc版本> = 2.2.7中支持)[1-65535]之间的值,表示要播放或正在播放的视频轨道。值为0表示视频将被禁用。
方法
- vlc.video.takeSnapshot() :(在vlc版本> = 0.9.0中受支持,仅适用于ActiveX)生成快照并将其保存在桌面上
- vlc.video.toggleFullscreen():根据以前的设置切换全屏模式
- vlc.video.toggleTeletext() :(在vlc版本> = 0.9.0中支持)根据先前的设置切换图文电视页面是否透明覆盖
- vlc.video.description(int i) :(在vlc版本> = 2.2.7中支持)给出第i个视频轨道名称。0对应于禁用,1对应于第一视频轨道。
去隔行对象
只读属性
- 没有
读/写属性
- 没有
方法
- vlc.video.deinterlace.enable(“my_mode”) :(在vlc版本> = 1.1.0中受支持)启用与my_mode的隔行扫描。您可以使用“blend”,“bob”,“discard”,“linear”,“mean”,“x”,“yadif”或“yadif2x”模式启用它。过早启用逐行扫描可能会导致一些问题。在启用之前,您必须等待所有变量都可用。
- vlc.video.deinterlace.disable() :(在vlc版本> = 1.1.0中受支持)禁用逐行扫描。
选框对象
只读属性
- 没有
读/写属性
- vlc.video.marquee.text :(在vlc版本> = 1.1.0中受支持)在屏幕上显示我的文本。
- vlc.video.marquee.color :(在vlc版本> = 1.1.0中受支持)更改文本颜色。val是要使用的新颜色(WHITE = 0x000000,BLACK = 0xFFFFFF,RED = 0xFF0000,GREEN = 0x00FF00,BLUE = 0x0000FF ...)。
- vlc.video.marquee.opacity :(在vlc版本> = 1.1.0中支持)更改文本不透明度,val定义为0(完全透明)到255(完全不透明)。
- vlc.video.marquee.position :(在vlc版本> = 1.1.0中受支持)更改文本位置(“中心”,“左”,“右”,“顶部”,“左上角”,“右上角” “,”“底部”,“左下角”,“右下角”)。
- vlc.video.marquee.refresh :(在vlc版本> = 1.1.0中受支持)更改选取框刷新周期。
- vlc.video.marquee.size :(在vlc版本> = 1.1.0中受支持)val定义屏幕上显示的文本的新大小。如果文本大于屏幕,则不显示文本。
- vlc.video.marquee.timeout :(在vlc版本> = 1.1.0中受支持)更改超时值。val以ms为单位定义,但0值对应无限制。
- vlc.video.marquee.x :(在vlc版本> = 1.1.0中受支持)更改文本横坐标。
- vlc.video.marquee.y :(在vlc版本> = 1.1.0中受支持)更改文本纵坐标。
方法
- vlc.video.marquee.enable() :(在vlc版本> = 1.1.0中受支持)启用选框过滤器。
- vlc.video.marquee.disable() :(在vlc版本> = 1.1.0中受支持)禁用选取框过滤器。
由于VLC异步功能,可能会出现一些问题(不会应用颜色或文本等选项)。为避免这种情况,启用选框后,您必须等待一段时间才能更改选项。但它应该由新的vout实现来修复。
注意:[1]
徽标对象
只读属性
- 没有
读/写属性
- vlc.video.logo.opacity :(在vlc版本> = 1.1.0中支持)更改图片不透明度,val定义为0(完全透明)到255(完全不透明)。
- vlc.video.logo.position :(在vlc版本> = 1.1.0中受支持)更改文本位置(“中心”,“左”,“右”,“顶部”,“左上角”,“右上角” “,”“底部”,“左下角”,“右下角”)。
- vlc.video.logo.delay :(在vlc版本> = 1.1.0中受支持)在显示下一张图片之前显示每张图片持续1000毫秒(默认)。
- vlc.video.logo.repeat :(在vlc版本> = 1.1.0中受支持)图片动画的循环次数(-1 =连续,0 =禁用,n = n次)。默认值为-1(连续)。
- vlc.video.logo.x :(在vlc版本> = 1.1.0中受支持)更改x-offset以显示从屏幕左上角开始计数的图片。
- vlc.video.logo.y :(在vlc版本> = 1.1.0中受支持)更改y偏移量以显示屏幕左上角的图像计数。
方法
- vlc.video.logo.enable() :(在vlc版本> = 1.1.0中受支持)启用徽标视频过滤器。
- vlc.video.logo.disable() :(在vlc版本> = 1.1.0中受支持)禁用徽标视频过滤器。
- vlc.video.logo.file(“file.png”) :(在vlc版本> = 1.1.0中受支持)在屏幕上显示my file.png作为徽标。
由于VLC异步功能,可能会出现一些问题。为避免这种情况,在启用徽标视频过滤器后,您必须等待一段时间才能更改选项。但它应该由新的vout实现来修复。
MediaDescription对象
只读属性
- vlc.mediaDescription.title :(在vlc版本> = 2.0.2中受支持)返回标题元信息字段。
- vlc.mediaDescription.artist :(在vlc版本> = 2.0.2中受支持)返回艺术家元信息字段。
- vlc.mediaDescription.genre :(在vlc版本> = 2.0.2中受支持)返回流派元信息字段。
- vlc.mediaDescription.copyright :(在vlc版本> = 2.0.2中受支持)返回版权元信息字段。
- vlc.mediaDescription.album :(在vlc版本> = 2.0.2中受支持)返回相册元信息字段。
- vlc.mediaDescription.trackNumber :(在vlc版本> = 2.0.2中受支持)返回trackNumber元信息字段。
- vlc.mediaDescription.description :(在vlc版本> = 2.0.2中受支持)返回描述元信息字段。
- vlc.mediaDescription.rating :(在vlc版本> = 2.0.2中受支持)返回评级元信息字段。
- vlc.mediaDescription.date :(在vlc版本> = 2.0.2中受支持)返回日期元信息字段。
- vlc.mediaDescription.setting :(在vlc版本> = 2.0.2中受支持)返回设置元信息字段。
- vlc.mediaDescription.URL :(在vlc版本> = 2.0.2中受支持)返回URL元信息字段。
- vlc.mediaDescription.language :(在vlc版本> = 2.0.2中受支持)返回语言元信息字段。
- vlc.mediaDescription.nowPlaying :(在vlc版本> = 2.0.2中受支持)返回nowPlaying元信息字段。
- vlc.mediaDescription.publisher :(在vlc版本> = 2.0.2中受支持)返回发布者元信息字段。
- vlc.mediaDescription.encodedBy :(在vlc版本> = 2.0.2中受支持)返回encodedBy元信息字段。
- vlc.mediaDescription.artworkURL :(在vlc版本> = 2.0.2中受支持)返回artworkURL元信息字段。
- vlc.mediaDescription.trackID :(在vlc版本> = 2.0.2中受支持)返回trackID元信息字段。
读/写属性
- 没有
方法
- 没有
弃用的API
DEPRECATED:日志对象
注意:出于安全考虑,VLC 1.0.0-rc1是支持此对象及其子对象的最新版本(接近稳定版本)。
此对象允许访问VLC主消息记录队列。通常,此队列容量非常小(不超过256个条目)并且很容易溢出,因此应尽可能频繁地读取和清除消息。
只读属性
- vlc.log.messages:返回消息集合,请参阅消息对象
读/写属性
- vlc.log.verbosity:写入数字[-1,0,1,2,3]以更改日志消息的详细级别; 详细程度高于设置的消息将不会记录在队列中。数字具有以下含义:-1禁用,0信息,1错误,2警告,3调试。
方法
- 没有
DEPRECATED:消息对象
注意:出于安全考虑,VLC 1.0.0-rc1是支持此对象及其子对象的最新版本(接近稳定版本)。
只读属性
- messages.count:返回日志中的消息数
读/写属性
- 没有
方法
- messages.clear():清除当前的日志缓冲区。应尽可能频繁地调用它以不溢出消息队列。在读取感兴趣的日志消息后调用此方法。
- messages.iterator():创建并返回一个迭代器对象,用于迭代日志中的消息。保持迭代器对象时不要清除日志缓冲区。
DEPRECATED:消息Iterator对象
注意:出于安全考虑,VLC 1.0.0-rc1是支持此对象及其子对象的最新版本(接近稳定版本)。
只读属性
- iterator.hasNext:返回一个布尔值,指示vlc.log.messages.next()是否将返回下一条消息。
读/写属性
- 没有
方法
- iterator.next():返回日志中的下一个消息对象,请参阅Message对象
DEPRECATED:消息子对象
注意:出于安全考虑,VLC 1.0.0-rc1是支持此对象及其子对象的最新版本(接近稳定版本)。
- message.severity:表示日志消息严重性的数字(0 =信息,1 =错误,2 =警告,3 =调试)
- message.name:打印日志消息的VLC模块的名称(例如:main,http,directx等...)
- message.type:打印日志消息的VLC模块的类型(例如:输入,访问,vout,sout等...)
- message.message:消息文本