vlc缓冲事件添加及缓冲进度

转载自 http://blog.csdn.net/hpb21/article/details/42965885


1.缓冲事件添加:vlc已内置好事件,只不过未开放API。

  主要参考:http://blog.csdn.net/memegood123/article/details/8769008


2.缓冲进度添加:

  主要参考http://stackoverflow.com/questions/17287010/enabling-mediaplayerbuffering-event-to-be-fired-in-android-vlc

  由于vlc我采用了最新的(android1.0.0),基本流程差不多,稍微进行了修改;

在libvlcjni.c文件的vlc_event_callback函数下添加一下


  1. else if(ev->type == libvlc_MediaPlayerBuffering) {  
  2.     /* For determining the vout/ES track change */  
  3.     jstring sData = (*env)->NewStringUTF(env, "data");  
  4.     (*env)->CallVoidMethod(env, bundle, putFloat, sData, ev->u.media_player_buffering.new_cache);  
  5.     (*env)->DeleteLocalRef(env, sData);  
  6. }  

上述意思是,在缓冲事件返回时执行bundle.putFloat("data",缓冲值)。不同版本上述代码略有不同:


 1.media_player_buffering.new_cache对应于lib包下面media_player.c中的input_event_changed函数:

  1. else if( newval.i_int == INPUT_EVENT_CACHE )  
  2.    {  
  3.        event.type = libvlc_MediaPlayerBuffering;  
  4.        event.u.media_player_buffering.new_cache = (int)(100 *  
  5.            var_GetFloat( p_input, "cache" ));  
  6.        libvlc_event_send( p_mi->p_event_manager, &event );  
  7.    }  
最后只需在播放器handler中进行如下获取即可:


  1. case EventHandler.MediaPlayerBuffering:  
  2.             Log.i(TAG,  
  3.                     "MediaPlayerBuffering:" + msg.getData().getFloat("data"));  
  4.             break;  


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
要将VLC添加到Visual Studio 2008中,您可以按照以下步骤进行操作: 1. 首先,下载并安装VLC媒体播放器的开发包(libVLC)。您可以从VLC官方网站(https://www.videolan.org/vlc/libvlc.html)或其他可靠的资源下载。 2. 打开Visual Studio 2008,并打开您希望添加VLC库的项目。 3. 在Visual Studio中,右键单击项目名称,选择“属性”选项。 4. 在属性窗口中,选择“VC++目录”选项卡。 5. 在“包含目录”字段中,添加libVLC头文件的路径。这通常是在libVLC安装目录下的“include”文件夹中。 6. 在“库目录”字段中,添加libVLC库文件的路径。这通常是在libVLC安装目录下的“lib”文件夹中。 7. 在Visual Studio中,打开项目的源文件,右键单击“资源文件”文件夹,并选择“添加”>“现有项”。 8. 在文件选择对话框中,导航到libVLC安装目录下的“plugins”文件夹,并选择所有.dll文件。这些文件是VLC插件,需要与您的应用程序一起部署。 9. 在Visual Studio中,打开项目的源文件,右键单击“源文件”文件夹,并选择“添加”>“现有项”。 10. 在文件选择对话框中,导航到libVLC安装目录下的“lib”文件夹,并选择所需的.lib文件。 11. 确保您的项目正确地包含了所需的头文件和库文件。 12. 编译和运行您的项目,应该能够使用VLC库了。 请注意,这些步骤可能会因您的系统配置和libVLC版本而有所不同。确保按照libVLC提供的文档和示例进行操作,并在需要时参考Visual Studio 2008的文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值