vlc做流媒体播放器(里面有好多知识点哦亲)

酱油桶 vlc的应用之一:在命令行下的使用
2008-11-28 13:45:34
标签:command 休闲 line 职场 vlc
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。jeremiah.blog.51cto/539865/115910
    如果编译得到没有界面的vlc,双击运行后就没法手动选打文件或网络了。在这介绍几个vlc的命令行命令。
 
    1. vlc帮助
vlc --help 
or 
vlc --help --advanced
 
    2. vlcdebug log
vlc -vv --extraintf=logger
    运行的log将会保存在中。
 
    3. vlc打开文件
vlc -vv --extraintf=logger d:/01.avi
 
    4. 作为服务器通过rtp客户端发送ts
vlc -vvv --extraintf=logger d:/01.avi :sout=#duplicate{dst=rtp{dst=localhost,mux=ts,port=1234}}
 
    5. 作为客户端接收rtp
vlc -vv --extraintf=logger rtp://@:1234
   
 
vlc的应用之二:vlcActiveXcab
2008-11-28 15:38:01
标签:vlc 休闲 cab 职场 ActiveX
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。jeremiah.blog.51cto/539865/115943
   2009-05-14补充:8. Activex的卸载;9. vlc自动安装Activex 10. 关于vlcActivex的说明。
    vlc自带了ActiveX控件--axvlc.dll,在编译完vlc之后的activex文件夹下。ActiveX是个好东西,axvlc.dll可以随意放到任何位置,成功注册之后可以方便的应用在程序和网页之中。可以参考activex文件夹下的test.htmlREADME.TXTActiveX控件的接口有第一版和第二版,第一版简单,功能少,已经不再维护建议用第二版本,功能多一点。(参考的[1]
    vlc-0.8.6ivlc-0.9.4ActiveX注册方法略有不同。
    ActiveX的网页测试之前需要把Internet选项-->安全-->本地Intranet的安全级别调到最低。Jeremiah的网页测试环境是IE7,其他浏览器未进行测试。

    1. vlc-0.8.6iActiveX注册
    E:下新建文件夹vlc-0.8.6iActiveX,拷贝vlc-0.8.6i目录下的pluginslibvlc.dllactivex/axvlc.dllvlc-0.8.6iActiveX/dlls目录下,拷贝activex/test.htmlvlc-0.8.6iActiveX下。新建文本文件install.bat内容如下:
regsvr32 dlls\axvlc.dll
    双击install.bat后会提示“dlls\axvlc.dll中的DllRegisterServer成功”。然后用打开test.html
文本框输入MRL就可以播放了。

    2. vlc-0.9.4ActiveX注册
    0.9.4不光要告诉计算机vlcaxvlc.dll的位置,还要告诉注册表installdir的位置,也就是libvlc.dll的位置
    E:下新建文件夹vlc-0.9.4ActiveX,拷贝vlc-0.9.4目录下的pluginslibvlc.dlllibvlccore.dllactivex/axvlc.dllvlc-0.9.4ActiveX/dlls马铃薯曲奇目录下,拷贝activex/test.htmlvlc-0.9.4ActiveX下。新建文本文件内容如下:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC]
"InstallDir"="E:\\vlc-0.9.4ActiveX\\dlls"
    新建文本文件install.bat内容如下:
regsvr32 dlls\axvlc.dll


regedit /
    双击install.bat后就可以用test.html进行测试了。

    3. 一点点小提示
    如果注册成功,但是test.html播放文件的时候会报错说decoder modules会不到之类信息,那请将0.8.6i牵引带0.9.4交替注册,可能会解决这个问题。(Jeremiah因为这个问题搞了一天,NND)(2009-05-14补充:直接看8吧,以前这个地方写的不大对。)
   
    4. 制作cab文件
    如果要类似与test.html作个播放器服务器,但是我们却不能手动操纵客户端去下载注册vlcActiveX,解决方法就是自己制作cab文件。
    (1) 到本日志的附件(cabsdk.rar)或者以下地址去下载[url]download.microsoft/download/platformsdk/cab/2.0/w98nt42kmexp/[/url]
    (2) 安装
    (3) axvlc.dllvlc的安装文件拷贝到cabsdk安装路径/BIN/ 下。Jeremiah这里用的是vlc-0.。(关于如何制作ccc29vlc的安装文件,参考日志《windows平台下vlc编译之二:vlc-0.8.6i的编译》)
    (4) /BIN下新建文本文件axvlc.inf,内容如下:
; Version number and signature of INF file.
;
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

[Add.Code]
vlc-0.
axvlc.dll=axvlc.dll

[axvlc.dll]
FileVersion=0,8,6,0
clsid={9BE31822-FDAD-461B-AD51-BE1D1C159921}
RegisterServer=no
hook=nsiinstaller

[vlc-0.]
FileVersion=0,8,6,0
file-win32-x86=thiscab

[nsiinstaller]
run=%EXTRACT_DIR%\vlc-0.
    注意:请根据安装文件的版本修改此文件。
    (5) 命令行到BIN目录下,执行以下命令生成cab文件:
CABARC.EXE N axvlc.cab axvlc.inf axvlc.dll vlc-0.
   
    5. cab文件的使用
    html页面下使用cab文件可以通过以下方式:
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
                codebase="your/path/of/cabfile/axvlc.cab"
                        width="640" height="480" id="vlc" events="True">
<param name="Src" value="" 十字滑块联轴器/>
<param name="ShowDisplay" value="True" />
<param name="AutoLoop" value="False" />
<param name="AutoPlay" value="False" />
</OBJECT>
    这样web客户端无须手动注册axvlc.dll就可以使用了。

    6. 一点比较严重小问题
    由于vlc的安装文件一般是比较大,所以制作出来的cab文件也是很大的,在网络带宽不是很好的时候,光下载这个cab可能就很长很长时间,基本上可以说这样的方式是行不通的。所以我们需要根据自己的业务需求去精简vlcJeremiah将在下一篇日志介绍。

    7. C#下使用vlcActiveX
    vs2005新建一个windows应用程序,在左侧工具箱右键-->选择项-->com组件-->VideoLAN VLC ActiveX plugin v2,工具箱里面就添加了vlcActiveX控件,可以在窗体里面随便画了。
    调用函数如下:
private void button1_Click(object sender, EventArgs e)
{
        //输入参数
        string parameter = ":sout=#duplicate{dst=display} :no-overlay";
       
        //判断是否正在播放
        if (this.axVLCPlugin21.playlist.isPlaying)
        {
                //如果正在播放, 则停止
                this.axVLCPlugin21.playlist.stop();
        }

        //清空播放列表
        this.axVLCPlugin21.playlist.clear();

        远心扫描透镜//添加播放列表
        this.axVLCPlugin21.playlist.add(textBox1.Text, null, parameter);

        //播放列表更新到新添加的播放项
        this.();

本文发布于:2024-09-23 05:19:37,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/166615.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:文件   手动   注册   客户端   网页   版本   目录   测试
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议