http://download.videolan.org/pub/videolan/vlc/
下载vlc的源码

vlc流程:
1、创建并初始化一个libvlc实例

LIBVLC_API libvlc_instance_t * libvlc_new( int argc , const char *const *argv );

2、根据给定的媒体对象创建一个播放器对象

LIBVLC_API libvlc_media_player_t * libvlc_media_player_new_from_media( libvlc_media_t *p_md );

3、解析媒体实例

LIBVLC_API void libvlc_media_parse( libvlc_media_t *p_md );

4、根据事件解析器分析媒体各种事件及处理
//从发送事件的媒体播放器对象那里获取一个事件管理器

① LIBVLC_API libvlc_event_manager_t * libvlc_media_player_event_manager ( libvlc_media_player_t *p_mi );

//事件通知注册器

② LIBVLC_API int libvlc_event_attach( libvlc_event_manager_t *p_event_manager, libvlc_event_type_t i_event_type, libvlc_callback_t f_callback, void *user_data );

5、设置给予媒体播放器媒体输出的win32/win64窗口句柄

LIBVLC_API void libvlc_media_player_set_hwnd ( libvlc_media_player_t *p_mi, void *drawable );

(注:用Qt的话,比如用QLabel,要用它的winID,并且强转成(void *)类型)
6、获取媒体的状态

LIBVLC_API libvlc_state_t libvlc_media_get_state(libvlc_media_t *p_md );

7、开始播放

LIBVLC_API int libvlc_media_player_play ( libvlc_media_player_t *p_mi );

8、检测媒体是否正在播放(注:这里的返回值可以强转成bool类型方便一点)

LIBVLC_API int libvlc_media_player_is_playing ( libvlc_media_player_t *p_mi );

9、正在播放的媒体暂停(暂停再点击播放可以继续)

LIBVLC_API void libvlc_media_player_set_pause ( libvlc_media_player_t *mp,  int do_pause );

10、正在播放的媒体停止(停止再点击播放则重头播放)

LIBVLC_API void libvlc_media_player_stop ( libvlc_media_player_t *p_mi );

11、释放所有vlc对象(注:在释放libvlc_media_player_t之前,记得先将视频停止,避免的不必要麻烦)

LIBVLC_API void libvlc_media_player_release( libvlc_media_player_t *p_mi );//释放libvlc_media_player_t
LIBVLC_API void libvlc_media_release( libvlc_media_t *p_md );//释放libvlc_media_t。
LIBVLC_API void libvlc_release( libvlc_instance_t *p_instance );//释放libvlc_instance_t。

QT跨平台使用libvlc播放视频相关推荐

  1. QT使用QMediaPlayer + QVideoWidget播放视频文件

    QT使用QMediaPlayer + QVideoWidget播放视频文件 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 目录 文章 ...

  2. Delphi调用LibVLC播放视频,窗口如何响应键盘鼠标的消息?OnClick、OnDblClick、OnMouseMove

    LibVlc使用简单方便,Delphi调用其接口播放视频文件或者网络视频(RTSP.RTMP等各种协议),几行代码就搞定了,实在是制作视频播放器的最佳利器. 不过,调用libvlc_media_pla ...

  3. VLC-基于LIBVLC播放视频

    安装VLC后在安装目录 找到所需要的:sdk 开发使用 :  plugins 运行使用,必须与执行文件在一个目录 还有核心的dll libvlc.dll 和 libvlccore.dll VC 代 ...

  4. QT Libvlc旋转播放视频

    使用Libvlc进行旋转播放视频时只需要我们在创建vlc实例时传入相应的参数即可: 比如旋转90度: QVector<const char*> vec; const char* p1 = ...

  5. 1.QT中播放视频,录音程序的编写

     1  通过process的方式播放视频 T22VideoPlayer.pro HEADERS += \ MyWidget.h SOURCES += \ MyWidget.cpp QT += gu ...

  6. Qt QWidget播放视频背景图片闪烁

    播放软件主窗口重新实现函数changeEvent,解决最小化之后界面不刷新问题. void VRS::changeEvent(QEvent * event) {//最小化之后再恢复到之前状态,界面会出 ...

  7. Qt的QMediaPlayer播放视频和音频

    这里只是做简单的测试,功能简单,代码如下: QVBoxLayout *layout = new QVBoxLayout; QVideoWidget* vw = new QVideoWidget(); ...

  8. Python使用QT播放视频

    先看下效果 点击打开视频->进行视频选择,可以暂停和播放,双击可以全屏,代码也是网上收集的 有2个demo,第一个是简单版,第二个demo增加了播放,暂停,进度条,全屏 需要安装一个视频解码器, ...

  9. 关于使用QT在ARM上实现ffmpeg播放视频的思路

    1.使用ffmpeg解码视频,这一点可以看雷神的例子. 2.开启线程,在线程中解码视频为image,并获取帧率(重要),将image进行拉伸到所需的大小后放入一个队列中,不停的添加image到队列中, ...

  10. QT播放视频QMediaPlayer

    pro文件添加QT +=multimedia multimediawidgets: UI界面拖拽一个QWidget,右键提升为QVideoWidget: 定义QMediaPlayer对象 QMedia ...

最新文章

  1. Algs4-2.2.29自然的归并排序(未解决)
  2. 查看电脑python虚拟环境-手把手教你在Linux系统下使用Python虚拟环境
  3. html5怎么实现自动缩放图片,如图,html5开发的手机端web在线客服聊天,如何实现图片点击放大,捏合缩放功能?...
  4. 开发发布npm module包
  5. python flask 分页前后端分离_flask展示pyecharts图表前后端分离的问题
  6. 前端学习(2915):数据绑定
  7. amd860k能装黑苹果吗_可以黑苹果,性能比同价位的GTX1650强,RX580 2048SP不香吗?...
  8. 外网访问内网Oracle数据库
  9. 网络之NSURLConnection
  10. 2018年下半年《软件评测师》上午试卷及答案
  11. windos10专业版激活(可用)
  12. 富士施乐m115b怎么连接电脑_富士施乐 Fuji Xerox DocuPrint M118w/M118z打印机无线连接设置详解...
  13. 一级域名和二级域名的区别
  14. mysql之my.cnf
  15. KEIL-51单片机实现自定义bootloader,用于程序更新 研究
  16. his系统计算机软件,医院信息系统(HIS)
  17. 概率论与拉普拉斯决定论矛盾吗?
  18. linux停止正在执行脚本
  19. 13 常见CHIP封装的创建
  20. 国内常见网络设备提供商分析

热门文章

  1. 小米8使用usb连接计算机,小米怎么连接电脑usb(小米8连接电脑看不到文件)
  2. vmware克隆linux虚拟机,报Device eth1 does not seem to be present,delaying initialization.错误
  3. 大数据——舆情监控系统
  4. 浦江县教育计算机网上网认证系统,上网认证系统使用说明
  5. java导出可运行文件格式,|java导出excel,excel打不开,报文件格式无效,怎么解决!...
  6. php 分换算成元,亿元换算成元(亿元换算成元加几个零)
  7. Python&Opencv手势识别系统(完整源码&自定义UI操作界面&视频教程)
  8. 90后最流行的英文名
  9. 中科矿业带你走进SWARM/BZZ,选择去或留?
  10. Itext设置页眉页脚、表头划线、水印、条形码、二维码