windows 下VLC---LIBVLC API解析(五)-----日志相关API

来源:互联网 发布:windows 安装apm 编辑:程序博客网 时间:2024/05/18 15:53

引子

LIBVLC API解析系列文章的每一篇都尽量将相关联的API放在一起讲,随着学习的深入将不断更新本文,如若转载请保证文章完整性及保留博客地址。

这是LIBVLC API解析系列的第二篇,主要介绍VLC日志相关 API。

改定履历

API

libvlc_log_* 函数提供对LibVLC消息日志的访问,用于调试或用于高级用户

  • VLC_PUBLIC_API unsigned libvlc_get_log_verbosity( const libvlc_instance_t *p_instance );
  • VLC_PUBLIC_API unsigned libvlc_get_log_verbosity( const libvlc_instance_t *p_instance );
  • VLC_PUBLIC_API libvlc_log_t *libvlc_log_open( libvlc_instance_t *p_instance );
  • VLC_PUBLIC_API void libvlc_log_close( libvlc_log_t *p_log );
  • VLC_PUBLIC_API unsigned libvlc_log_count( const libvlc_log_t *p_log );
  • VLC_PUBLIC_API void libvlc_log_clear( libvlc_log_t *p_log );
  • VLC_PUBLIC_API libvlc_log_iterator_t *libvlc_log_get_iterator( const libvlc_log_t *p_log );
  • VLC_PUBLIC_API void libvlc_log_iterator_free( libvlc_log_iterator_t *p_iter );
  • VLC_PUBLIC_API int libvlc_log_iterator_has_next( const libvlc_log_iterator_t *p_iter );
  • VLC_PUBLIC_API libvlc_log_message_t *libvlc_log_iterator_next( libvlc_log_iterator_t *p_iter,
                                                                   libvlc_log_message_t *p_buffer );

例程

之前说了,呆龙在做一个简易播放器时需要做日志播放器处理。上面讲了一些,下面给出个简单例子:

背景:对于简易LIBVLC日志处理,我们有三点未知:

1. WHEN:播放器运行时,libvlc何时打出日志;

2. WHERE:我们应该在应用代码的什么地方打日志;

3. HOW:如何利用LIBVLC给出的以上日志API打日志;

基于以上三点,我的想法是单独开一个线程,每隔一秒检查是否有日志,有则打出,没有继续

 

 

 

例程代码可到这里下载:

 http://download.csdn.net/source/2817732