获取本地视频文件的媒体统计信息 - VLC ANDROID

时间:2013-05-31 15:07:17

标签: android video statistics vlc libvlc

我如何获取特定视频文件的媒体统计信息并将其转储到日志中?

我需要访问的确切struct是:libvlc_media_stats_t结构参考。

此结构的文档是从以下文件生成的: include/vlc/libvlc_media.h

我在Eclipse中打开项目时找不到libvlc_media.h文件。请告知我如何通过此功能获取所需的媒体统计信息。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

假设您正在使用C,则必须按照这种方式从媒体获取信息:

// Create VLC instance and media
libvlc_instance_t * inst = libvlc_new (0, NULL);
libvlc_media_t* media = libvlc_media_new_path (inst, /* media path here */);  

// Get stats from media
libvlc_media_stats_t stats;
int stat =  libvlc_media_get_stats(media, &stats);

// Obtain stats one by one
int bytes = stats.i_read_bytes;
float = stats.f_input_bitrate;
int = stats.i_demux_read_bytes;
float = stats.f_demux_bitrate;
int = stats.i_demux_corrupted;
int = stats.i_demux_discontinuity;
int = stats.i_decoded_video;

但是,要小心:我在VLC论坛上看到some messages说这个库的这一部分可能会被破坏。也就是说,同一个论坛上的一些more recent messages似乎说图书馆运作良好。一条消息说您可能需要播放媒体才能获得统计信息(如果媒体没有播放,您可以通过libvlc获取信息。)