VLC 音视频播放,支持添加视频列表和循环播放

注:本文基于 C++ 代码讲述 vlc 音视频播放控制过程,且假设你已经集成好了VLC到你的项目中。

一、初始化

像播放单个视频一样,首先我们需要初始化 instance

libvlc_instance_t m_vlc = libvlc_new(0, 0);

而不同于播放单个视频,我们需要的是 libvlc_media_player_t 实例,但是它只支持播放单个媒体,因此我们需要初始化另外一个实例 libvlc_media_list_player_t,它支持列表播放。但同时,libvlc_media_player_t 实例也是不可或缺的,因为它代表了我们列表中的正在播放的媒体。

libvlc_media_player_t m_mediaplayer = libvlc_media_player_new(m_vlc);
libvlc_media_list_player_t m_listplayer = libvlc_media_list_player_new(m_vlc);

之后我们还需要一个不同於单个媒体 libvlc_media_t 的 libvlc_media_list_t 实例,保存了我们的列表媒体。

libvlc_media_list_t m_medialist = libvlc_media_list_new(m_vlc);

二、设置媒体列表

基础对象初始化工作完成之后,接下来我们需要将具体的媒体文件添加到我们的播放器中。

void NovaVlcAudio::setMediaList(std::vector<std::string> paths)
{
	for (int i = 0; i < paths.size(); i++)
	{
		QString str = QString::fromStdString(paths[i]);
        libvlc_media_t *m_media = l
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章