vlc-qt编译 linux,记录一次搞vlc官方源码中Qt示例工程的过程,文件路径对话框

代码目录:E:\vlc-3.0.12\doc\libvlc\QtPlayer

编译成立,但是

libvlc_new返回NULL

老子就是要搞他,在网上的其他人成功的代码帮助下要把他搞成

(背景是:老板要在Qt界面里播放视频文件,本身知道opencv会更简单点,但是想自己去根据文档再熟悉vlc sdk的使用)

libvlc_new返回NULL原因是plugins目录没加入,整个vlc的依赖包括*.dll *.exe 及plugins目录,解决了这个问题继续搞

最后搞出来,在win环境下的Qt应用总结:

1.严禁用linux风格的路径"F:/Exercises/OpenSources/."

在vs中不用操心这点,在vs中最好是li风格路径

2.用std::string保存路径,以下形式不会乱码

std::string path = "F:\\Material\\Video\\res3.avi";

m_media = libvlc_media_new_path(m_vlcInstance, path.c_str());

3.即使原始字符串也不能解决乱码,以下试过仍会乱码

char ch_array[] = {R"(F:/Material/Video/res3.avi)"};

char ch_array[] = {R"(F:\\Material\\Video\\res3.avi)"};

char ch_array[] = {R"(F:\Material\Video\res3.avi)"};

//同样无果,禁用上面三种的形式

4.保存路径可以是char[]用以先,实际2方法中c_str()得到的就是char*

//以下两种是正确示范

char ch_array[] = {"F:\\Material\\Video\\res3.avi"};

const char* path = "F:\\Material\\Video\\res3.avi";

//以下是错误示范:

char ch_array[] = {R"(F:\Material\Video\res3.avi)"};

QString filepath.toUtf8().data();

5.另一个办法,将QString获取的字符串处理,同样得到没乱码的字符串

//QString保存的路径处理下

//前有QString filepath声明

filepath = QDir::toNativeSeparators(filepath).toUtf8().constData();

//转成char*传给目标

libvlc_media_t *vlcMedia = libvlc_media_new_path(vlcInstance, filepath.toUtf8().data());

//抑或使用qtu()宏,转成char*传给目标

libvlc_media_t *vlcMedia = libvlc_media_new_path(vlcInstance, qtu(filepath));

启动文件路径对话框

QString filepath = QFileDialog::getOpenFileName(this, tr("Load a file"), "~");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526642.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux kernel 调度,在Linux中,实时调度_kernel_开发99编程知识库

在實時調度,fifo和RR不具有完全相同的含義他們在非實時調度。 但是,進程總是在FIFO方式中選擇的時間量程SCHED_FIFO不限制不同的時間量程SCHED_RR 。schED_FIFO進程不能preempt SCHED_RR進程相同的優先順序。sched_setscheduler( 2 ) linux手冊頁。。。&…

c语言程序设计课程设计心得体会,C语言程序课程设计心得体会

在科技高度发展的今天,计算机在人们之中的作用越来越突出,学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。在这个星期里,我们专业的学生在专业老师的带领…

树莓派怎么学linux,树莓派使用入门用树莓派学 Linux

树莓派使用入门用树莓派学 Linux我们的《树莓派使用入门》的第四篇文章将进入到 Linux 命令行。在本系列的 第三篇文章 中开始了我们的树莓派探索之旅,我分享了如何安装 Raspbian,它是树莓派的官方 Linux 版本。现在,你已经安装好了 Raspbian…

全国计算机二级C语言过关要求,计算机二级考试c语言过关经验

计算机二级考试c语言过关经验考试要求考生在规定的时间内按指定的方式解答精心选定的题目或按主办方的要求完成一定的实际操作的任务,并由主办方评定其结果,从而为主办方提供考生某方面的知识或技能状况的信息。下面是小编整理的关于计算机二级考试c语言…

c语言链表贪吃蛇脚本之家,C++控制台实现贪吃蛇游戏

本文实例为大家分享了C实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下刚学完了C语言,便尝试的写了贪吃蛇的代码,但是效果不佳,很多的bug,所以,这个学了C,便重新的写了这个小游戏…

c语言isfinite用法,C# Double.IsFinite()用法及代码示例

Double.IsFinite()方法用于检查double值是否超出范围。用法: public static bool IsFinite (double value);返回值:如果值是有限的,则此方法返回true,否则返回false。下面的程序说明Double.IsFinite()方法的使用:示例1…

窄带语谱图c语言算法,MELP语音编码算法实现及算法改进

摘要:随着数字通信在当今社会的快速发展和广泛应用,低速率语音编码以其极低的编码速率,高质量的合成效果在网络通信,军事通信,保密通信和卫星通信等领域发挥着及其重要的作用,成为语音编码中的关键技术。当前标准化的各种算法中,MELP语音编码算法以LPC声码器为基础作…

android gta5 下载地址,GTA 5 for Android下载

GTA 5 for Android下载介绍GTA 5 for Android下载是这款游戏的全新版本,相比上个版本加入更多全新的剧情内容和道具,可以称得上是该系列至今为止最庞大也最具野心的作品,带来上至高山、下至深海,规模空前、细腻无比且充满生命力的…

win8能开发android的sdk么,Win8下Android SDK安装与环境变量配置教程

Win8下Android SDK的安装与环境变量配置,具体内容如下1、下载Android SDK,点击安装,直接默认路径即可!进入该网站后往下拉就能找到sdk下载的位置,选择图中红圈的程序进行下载2、安装过程比较简单,按照平时安…

Android公共jar,使用JitPack管理Android项目中公共模块库

随着项目的功能越来越多,代码和模块维护也越来越复杂,为了减少主项目的代码量,一般都会将一些公共使用的类或者功能模块抽离出来,与主项目解耦分离,当主项目中需要使用的时候,直接进行引用即可。现在Androi…

mac android 手机连接打印机,为什么苹果电脑连接打印机打不出来怎么办

1. 为什么苹果笔记本连接打印机打印不了1、您的 Wi-Fi 或本地网络上的 AirPrint 打印机。2、临近的 Wi-Fi 打印机或位于您本地网络且支持 Bonjour 的基于有线网络的打印机。3、连接到家庭网络中 Time Capsule 或 AirPort 基站的 USB 端口的打印机。4、与家庭网络中的其他 Mac 共…

Android 数据库 哪个好,目前最好用的安卓数据库,DBFlow使用详解

1.在你使用之前,建议你先阅读一下官方文档https://agrosner.gitbooks.io/dbflow/content/2.步骤如下:(1)在项目级的gradle中添加buildscript {repositories {jcenter()}dependencies {classpath com.android.tools.build:gradle:2.3.2classpath com.neen…

android 左右卡片切换,3D卡片切换

源码片段public class MainActivity extends FragmentActivity implements OnCardClickListener{List list;private TestFragment frag;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_ma…

c# 修改xslt并转为html,c#使用XSLT将xml文档转换为html文档

c#使用XSLT将xml文档转换为html文档使用xslt可以将xml文档转成html,如下c#函数:需要引用下面的命名空间:using System.Xml;using System.Xml.Xsl;方法实现:public static string ConvertXML(XmlDocument InputXMLDocument, string…

华为正式官宣鸿蒙OS,华为正式官宣,鸿蒙OS 2.0系统即将问世,Mate 40有望首发

由于华为5G技能取得了突破性的领先,美国对其采取了实体清单操持。意图干涉华为的发展速率,但实际上对于华为影响最大的却是软件方面的“断供”。在美国发布实体清单短短数月之后,谷歌公布停止对于华为手机系统的GMS服务授权。间接导致了华为手…

html音频控件隐藏,html5 – Html 5音频标签自定义控件?

你创建你的元素如此…play!并添加一些功能:var yourAudio document.getElementById(yourAudio),ctrl document.getElementById(audioControl);ctrl.onclick function () {// Update the Buttonvar pause ctrl.innerHTML pause!;ctrl.innerHTML pause ? play!…

html 列表点,HTML列表

HTML ListsHTML lists allow web developers to group a set of related items in lists.ExampleAn unordered HTML list:ItemItemItemItemAn ordered HTML list:First itemSecond itemThird itemFourth item来试试吧 Unordered HTML ListAn unordered list starts with the ta…

笔记本html连接电视机,详细教您笔记本连接电视

很多时候我们想要通过电视机来在线看电影,而苦于笔记本的屏幕尺寸太小了,心想着要是笔记本能连接上电视该有多好。其实现在的电视提供了很多连接电脑的功能,简单操作一下就可以实现,那笔记本怎么连接电视呢?下面一起来…

joomla自定义html,Joomla教程:为页面和模块添加独立的自定义Class

在Joomla的菜单项和模块设置中,页面Class后缀(Page Class Suffix)和模块Class后缀(Module Class Suffix)这两个参数允许你为Joomla生成的HTML页面增加自定义的class,使我们可以通过CSS为一些页面或模块设定独特的样式。在添加自定义class时,我…

html5的form如何使用方法,HTML5 FormData方法介绍

Openjudge 1&period;13-21&colon;最大质因子序列(每日两水)总时间限制: 1000ms 内存限制: 65536kB 描述 任意输入两个正整数m, n (1 < m < n < 5000),依次输出m到n之间每个数的最大质因子(包括m和n ...SVN出现Invalid authz configuration解决方案思路: 1.检…