随笔分类 -  仿迅雷播放器教程

博客还是搬到csdn吧~
摘要:从csdn转到博客园是因为博客园开放了博客接口,方便发博客,再者博客样式也比较多,排版兼容性也较好。 but, 博客园的链接在多个群里进行了宣传,当时大概有2000多的访问量,但是一个月过去了,现在还是只有3000多而已。 而csdn只是在论坛发了一下,帖子就被推荐,博客也被推荐,嗯,没怎... 阅读全文

posted @ 2013-12-06 21:33 Alberl 阅读(5927) 评论(22) 推荐(0) 编辑

【【【超高仿】】】迅雷播放器教程 -- 总结(14)
摘要:代码下载:http://download.csdn.net/detail/qq316293804/6502879迅雷播放器教程汇总:仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)仿迅雷播放器教程 -- 媒体播放器对比 (2)仿迅雷播放器教程 -- 媒体播放三大底层架构简析 (3)仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)仿迅雷播放器教程 -- 封装VLC (5)仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)仿迅雷播放器教程 -- 十年经验大牛对MFC的认识 (7)仿迅雷播放器教程 -- 权威界面库对比 (8)仿迅雷播放器教程 -- C++界面制作方法的对 阅读全文

posted @ 2013-11-04 23:38 Alberl 阅读(17363) 评论(23) 推荐(17) 编辑

仿迅雷播放器教程 -- duilib界面(13)
摘要:经过了这么多篇文章的讲解,相信大家也对界面库有一定了解了,用一个新的界面库,肯定要对它进行全方位考察。鉴于公司目前所有的产品都是MFC做的,全部转换成duilib肯定不现实,并且公司的很多项目逻辑和界面耦合性太高,光逻辑和界面分离就会搞死人,此处省略N字......,如果有任何一点没考察到,背负压力是小事,如果公司的产品出不来,那就是大事了!!! 因此根据公司的情况,很显然是老项目用duilib和MFC结合;新项目全部使用duilib,即使出现用duilib解决不了的问题,也可以用MFC来解决。所以要考察的最重要的一点就是与MFC结合的难度。不过要说明的是,其实公司并没有要求换界面,这些... 阅读全文

posted @ 2013-10-20 09:29 Alberl 阅读(11762) 评论(6) 推荐(2) 编辑

仿迅雷播放器教程 -- 提取exe资源(12)
摘要:既然选择了一个界面库,那么咱们就开始吧! 既然是仿迅雷播放器,那当然要把迅雷播放器的资源提取出来啦,但是很多小伙伴可能不知道怎么提取,所以这里就教大家一些方法:一、传统的资源提取器 由于传统的界面都是有窗口句柄的,所以用ResHacker、ExeScope等工具就可以提炼出来,效果如下: 可以看到不仅能看到所有图片资源,还能看到整个对话框的控件。但是如果想提取迅雷的资源,就只能看到下面的效果了~~~ 咦,怎么没看到和上面一样的Dialog、Bitmap等文件呢? 这是因为迅雷的界面都是无窗口句柄的,并且主窗口是动态创建的,所以看不到Dialog资源,而它的图片文件不是放在VS的资... 阅读全文

posted @ 2013-10-19 21:50 Alberl 阅读(8779) 评论(4) 推荐(4) 编辑

仿迅雷播放器教程 -- C++ windows界面库对比(11)
摘要:从上一篇文章中可以看出,C++的界面方向还很弱,没有任何一个界面库可以一统天下,所以才造成了界面库百家争鸣的情况。从时间上看:1、出来最早的是QT,1991年就有了。2、VC++ 虽然1992年就出来了,但是一直不给力,那个时候是Borland一统天下,并且1995年Borland出了Delphi,也一直一统天下。3、在1998年VC++ 6.0 出来之后,Delphi就完败了,从此一蹶不振。不过以下几个问题需要想一想:1、在VC++ 6.0 出来之前,Borland一直说完爆VC++; 而VC++ 6.0出来之后,VC++也只说完爆Delphi; 为什么没有人去和QT比?2、十多年前... 阅读全文

posted @ 2013-10-18 23:46 Alberl 阅读(11378) 评论(14) 推荐(1) 编辑

仿迅雷播放器教程 -- C++ 100款开源界面库 (10)
摘要:(声明:Alberl以后说到开源库,一般都是指著名的、或者不著名但维护至少3年以上的。那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码。这里并不是贬低,像Alberl前面那个系列的教程《2013 duilib入门简明教程》,还有本系列教程,还有前面介绍的CodeProject,基本上都是代码往上面一扔,就不用再怎么维护的。这些都称之为开源代码,其实开源代码对新手的帮助更大,因为很简明的说明了代码用法~O(∩_∩)O~) 前面两个教程已经对制作界面的几种方式进行了比较,权威界面库已经比较过了,那么接下来就是上一个教程介绍的那三种方式。 而上一个教程已经说的很明确了,用那... 阅读全文

posted @ 2013-10-17 22:31 Alberl 阅读(15142) 评论(25) 推荐(5) 编辑

仿迅雷播放器教程 -- C++界面制作方法的对比 (9)
摘要:上一个教程对比的5个方向共7个界面框架,都是非常权威,应用很广泛的库,绝对是非常稳定,并且能够做出常见的界面出来,可以放心大胆的用在项目里。 但那7个界面框架再好,也总是没有绝对的优势,不然其他框架早就淘汰了,那么以下几个才是目前真正的顶级理想状态(过几年可能这些理想状态也不理想啦~):1、用3D游戏的界面来做客户端界面,3D游戏的效果当然是世界顶级的啦,如果客户端能做成那样的效果,当然是非常爽,但其资源占用就决定了不可能用来做客户端。那么我们退而求其次呢? 用2D的总行了吧? 其资源占用还是太大了!那再退一步呢? 不需要动画效果和各种特效,只需客户端那样静态的页面。由于游戏框架做界面比... 阅读全文

posted @ 2013-10-17 15:09 Alberl 阅读(8739) 评论(18) 推荐(2) 编辑

仿迅雷播放器教程 -- 权威界面库对比 (8)
摘要:上一个教程对MFC的历史已经介绍很多了,那么界面方面该怎么选择呢? 说起界面,那真是百家争鸣。C++里面其他的都好说,像什么XML解析顶多也就十几个著名开源库而已。Office 操作的开源库仅有几个,更可怜的是有个很著名的Office开源库只有JAVA和C#版本,但是木有C++版本o(╯□╰)o。 网络方面、字符串处理方面、多语言方面等等都很少,最重要的是,这些开源库中几乎任何一个都能满足我们的需求,所以确实不需要多少个。 但是界面就不一样了,虽然很多,但貌似目前还没有一个能够让大部分人满意的。那就先介绍一下它们的历史吧(以下描述很多都是凭记忆,若有不对,请小伙伴们指正~O(∩_∩)O... 阅读全文

posted @ 2013-10-16 23:32 Alberl 阅读(13105) 评论(31) 推荐(13) 编辑

仿迅雷播放器教程 -- 十年经验大牛对MFC的认识 (7)
摘要:由于上一个教程做界面用的是MFC,所以这里不得不说一下MFC的历史,请看正文:原文链接:http://blog.csdn.net/sunhui/article/details/319551作者:孙辉十年MFC经历认识的Microsoft技术【原创】孙辉自从2005年3月8日下午16时“十年MFC经历认识的Microsoft技术”以帖子的方式发表于CSDN论坛后,引起了许多网友得好评,使得笔者诚惶诚恐,考虑到该贴过长(人气指数为5000),因此转移到Blog上,许多网友对此帖的评语只好省略,在此鄙人谢过了!为感谢网友的支持,本人希望今后能发出新的帖子以回报网友对我的鼓励,再一次谢谢!初识MF.. 阅读全文

posted @ 2013-10-16 17:48 Alberl 阅读(8774) 评论(1) 推荐(3) 编辑

仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)
摘要:代码下载:http://download.csdn.net/detail/qq316293804/6409417 昨天的教程里写着预计MFC播放器会隔得久一点,但是今晚仔细看了下VLC的常用代码,发现VLC封装得真好,和ffmpeg简直就是天上地下的区别,所以呢,很快就将VLC的常用功能都加上啦,基本上都是一行代码解决,再次大喊一声:这酸爽~~~ 简直不敢相信!!! 所以今晚就已经完成了基于VLC的MFC播放器啦,想想当年用那么多时间去折腾ffmpeg,说多了都是泪啊~~~效果如图: 实现了常用的功能,也就是那一排按钮的功能,由于前面的教程已经给出了VLC的示例,所以本节直接给出了所有的V.. 阅读全文

posted @ 2013-10-15 23:22 Alberl 阅读(14449) 评论(5) 推荐(8) 编辑

仿迅雷播放器教程 -- 封装VLC (5)
摘要:虽然上个教程中10多行代码便做出了一个播放器,但如果加上快进快退等功能的话,代码都会挤在一团,阅读性很差,所以这个版本将对VLC进行封装,由于第一个教程已经进行了ffmpeg的封装,所以这里将利用它的框架CAVPlayer,由于这些封装代码都很简洁明了,所以将不再对细节一一介绍,直接给出封装好的代码。#include #include "AVPlayer.h" int main(int argc, char* argv[]){ std::string strCMD; CAVPlayer cAVPlayer; cAVPlayer.Play("G:\\media te 阅读全文

posted @ 2013-10-14 22:32 Alberl 阅读(8423) 评论(4) 推荐(1) 编辑

仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)
摘要:经过前面的介绍,想必大家对VLC和ffmpeg都有一定印象了,还记得学习ffmpeg多么蛋疼吗?那么VLC会不会也这么蛋疼呢? 那么我们来看一段官方的Demo,Alberl精简了Demo,只留下了主要代码:#include #include #include "vlc/vlc.h"#pragma comment(lib, "libvlc.lib")#pragma comment(lib, "libvlccore.lib")int main(int argc, char* argv[]){ libvlc_instance_t * ins 阅读全文

posted @ 2013-10-14 22:05 Alberl 阅读(11007) 评论(5) 推荐(2) 编辑

仿迅雷播放器教程 -- 媒体播放三大底层架构简析 (3)
摘要:上一个教程中对比了数十种知名播放器,最终选定了VLC和MPlayer,那么这两种谁更胜一筹呢? 我们来看一看射手播放器作者的评价。来源:自射手影音推出以来,生活中越来越多的时间开始被代码和各种Bug-Fix淹没。埋头在田里太久,常常会在一时之间忘记身处何方。所以偶尔上来透透气,顺便将一些经验和心得与大家分享。媒体播放工具,这里主要指视频播放,因为要面临庞大的兼容性和纷繁复杂的算法,从架构上看,能脱颖而出的体系屈指可数。大体来说业界主要有3大架构:MPC、MPlayer和VLC。这3大架构及其衍生品占领了90%的市场,凡是用户能看到的免费媒体播放软件,无一不是源自这3大架构。MPC/HC架构.. 阅读全文

posted @ 2013-10-14 21:49 Alberl 阅读(7784) 评论(4) 推荐(3) 编辑

仿迅雷播放器教程 -- 媒体播放器对比 (2)
摘要:既然Alberl想做播放器,又不想用ffmpeg的话,该怎么办呢?还记得ffmpeg给出的上百款多媒体相关的工程吗?这年头不怕没选择,就怕选择多,让Alberl去对比那些项目,还不如... Alberl一向比较懒,一向觉得这事肯定有大神们做过千百遍了,这不,果然如此:来源:下表比较了一些常见媒体播放器程序的一般技术信息. 参见各个产品的独立条目了解更详细信息. 外部连接包括了这些媒体播放器的插件和扩展程序.目录 [隐藏]1 概况2 操作系统支持3 功能4 协议支持5 音频格式支持6 视讯格式支持7 容器格式支持8 光盘格式支持9 元数据格式支持10 字幕支持11 音乐为主11.1 视频... 阅读全文

posted @ 2013-10-14 21:29 Alberl 阅读(8522) 评论(1) 推荐(3) 编辑

仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)
摘要:2011年12月份的时候发了这篇博客http://blog.csdn.net/qq316293804/article/details/7107049,博文最后说会开源一个播放器,没想到快两年了,才有时间发博客。 两年前的博客和大部分博客一样,以结果为主,也就是开源一个软件,直接把代码一扔,效果图一截,发一篇介绍性的博客就完事,里面没有任何技术分析。而Alberl在学习的过程中,虽然找到的绝大部分资料也都是这种类型的,帮助也很大,但还是感觉缺点什么。这就是Alberl喜欢CodeProject的原因,因为几乎每一篇文章都提供了以下资料:1、源码下载。 2、使用教程、3、技术分析。 这样不管... 阅读全文

posted @ 2013-10-14 21:21 Alberl 阅读(20696) 评论(16) 推荐(6) 编辑

导航