一个简单的C程序,使用libvlc播放mp3
A simple C program to play mp3 using libvlc
我是一个普通的C/C++程序员。最近,我做了一个项目,制作一个带有智能播放列表的媒体播放器,可以像Zune的SmartDj一样工作。我决定使用 libvlc 进行游戏。
我以前从未编写过开源软件,所以我对 git 和所有内容一无所知。你能帮我至少写一个C程序来播放mp3文件吗?
我应该从哪里开始?您如何从 mp3 文件本身中提取歌曲的艺术家和其他信息?
问候。
请确保您已安装以下软件包(否则安装它):
$ apt-get install libvlccore-dev libvlc-dev
测试.c:
#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_path(inst, "path to MP3 file");
// create a media play playing environment
mp = libvlc_media_player_new_from_media(m);
// no need to keep the media now
libvlc_media_release(m);
// play the media_player
libvlc_media_player_play(mp);
sleep(10);
// stop playing
libvlc_media_player_stop(mp);
// free the media_player
libvlc_media_player_release(mp);
libvlc_release(inst);
return 0;
}
如何链接和编译:
$ gcc $(pkg-config --cflags libvlc) -c test.c -o test.o
$ gcc test.o -o test $(pkg-config --libs libvlc)
相关文章:
- 是否可以从控制台应用程序使用 C++/WinRT 创建窗口?
- Linux C 只禁止我的程序使用核心转储
- 程序使用的 C 库中的错误处理C++
- 如何对以下程序使用静态或动态转换
- 程序使用boost::文件系统链接clang,但不使用gcc
- 钩子SSDT.其他驱动程序使用我的函数
- 如何避免对无锁程序使用易失性?
- C++字数统计程序使用C字符串错误在程序运行后
- C++击球平均值程序使用输入/输出文件打印名称,平均值,最高/最低平均值时遇到麻烦
- 程序 使用链表插入数据时停止工作
- Linux 中的信号处理程序使用 sigaction (C++)
- C++程序使用 mingw 在 Linux 上交叉编译在 MSy2 中工作,但不能直接在 Windows 中工作
- 程序使用数组中的字符串给出错误
- 为什么我的简单C++程序使用队列和 fstream 错误到无效指针
- 如何使程序使用功能过载用于派生的类对象
- 对程序使用 switch 语句,导致选项的无限循环
- 如何在Python脚本中导入CPYTHON模块,该模块将由C 程序使用
- 在C 中创建一个可以由其他程序使用的伪终端
- QT程序使用插入时会崩溃
- 我不知道如何让我的程序使用局部变量而不是全局变量