# MediaGrabber **Repository Path**: Gaaagaa/MediaGrabber ## Basic Information - **Project Name**: MediaGrabber - **Description**: 使用 libvlc 制作简易播放器。 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2022-10-30 - **Last Updated**: 2024-01-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 在 vlc_mgrabber.h 和 vlc_mgrabber.cpp 源码文件中的 C++ 类 **vlc_mgrabber_t**,封装了 libvlc 的相关接口,实现 RGB图像 和 PCM音频 数据的攫取功能。 其使用的大致流程,如下描述: - 1 在程序启动时,调用 vlc_mgrabber_t::startup(0, NULL) 初始化 libvlc 库。 - 2 程序执行过程中,开启一个 vlc_mgrabber 对象 object 的工作流程,需要先后调用如下接口: - 2.1 先使用 object.set_callback(...) 设置回调接口; - 2.2 然后用 object.open(...) 操作接口打开工作流程; - 2.3 期间,用 set_position(...) 设置当前播放进度,audio_set_mute(...) 设置静音状态,audio_set_volume(...) 设置播放音量,或者还可以进行其他的操作(详细请查看源码); - 2.4 另外,libvlc 内部的工作线程,会通过设置的回调函数接口,回调数据(RGB图像 或 PCM 音频数据,以及 通知事件); - 2.5 最后用 object.close(...) 操作接口关闭工作流程。 - 3 程序在退出前,执行 vlc_mgrabber_t::cleanup() 卸载 libvlc 库。 回调接口的设计,请参看 Widget.h、Widget.cpp 中的相关调用流程。更为详细的介绍,请参看 doc/MediaGrabber.md 文档的叙述。