vlc sdk 播放视频流

vlc播放器下载地址

https://vlc-media-player.en.softonic.com/

vlc sdk下载地址

http://download.videolan.org/pub/videolan/vlc/

vlc-3.0.12\sdk\文件夹下include和lib文件夹copy到工程目录下,vlc-3.0.12目录下libvlc.dll、libvlccore.dll和plugins文件夹copy到执行文件(.exe)目录。

代码如下:

handle为传入参数

//一个libVLC的实例
libvlc_instance_t* m_plibvlc_instance;
//播放器
libvlc_media_player_t* m_plibvlc_media_player;

const char* vlc_args[] =
{
  "-I", "dummy",
  "--ignore-config",
  "--rtsp-tcp",
  "--plugin-path=./plugins",
  "--no-audio",
  "--verbose=1"
};
//设置启动参数 创建一个libVLC的实例
m_plibvlc_instance = libvlc_new( sizeof( vlc_args ) / sizeof( vlc_args[0] ), vlc_args );

if( m_plibvlc_instance == nullptr )
{
  return;
}

// 创建一个可以播放的媒体
libvlc_media_t* libvlc_media = nullptr;
//本地文件
libvlc_media = libvlc_media_new_path( m_plibvlc_instance, szurl );
//网络流
//libvlc_media = libvlc_media_new_location( m_plibvlc_instance, szurl );
    
    
if( libvlc_media == nullptr )
{
  return;
}

//创建播放器
m_plibvlc_media_player = libvlc_media_player_new_from_media( libvlc_media );

if( m_plibvlc_media_player == nullptr )
{
    return  ;
}

//释放libvlc_media资源
libvlc_media_release( libvlc_media );
//设置播放窗口
libvlc_media_player_set_hwnd( m_plibvlc_media_player, handle );

//开始播放
//return 0 if playback started (and was already started), or -1 on error.
libvlc_media_player_play( m_plibvlc_media_player );

Sleep(10*1000);//10s

//停止播放
libvlc_media_player_stop( m_plibvlc_media_player );


//释放播放器
if( m_plibvlc_media_player )
    libvlc_media_player_release( m_plibvlc_media_player );

//释放libVLC的实例
if( m_plibvlc_instance )
    libvlc_release( m_plibvlc_instance );

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值