前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >libVLC教程

libVLC教程

作者头像
ccf19881030
发布2020-10-09 15:18:48
3.9K0
发布2020-10-09 15:18:48
举报
文章被收录于专栏:ccf19881030的博客ccf19881030的博客

libVLC教程

  • 1 libVLC教程
    • 1.1 安装SDK
      • 1.1.1 Windows
      • 1.1.2 Linux
    • 1.2 链接到libVLC
    • 1.3 示例libVLC代码
  • 2 关于libVCL的一些参考资料

1 libVLC教程

1.1 安装SDK

此代码是为libVLC 1.1.0或更高版本编写的。 无法使用旧版本进行编译。

较旧的版本分别在libVLC指南0.9libVLC指南086c中提供,仅出于历史目的。

1.1.1 Windows

Windows的VLC二进制安装程序不包含libVLC SDK。 对于大多数用户而言,这将浪费带宽和空间。

您可以从sdk目录中的普通7-ZIP包中找到SDK文件,即开发头文件和导入库。 或者,您可以从源代码构建VLC。

有关使构建正常工作的更多说明,请参见libVLC教程086c

1.1.2 Linux

您应该在名为libvlc-dev(Debian,Ubuntu …),libvlc-devel(RPM发行版)或类似文件的二进制包中找到必要的文件(libvlc.so,libvlc.pc,头文件…)。 确保版本足够新,然后再继续。

1.2 链接到libVLC

cc example.c -lvlc -o example

在Linux / BSD上,您可能更喜欢使用pkg-config:

pkg-config --print-errors 'libvlc >= 1.1.0'
cc -c example.c -o example.o $(pkg-config --cflags libvlc)
cc example.o -o example $(pkg-config --libs libvlc)

1.3 示例libVLC代码

此示例代码将(尝试)播放URL。 还有一个使用SDL进行视频输出的示例

#include <stdio.h>
 #include <stdlib.h>
 #include <vlc/vlc.h>
 
 int main(int argc, char* argv[])
 {
     libvlc_instance_t * inst;
     libvlc_media_player_t *mp;
     libvlc_media_t *m;
     
     /* Load the VLC engine */
     inst = libvlc_new (0, NULL);
  
     /* Create a new item */
     m = libvlc_media_new_location (inst, "http://mycool.movie.com/test.mov");
     //m = libvlc_media_new_path (inst, "/path/to/test.mov");
        
     /* Create a media player playing environement */
     mp = libvlc_media_player_new_from_media (m);
     
     /* No need to keep the media now */
     libvlc_media_release (m);
 
 #if 0
     /* This is a non working code that show how to hooks into a window,
      * if we have a window around */
      libvlc_media_player_set_xwindow (mp, xid);
     /* or on windows */
      libvlc_media_player_set_hwnd (mp, hwnd);
     /* or on mac os */
      libvlc_media_player_set_nsobject (mp, view);
  #endif
 
     /* play the media_player */
     libvlc_media_player_play (mp);
    
     sleep (10); /* Let it play a bit */
    
     /* Stop playing */
     libvlc_media_player_stop (mp);
 
     /* Free the media_player */
     libvlc_media_player_release (mp);
 
     libvlc_release (inst);
 
     return 0;
 }

2 关于libVCL的一些参考资料

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • libVLC教程
  • 1 libVLC教程
    • 1.1 安装SDK
      • 1.1.1 Windows
      • 1.1.2 Linux
    • 1.2 链接到libVLC
      • 1.3 示例libVLC代码
      • 2 关于libVCL的一些参考资料
      相关产品与服务
      云点播
      面向音视频、图片等媒体,提供制作上传、存储、转码、媒体处理、媒体 AI、加速分发播放、版权保护等一体化的高品质媒体服务。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档