我如何获取特定视频文件的媒体统计信息并将其转储到日志中?
我需要访问的确切struct
是:libvlc_media_stats_t
结构参考。
此结构的文档是从以下文件生成的:
include/vlc/libvlc_media.h
我在Eclipse中打开项目时找不到libvlc_media.h
文件。请告知我如何通过此功能获取所需的媒体统计信息。
提前感谢您的帮助!
答案 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获取信息。)