基于libvlc写个最简略的播放器
来源:互联网 发布:淘宝怎么会有苏宁易购 编辑:程序博客网 时间:2024/05/19 23:16
ubuntu下编译vlc 我们已经把vlc编译哦了。生成了一系列的bin和libvlc.so.接下来我们就用编译好的libvlc.so搞一个最简单的播放器。
我认为vlc的伟大之处有一点就是他并没有把整个播放器写成一个硬生生的bin。而是独立出来个libvlc库,其他的玩家也可以用它的库自己搞一个和他功能一样强大的播放器。
这些部分协同作战,形成了功能强大的libvlc。让我们开工。
#include <vlc/vlc.h>#include <assert.h>#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#include <unistd.h>static const char * test_defaults_args[] = { "-v", "--ignore-config", "-I", "dummy", "--no-media-library"};static const int test_defaults_nargs = sizeof (test_defaults_args) / sizeof (test_defaults_args[0]);int main (void){ libvlc_instance_t *instance; libvlc_media_t *media; libvlc_media_player_t *player; const char * file = "./test.mpg"; instance = libvlc_new (test_defaults_nargs, test_defaults_args); assert (instance != NULL); media = libvlc_media_new_path (instance, file); assert (media != NULL); player = libvlc_media_player_new_from_media (media); assert (player != NULL); libvlc_media_release (media); libvlc_media_player_play (player); sleep(10); libvlc_media_player_stop (player); libvlc_media_player_release (player); libvlc_release (instance); return 0;}
上篇已经把vlc编译好了,运行make install.安装
gcc vlctest.c -lvlc -o vlctest
运行之前设置一下环境变量
export LD_LIBRARY_PATH=/usr/local/lib/
ok开始运行
./vlctest
其实就简单的3步骤 就能把视频播出来。
1.通过 libvlc_new 创建一个libvlc的实例,以后都需要这个实例来创建各个模块的实例。
2.通过 libvlc_media_new_path 创建一个 libvlc_media_t的实例。libvlc把多媒体文件的个体抽象成了libvlc_media_t。
3.通过 libvlc_media_player_new_from_media 把上面的media传入然后创建了一个播放器的实例。以后直接对这个player操作就行。
比如
libvlc_media_player_play(player);
libvlc_media_player_stop(player);
libvlc_media_player_pause(player);本文转自:http://www.myexception.cn/mobile/1181369.html
0 0
- 基于libvlc写个最简略的播放器
- 【玩转VLC】--- 基于libvlc写个最简单的播放器
- 基于libVLC的视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器
- 基于libVLC的视频播放器(支持RTSP协议)
- c#万能视频播放器(基于libvlc)
- 基于libVlc开发Winform视频播放器
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器(图形界面版)
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器(图形界面版)
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器(图形界面版)
- 最简单的基于libVLC的例子:最简单的基于libVLC的视频播放器(图形界面版)
- VLC-基于LIBVLC播放视频
- C语言基于GTK+Libvlc实现的简易视频播放器
- C语言基于GTK+Libvlc实现的简易视频播放器(二)
- 【环境配置】配置ndk
- centos 6.5中安装virtualbox 4.3
- 数学 之 hdu 4722
- Linux 下vi命令大全
- UVa391 - Mark-up
- 基于libvlc写个最简略的播放器
- 【iOS】iOS用UICollectionViewController来进行横竖屏九宫格布局
- ACM 1002新版本
- Android:创建可穿戴应用 - 语音操作
- 《The Swift Programming Language》中文翻译及读书笔记-page29
- Linux根目录”/“下各个系统文件夹的含义和用途
- 最大连续子序列和
- MySQL中的float和decimal类型float,double容易产生误差,对精确度要求比较高时,建议使用decimal来存,
- ASP.NET-FineUI开发实践-5