MFC调用vlc动态库libvlc.dll实现简单播放器 中文路径处理

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

一、简单说明

       本文讲解利用MFC调用vlc(2.0.0)的动态库实现简单的播放器,实现播放、暂停、停止、音量控制、进度控制,支持中文路径等。

VLC 中文路径转码问题<转>

最近用MFC编写调用libVLC的程序时碰到中文路径不能打开的问题,愤闷了两天终于给解决了,在这里贴出来希望给那些遇到转码问题的人一点帮助。

主要问题是编码方式不对,现在程序主要是用Unicode码,我遇到的libVLC默认为UTF8,这就在遇到中文是需要转为UTF8。我遇到的主要是CString转为const char *或char *。VC++提供强制转码貌似是行不通的,这里写了个函数供参考(因为是转Unicode,所以支持所有语言,还有确保你的项目编码方式是Use Multi-Byte Character Set(不是宽字节编码))。

 char* UniToUTF8(CString strUnicode)
{
USES_CONVERSION;
LPWSTR pwStr=new wchar_t[strUnicode.GetLength()+1];
wcscpy(pwStr,T2W((LPCTSTR)strUnicode));
int ilen = WideCharToMultiByte(CP_UTF8, 0, pwStr, -1, NULL, 0, NULL, NULL); //获取长度
char *szUtf8Temp=new char[ilen + 1];
memset(szUtf8Temp, 0, ilen +1);

WideCharToMultiByte (CP_UTF8, 0, pwStr, -1, szUtf8Temp, ilen, NULL,NULL); //UTF转码
detele pwStr;

return szUtf8Temp;
}

这函数也可以用在其他需要转码的地方。

注:szUtf8Temp用完记得释放空间


二、所需环境说明

     VC6.0 VLC的版本为2.0.0

三、搭建MFC调用libvlc的环境

1.新建立一个VC的工程,暂时取名为VLCDemo

2.首先将VLC的目录下的vlc/sdk\include\vlc.h复制到工程目录下,然后新建立vlc和lib两个文件夹

3.将include目录下的除vlc.h中所有文件拷贝到vlc下,同事将vlc\lib下的两个libvlc.lib和libvlccore.lib复制到lib文件夹下。

4、将vlc目录下的livvlc.dll和libvlccore.dll以及plugins目录到复制到Debug目录下

5.网上下载stdint.h

MFC调用vlc动态库libvlc.dll实现简单播放器vlc2.0.0) 一、简单说明        本文讲解利用MFC调用vlc(2.0.0)的动态库实现简单播放器实现播放、暂停、停止、音量控制、进度控制,支持中文路径等。 二、所需环境说明      VC6.0 VLC的版本为2.0.0 三、搭建MFC调用libvlc的环境 1.新建立一个VC的工程,暂时取名为VLCdemo 2.首先将VLC的目录下的vlc/sdk\include\vlc.h复制到工 阅读详情

相关推荐

Hypermesh 2024前处理实战:网格划分、质量检查与节点显示问题

在CAE仿真分析中,前处理是决定求解精度与效率的关键环节,而Hypermesh作为行业主流的有限元前处理工具,其核心价值在于将CAD几何转化为可计算的网格模型。无论是结构分析还是碰撞仿真,网格质量直接关系到求解收敛性与结果可信度,常见问题如3D网格质量检查不合格、节点小球全部消失等,往往源于显示配置或单位设置不当。掌握求解器模板选择、单位制统一、组件管理、自动网格划分及质量指数面板应用,是提升前处理效率的基础路径。本文从Hypermesh 2024的实际操作出发,围绕单元尺寸控制、质量指标阈值、节点显示排查

weixin_34198881的博客 501

MFC调用libvlc1.1.11的简单播放器

调用版本的vlc库,注意里面少了plugins这个包,你只要从网上下载这个包放到和debug平级目录就行,简单的播放,快进,暂停,逐帧播放功能都有,全屏没有完全实现,因为不能接受鼠标事件消息

告别黑框!用C++和VLC库给你的MFC对话框项目加个视频播放器(附完整源码)

本文详细介绍了如何在MFC对话框项目中集成VLC视频播放器,利用C++和VLC实现专业级视频播放功能。从环境配置、核心功能封装到MFC界面集成,提供了完整的源码示例和实用技巧,帮助开发者快速解决中文路径、进度同步等常见问题,告别黑框播放体验。

weixin_30443731的博客 464

libvlc.lib x64

x64版本的libvlc.lib、libvlccore.lib、libvlc.dlllibvlccore.dll

LibVLC —— Qt下的配置(附所有出现的问题解决)

SDK      VLC下载地址   关注 微信公众号搜索"Qt_io_"或"Qt开发者中心"了解更多关于Qt、C++开发知识.。 笔者 - jxd

3110

LibVLC —— 本地音视频例子、Qt播放例子

代码      1、小例           下列代码为基于vlc显示播放本地mp4文件。 #include <Windows.h> #include "vlc/libvlc.h" #include "vlc/vlc.h" #include "vlc/libvlc_media_player.h" #include "vlc/libvlc_media.h" int main(int argc, char* argv[]) { libvlc_instance_t * vlc_ins =

1159

MPlayer全能播放器找不到libvlc.dll怎么办?MPlayer播放器缺失libvlc.dll文件的常见原因与解决办法

在使用MPlayer等多媒体播放器时,用户可能会遇到“找不到libvlc.dll”或“缺少libvlc.dll”的错误信息。这通常发生在尝试播放某些格式的视频文件时,尤其是当播放器依赖于VLC库来解码这些文件时。本文将深入探讨这一问题的原因,并提供几种可行的解决方法。

Xixix777的博客 952

u3dexportdll.dll文件免费下载,软件文件缺失补回

在使用电脑时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C++运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC++运行库或者安装的版本不完整,就可能会导致这些软件启动时报错,提示缺少库文件。文件下载完成后,下方列表会有很多个不同版本的文件,这里我们根据自己所需要的版本文件,点击右边的“打开”,这样就找到了下载的文件。下面我们通过使用一款DLL修复工具免费下载需要的文件。

2508_90661607的博客 2108

vlc的应用之八:MFC调用libvlc.dll

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeremiah.blog.51cto.com/539865/184115     本篇博客将简单介绍MFC调用libvlc.dll作一个简单播放器,抛砖引玉,各位VC++达人继续深入研究,Jeremiah对VC++确实不太感兴趣,所以就不做太深入的研究了。

gxj1680的专栏 1020

mfc使用c语言的dll库,vlc的应用之八:MFC调用libvlc.dll

请移步https://higoge.github.io/,所有下载资料在那个博客都能找到。谢谢。--------------------------------------------------------------------本篇博客将简单介绍MFC调用libvlc.dll作一个简单播放器,抛砖引玉,各位VC++达人继续深入研究,Jeremiah对VC++确实不太感兴趣,所以就不做太深入的...

weixin_34431283的博客 683

利用MFC调用libvlc.dll作一个简单播放器

简单介绍MFC调用libvlc.dll作一个简单播放器,抛砖引玉,各位VC++达人继续深入研究,Jeremiah对VC++确实不太感兴趣,所以就不做太深入的研究了。 2009.10.29修改:加入clip_children属性设置。参开第1步。     环境:       1) VC6SP5        2)vlc-0.9.9a     0. 引言    根据上一篇博客

szu030606的专栏 3032

MFC调用libvlc.dll

vlc的应用之八:MFC调用libvlc.dll 2009-07-27 23:00:58 标签:libvlc vlc mfc 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeremiah.blog.51cto.com/539865/184115     本篇博客将简单介绍MFC调用li

s3c44b0x的专栏 1185

Windows平台MFC对话框程序集成VLC播放器的即用型开发包(含DLL、头文件与可执行文件)

一套开箱即用的Windows音视频播放开发资源,基于Visual C++ MFC对话框框架,已完整集成VLC多媒体库。包内提供libvlc.dlllibvlccore.dll两个核心动态链接库,以及全套VLC C API头文件(如libvlc.h、libvlc_media_player.h、libvlc_media.h等),覆盖媒体加载、播放/暂停/停止、音量调节、全屏切换、事件回调等常用功能。源码结构清晰,播放逻辑封装在AVPlayer.cpp/.h中,界面交互集中在VlcPlayerCsdnDlg.c

g5h6i的博客 246

告别黑框!用C++和VLC库给你的MFC程序加上视频播放功能(附完整源码)

本文详细介绍了如何利用C++和VLC库为MFC程序添加专业级视频播放功能,包括环境配置、核心功能封装、界面设计及高级优化技巧。通过完整源码示例,开发者可以轻松实现视频播放器的无缝集成,适用于工业控制、医疗影像等多个领域。

weixin_30596023的博客 529

MFC封装的VLC桌面播放器工程:支持整目录拖入、防崩溃、开箱即用

Windows平台下基于MFClibVLC开发的可直接运行的音视频播放器(XMP.exe),无需额外安装依赖或配置环境。支持常见音视频格式播放,内置文件类型白名单过滤,自动跳过不兼容文件;所有UI操作均经过异常捕获与参数校验,反复点击按钮、快速切换媒体、中途停止播放等高频操作不会引发崩溃。核心亮点是文件夹级拖拽导入——将整个含视频/音频的文件夹直接拖到播放窗口,程序自动递归扫描并加载所有支持格式(如mp4、avi、mkv、mp3、flac等)进入播放列表。工程包含全部源码(XMP.cpp、XMPDlg.c

u6v7w8x的博客 258
上一篇: 用C/C++开发基于VLC SDK的视频播放器 开发环境搭建
下一篇: win7 64 DLL的远程注入技术 及注入dll函数调用
xuplus
博客等级 码龄19年 139粉丝 107原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值