Archives

帖子来自 Yanqing Wang (Intel) RSS

跟燕青一起学Windows8应用开发:使用HTML+CSS制作居中布局

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 28, 2012 在 10:23 下午
评论 (0)

         在跟燕青一起学Windows8应用开发:使用HTML+CSS自适应水平方向分辨率和跟燕青一起学Windows8应用开发:使用HTML+CSS自适应垂直方向分辨率中笔者介绍了自适应的水平和垂直布局,那么还有神秘布局是程序经常遇到的呢?嗯…,猜对了,那就是居中布局。最为常见的运用场合是登录窗口,本篇博客也将以此例,讨论如何制作居中布局。          在设计居中布局时,HTML和CSS对运行的屏幕分辨率一无所知,那么如何才能够自适应屏幕分辨率呢?非常幸运,CSS中的top和left属性能够按照百分百进行定位,对于屏幕中心点,它的位置应该是left:50%; top: 50%;。接下一个问题是:我如何制定界面的左上角坐标呢?在跟燕青一起学Windows8应用开发:使用HTML+CSS自适应水平方向分辨率一文中,我们知道了margin属性可以制定其于边界的距离,并且让人兴奋的是,它还能够是负值!WOW,看到了胜利的曙光了吗?:-)   在介绍CSS设置之前,不管三七二十一,我们先写个HTML的DIV吧,如图1所示 ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:使用HTML+CSS自适应垂直方向分辨率

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 28, 2012 在 9:40 下午
评论 (0)

         在跟燕青一起学Windows8应用开发:使用HTML+CSS自适应水平方向分辨率一文中,笔者主要讲述了如何通过HTML+CSS的使用,自动根据屏幕的水平分辨率进行宽度的自适应调整。本篇博客将着重讲述如何使用HTML+CSS自适应垂直方向分辨率,通过水平和垂直方向的综合使用,Win8应用程序能够非常容易地自适应不同设备分辨率变化的挑战。          阅读跟燕青一起学Windows8应用开发:使用HTML+CSS自适应水平方向分辨率后,读者已经知道:在默认情况下,DIV是自动扩展其宽度以适合屏幕的实际宽度,那么在垂直方向,DIV的行为方式是否和水平一致呢?为了搞清楚这个问题,不妨我们先做个实验看看吧:-)。   在Study Metro App项目中,我们添加两个DIV(TopPanel和BottomPanel),如图1所示。 ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:使用HTML+CSS自适应水平方向分辨率

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 26, 2012 在 2:34 下午
评论 (0)

         在跟燕青一起学Windows8应用开发:用CSS文件妆点你的应用一文中,我们介绍了如何在HTML中引入CSS文件,配置CSS中p元素的属性,让HTML显示更加的丰富多彩。本篇博客将继续学习如何使用CSS的属性,在水平方向布局,实现自适应屏幕水平方向分辨率的Metro Style应用。          在HTML中,有两种方法规范化HTML元素的展现,一种是table;另外一种是div。table主要是规范数据的展现方式,它不是一种布局手段(虽然它在一定程度上能够实现布局需求),因此本篇博客将着重介绍div方式的布局。如果博友对table布局特别有偏好,请参考http://www.w3schools.com/html/html_tables.asp中关于table的文章。笔者还是按照以往的思路,从简单的例子讲解如何在水平方向自适应屏幕分辨率,布局的要求如下:屏幕分左右两块:左边一块占用水平方向200个像素点,右边一块占用屏幕剩下的水平空间。 在开始布局之前,我们先看看div在默认情况下,它是如何顺序布局的。注意:所有的代码都是在Study Metro App的工程中创建,对于如何参见Study Metro App工程,请参见跟燕青一起学Windows8应用开发:创建HTML5 Metro应用程序一文。   在default.html中添加两个部门面板:LeftPanel和RightPanel,如图1所示。 ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:用CSS文件妆点你的应用

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 26, 2012 在 9:59 上午
评论 (0)

         在跟燕青一起学Windows8应用开发:创建HTML5 Metro应用程序一文中,我们已经用Visual Studio 2011 Beta建立了Study Metro App的项目。在运行后程序后,出现了一个非常单调的黑白文本界面,那么能否给它点缀一下呢?毕竟咱们的生活世界是色彩斑斓的:-)。本篇博客将介绍如何使用CSS文件来为HTML进行点缀。          CSS是Cascading Style ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:创建HTML5 Metro应用程序

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 24, 2012 在 10:32 下午
评论 (0)

跟燕青一起学Windows8应用开发:创建HTML5 Metro应用程序          在前两篇博客跟燕青一起学Windows8应用开发:安装Windows8操作系统和跟燕青一起学Windows8应用开发:安装Visual Studio 2011中,燕青已经搭建了Windows8应用开发的基本开发环境。本篇博客将讲述我们如何创建HTML5 Metro应用程序。          在安装玩Windows8和Visual Studio 2011Beta后,我们可以在桌面上看到Visual Studio 2011Beta的图标,如图1所示(红色方框部分): 图1 创建HTML5 ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:安装Visual Studio 2011

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 24, 2012 在 9:36 下午
评论 (0)

         在跟燕青一起学Windows8应用开发:安装Windows8操作系统一文中,燕青已经安装了Windows8操作系统。为了能够在Windows8上开发Metro-style应用,还需要安装微软的Visual Studio 2011软件。本篇博客将讲述燕青是如何安装Visual Studio 2011 Beta版本的。   安装步骤如下: l  打开页面http://www.microsoft.com/visualstudio/11/en-us,点击红色标注方框,如图1所示。 图1 l  点击图2中的红色方框(http://www.microsoft.com/visualstudio/11/en-us/products) ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

跟燕青一起学Windows8应用开发:安装Windows8操作系统

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 24, 2012 在 8:50 下午
评论 (0)

         Windows8 Consumer Preview ISO文件现在可以在微软网站:http://windows.microsoft.com/en-US/windows-8/download 上下载到。现在支持的语言如图1所示,即: l  英文 l  中文简体 l  法文 l  德文 l  日文 ...

继续 ›

分类: Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

9步搞定Win8 MetroUI应用移植

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 8, 2012 在 3:29 下午
评论 (1)

Win8 Metro UI应用的开发是一件非常有趣的事情,特别是它使用了非常奇特的Metro UI设计。如果现有传统UI设计的应用,能够很方便的移植到Win8上,并且也能够充分利用Metro UI的魔力,那么将是非常有有意义的事情。本篇博客就是讲述,在一般情况下,如何将传统UI应用移植成Metro UI应用。 移植工作看上去比较的难,但是按照规律办事,很多事情仅仅是时间和耐心问题。网友不妨使用9步法来完成你的应用移植: 1.         下载并安装Windows 8 Consumer Preview,下载并安装Microsoft Visual ...

继续 ›

分类: Blog Challenge, Ultrabook, 其他, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

燕青杂谈:工欲善其事,必先利其器 --- Windows8 编程助手

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 四月 5, 2012 在 3:20 下午
评论 (4)

  Windows8 Beta版的发布为软件开发者提供了一个新的平台,它独特Metro风格的UI设计,让众多用户眼前一亮。Windows8的应用软件开发,它不仅仅能够使用当前最为火热的HTML5+CSS3+Javascript组合,而且也同时支持传统的开发语言,比如说C/C++,#C,VB等。微软的最新版本Visual Studio 2011 Beta(http://www.microsoft.com/visualstudio/11/en-us/downloads)版本也提供了HTML5的集成开发环境,并且还支持Intel ATOM CPU框架的软件优化,充分挖掘出Intel CPU的性能优势,这对于HTML5应用软件的用户体验而言是非常有帮助的。 MS Visual Studio是Windows8应用软件开发的重要工具,对于软件开发着而言,如果能够找到一个很好的MS ...

继续 ›

分类: Blog Challenge, Ultrabook, 图形和视觉计算, 英特尔® 软件网络 2.0

燕青杂谈:如何检查DLLs库之间的相关性?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 二月 24, 2012 在 4:39 下午
评论 (1)

在打包应用程序的时候,笔者经常会遇到相关的动态链接库(DLLs)会出现遗漏,导致的后果是用户在安装应用后无法运行,抱怨声很大。那么如何在打包之前查看是否对应的DLLs已经被加入呢?   普通的方法是使用微软的VS Studio,查看程序运行时候调用的DLLs。这种方法虽然能够查出所有的DLLs,但是使用麻烦,并且需要设置断点来逐一查看,比较麻烦。   那么有没有其他方法可以使用呢?   幸运的是,Dependency Walker可以帮助我们检查是否相关的文件已经查找到。网友可以从http://www.dependencywalker.com/ 中下载到最新版本。   笔者打开了Windows自带的记事本应用,可以看到Notepad.exe依赖于很多系统DLLs,如图1所示。 图1 如果当前的系统缺少某个或者几个相关的DLLs,那么它将会用红色标注出来。通过它,打包人员能够比较容易理清楚哪些DLLs是需要加入打包器打包的。   【小结】 l  VS Studio可以检查DLLs的相关性,但是缺点是比较麻烦,不直观。 l  Dependency Walker是一个小工具能够对DLLs和EXE文件进行DLLs相关性检查,直观和易用。 笔者写文章之时,最新的Dependency Walker软件  

继续 ›

分类: Blog Challenge, 其他, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

OpenCV轻松进阶初级篇(三)如何添加Intel IPP和TBB库

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 二月 6, 2012 在 11:24 上午
评论 (2)

  Intel IPP和TBB能够给OpenCV带来性能上的很大提升,那么如何在编译OpenCV的时候讲其打开呢?   OpenCV轻松进阶初级篇(二)编译OpenCV中已经介绍了使用CMake工具来产生各种编译器的项目文件,那么是否可以通过它来Enabled这些Features呢?   非常的运气,在CMake的配置键值对中,我们找到了IPP和TBB的身影,如图1所示。 ...

继续 ›

分类: Blog Challenge, 全国博客大奖赛, 其他, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

简介Intel Media SDK 2012

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 二月 6, 2012 在 10:42 上午
评论 (0)

  Intel Media SDK现在使用新的名字规则了!如果按照以前版本的名字规则,那么它对应是Intel Media SDK3.0 Gold版本。网友可以从http://software.intel.com/en-us/articles/vcsource-tools-media-sdk/?cid=sw:mediadev004 下载到最新版本。 图1 下载步骤: 1)  在图1中,选择红色方框中的下拉菜单“Intel Media SDK ...

继续 ›

分类: Blog Challenge, 全国博客大奖赛, 其他, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

OpenCV轻松进阶初级篇(二)编译OpenCV

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 1, 2011 在 11:30 上午
评论 (6)

  OpenCV的源文件编译需要使用CMake,所以在编译之前需要下载和安装CMake。   哪里可以下载CMake? 现在最新的CMake版本是2.8.6,我们可以从http://cmake.org/cmake/resources/software.html 处下载到,如图1所示。 图1   如何生存VC2010项目文件? 在OpenCV轻松进阶初级篇(一)安装OpenCV中,笔者已经介绍了下载OpenCV的方法。CMake就是要将它的配置文件转化成相应平台的项目文件,本例以windows7平台VC2010为例,其他平台方法一致。 第一步:运行CMake工具,如图2所示。 图2   第二步:生成项目文件,如图3所示。 这里细分为4小步: 1)  进入OpenCV的源代码目录,笔者将它存放在C:\opencv-2.3.1目录中。 2)  进入生成库文件的目标目录,笔者在C:\opencv-2.3.1的目录下自建了一个MyBuild目录 3)  选择需要编译生成的项目。 4)  点击Generate按钮生成项目文件。 图3   第三步:查看生成后的配置信息,如图4所示。 图4 注意:在第一次配置CMake的时候,VC2010是需要在一个下来框中选择的,一旦选择好了,下次就无需再选,仅仅改变编译选项就OK了。   第四步:查看VC2010项目文件是否已经生成完毕,如图5所示。 图5   OK,现在万事俱备只欠东风,还不点击OpenCV.sln来体验一下J。  

继续 ›

分类: Blog Challenge, 图形和视觉计算, 开放源代码, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

OpenCV轻松进阶初级篇(一)安装OpenCV

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 30, 2011 在 4:30 下午
评论 (0)

OpenCV是什么? OpenCV是Open Source Computer Vision Library的缩写。Intel于1999年建立OpenCV项目,现在由Willow Garage提供支持。它是一个基于BSD许可证授权发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。OpenCV轻量且高效,由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。   哪里可以下载最新的OpenCV? 现在最新的OpenCV是2.3.1,可以从http://sourceforge.net/projects/opencvlibrary/ 处下载,如图1所示。点击红色区域内的Download按钮进行下载。 图1 对已非windows系统,可以从http://sourceforge.net/projects/opencvlibrary/files/ 处下载unix,Android等操作系统的安装包,如图2所示 图2   OpenCV的头文件和库在哪里? 双击OpenCV-2.3.1-win-superpack.exe将解压缩OpenCV包,在解压缩后,有一个build目录,存放已经预编译好的头文件和库文件,如图3所示。 图3  

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0

轻轻松松使用Intel Pair & Share分享你的照片

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 18, 2011 在 3:09 下午
评论 (0)

想将智能手机或平板电脑上的照片放入大屏幕显示设备中显示吗?Intel Pair and Share提供了这种实现,如图1所示。 图1 本篇博客主要介绍如何安装和使用Intel Pair and Share来完成照片的共享工作。   1)  下载PC端软件:Download Intel® Pair ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK3.0 Beta5发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 18, 2011 在 1:42 下午
评论 (1)

Intel Media SDK3.0 Beta5发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/intel-media-sdk-30-beta/ 下载它。 新版本的Intel Media SDK3.0 Beta5的主要特征如下: *转码增强 - 转码性能的提高 - 转码视频图像质量的提高 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

教你轻轻松松打包Web应用

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 18, 2011 在 1:36 下午
评论 (7)

Intel AppUp Centre是Intel的在线商店,货架上的商品是各种不同的应用。那么是否Web应用也可以上架呢?当然是了!不过在上架之前需要对Web应用进行打包。Intel提供了优秀的Web应用打包器,本篇博客主要介绍如何使用它来将你的Web应用轻松打包。   Web应用打包步骤: 1)  登陆http://appdeveloper.intel.com/en-us/encapsulator-beta网页 图1 2)  点击“Make your app”标签,然后将应用程序的各部分信息填写。对于GUID部分,请参考Intel AppUp Center文章总汇中的Intel AppUp进阶基础篇(四)获取应用程序GUID一文。 图2 3)  点击“Make ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

WiGig,下一代WiFi的集大成者?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 10, 2011 在 5:00 下午
评论 (8)

WiGig是无线千兆比特联盟(Wireless Gigabit Alliance)制定的一种短距离无线技术。它兼容于WiFi标准,并且具有如下6个重要特征: l  支持最高7Gbps的数据传送速率,是WiFi标准的10倍。 l  设计初衷不仅是为支持低功耗的移动设备(比如手机,…),并且也支持搞性能涉笔(比如说台式机,…),所以它天生具有高级的电源管理技术。 l  设计基于IEEE 802.11标准(WiFi技术使用的标准),并且支持2.4GHZ,5GHZ和60GHZ三个频段,如图1所示。 图1 WiGig结构图 l  支持波形成束,提高信号强度,有效传送距离达10米。 l  支持AES加密。 l  为HDMI, DisplayPort,USB和PCIe提供高性能的无线实现,如图2所示。 图2 WiGig PAL(Protocol Adapter Layer)结构   笔者认为WiGig是一个非常优秀的无线通信技术,它将是下一代的WiFi技术,主要原因如下: l  WiGig兼容于WiFi。现有的WiFi设备能够使用,并且移动运营商现有WiFi设备的升级换代可以循序渐进的进行,能够缓解移动运营商的资金压力。 l  WiGig支持HDMI、DisplayPort、PCIe和USB设备的无线传送。对于移动互联的整个大趋势,对于不同移动设备之间的互联互通,WiGig将起积极的作用。图3讲述了WiGig使用的典型用户案例。 图3 WiGig 使用案例 l  有着广泛的公司支持。图4,图5,图6,分别列出了的董事会成员、重要贡献者和WiGig方案采用者。 图4 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

你能WiDi吗?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 4, 2011 在 4:29 下午
评论 (1)

WiDi(Intel® Wireless Display)是Intel的无线显示技术,对于设备间视频传送播放、游戏联网等应用场合非常有用,那么要使用WiDi技术,系统应该具备什么样的环境呢? 表1列出了相关的软硬件需求。 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

当智能手机遇到了NFC

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 1, 2011 在 3:00 下午
评论 (2)

NFC(Near Field Communication)已经在国外搞得风生水起,在移动支付领域,以NFC手机为代表的新型支付已经向传统信用卡发起了挑战。特别是谷歌Android4.0(Icecream Sandwith)的一款叫Android Beam的应用,通过NFC通信,即时分享手机中的视频、文件和联系人信息等。它不仅推动了NFC在手机中的应用普,而且也使移动支付迈向一个新的阶段。                 既然移动支付是未来的支付发展方向,那么为什么NFC的应用在国内却一直处于难产状态呢?笔者认为主要的原因如下: 1)  标准问题。NFC进入中国,它首先遇到了两个行业老大:一是一掷千金的银联;二是一言九鼎的移动运营商。它们都想在NFC移动支付中拥有主导权,这样导致一个问题,将采用哪个标准作为NFC移动支付标准呢?是银联主导的SD-NFC呢?还是移动运营商SIM-NFC呢?如果选择移动运营商的解决方案,那么将采用中国移动的2.4GHz RFID-SIM标准?还是中国电信和中国联通的13.56MHz SIMPASS标准?NFC在国内的发展遇到了空前的挑战,它不是技术的问题,而是极其复杂的商业利益问题! 2)  价格问题。NFC支付芯片的价格主要分两块:一是NFC芯片价格;二是安全芯片价格。现在各公司正在做SOC,它将蓝牙、WiFi、调频收音和GPS系统等辅助射频的连接组合芯片整合进NFC IP,它能把NFC实现的成本从独立NFC控制器的~5美元降至组合芯片内实现的<1美元,所以安全芯片的价格将是制约NFC支付发展的大头。 3)  ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 虚拟化技术

Android已经开始领跑?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 31, 2011 在 3:47 下午
评论 (27)

苹果和谷歌的移动设备操作系统之争(Android Vs. IOS)已经开始蔓延到手机制造商市场份额之争,并夹杂的很多为了阻碍竞争对手的专利之争。在福兮祸兮?- 议Google收购摩托罗拉移动一文中,谷歌对摩托罗拉的收购示例,也看出了谷歌在专利之争中的无奈和决心。 李小龙的截拳道是对武功的一种深刻认识,打倒对手的最好方法是击中它的有效点 --- 关节。谷歌的硬件合作伙伴是Android的关节点,如果将其中的TOP3有效的打击,那么是否能够更加有效的抑制Android迅猛的发展势头呢?苹果漂亮的在法律上对HTC和三星进行了打击,但是成果如何呢?让我们看看Strategy Analytics的Q3’2011的智能手机的统计数据吧。 出货量TOP3的依次排名是:三星排名第一,Q3’2011的出货量达到2780万台、环比增加~4倍;苹果名列第二,环比增加~2%,从14.1万台提升到17.1万台,增幅缓慢;令人惊奇的是,Nokia居然排名第三,从26.5万台下降到16.8万台,环比下降~60%。智能手机市场份额也和出货量一致,排名依次为三星、苹果和Nokia,苹果和Nokia的丢失的市场基本上被Android手机生产商所吞噬。以个人老数据估计:在Others中,windows phone的市场占有率在~1%,RIM在10左右,Android手机(比如HTC,MOTO,索爱,华为,中兴等)应该在~30%。 苹果的市场份额的丢失,是否意味着Android Vs. IOS胜负已明?在回答这个问题之前,我们必须分析一下其中的原因。笔者认为,导致IOS市场份额丢失的主要原因有如下几点: 1)  ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

行业分析文章总汇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 27, 2011 在 12:15 下午
评论 (0)

最近笔者在整理行业分析博客时候发现了若干篇很有意思的文章,它们是笔者在近一年的时间内抽空写而作。文章的内容折射出笔者对Tablet、Smartphone行业一路走来的认识,虽然很多内容现在已经过时,但是众多观点还是有现实的参考意义。现在将它们按照时间从近而远的顺序整理出来,和网友们分享。观点仅仅代表个人理解,与公司无关,同时也希望和网友们遵循历史条件一起讨论,再次加深理解! 福兮祸兮?- 议Google收购摩托罗拉移动 2011年8月15日晚,据传Google 将以 40 美元现金每股,总价 125 亿美元,收购摩托罗拉移动。其收购总价比照上周五的收盘价格溢价 63%,这次收购正在等待双方董事会批准。如果此事为真,那么它会引起什么轩然大波呢?从这次收购事件中,我们看到了什么?福兮祸兮?- 议Google收购摩托罗拉移动给出了作者对此的理解   Apps爱上了MeeGo 新型的商业模式开辟了新的软件销售渠道,给自由软件开发者创造了数字销售市场,极大的降低了从事软件行业的门槛。AAD商业模式是一个良性的正反馈系统, 通过软件带动硬件需求,促进了硬件的高速更新换代。在新增的硬件features下,又促进软件功能的不断迭代、深化和广化。那么Apps作为整个商业模式的核心部分,为什么爱上了MeeGo呢?Apps爱上了MeeGo给出了作者对此的理解。   鸡肋?还是潮流? 平板电脑(Tablet)的兴起,使多点触摸成为移动设备的特征之一。多点触摸提高了用户在移动设备上的网络冲浪、照片浏览、手写文字、游戏操作等体验, 直接的优良操作体验引起了用户的强烈的兴趣。迫于形势的压力,传统笔记本和上网本厂商开始将多点触摸屏应用于笔记本和上网本上,力求通过这种改造来减 弱平板电脑的给其带来冲击。多点触摸屏笔记本真的是市场潮流?还是鸡肋呢?鸡肋?还是潮流?给出了作者对此的理解。   固步自封,还是老谋深算? 如果你是乔布斯,你正在考虑什么呢?他到底是在固步自封,还是在异常平静的氛围内,酝酿着一次惊人之作。老谋深算的乔布斯,应该在后面的几个月内揭晓答案。在此,笔者仅仅以自身对苹果的商业逻辑、市场产品和竞争对手的理解,为老乔同学如何使用这些现金做了一些预测。   ipad,你看到了什么? 苹果的ipad在IT业界刮起了一阵强烈的Tablet旋风,风靡全世界。据iSuppli报告称,ipad的出货量占今年整个tablet市场的~75%,并将在2011和2012维持高的占有率(~70%和~65%)。笔者不禁在问自己,为什么ipad一登陆中国市场就搞的风生水起,而当初iphone试水中国智能手机市场的时候却是败走麦城呢?ipad,你看到了什么?给出了作者对此的理解。   我的Tablet我做主! Tablet是革命性的一代移动产品,它的功能介于netbook和smartphone之间,定位非常奇特。虽然苹果的ipad已经在市场上获得了巨大的成功,但是业界一直没有对Tablet定义统一的规格。在错中复杂的tablet市场(厂商请看考 MeeGo, ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel AppUp Center文章总汇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 29, 2011 在 10:49 上午
评论 (0)

Intel AppUp Center是Intel的软件在线商店,它为软件程序员提供了一个新的销售渠道。对自由开发者而言,在线商店降低了个人销售的门槛,非常有意义!笔者将以前写的相关文章整理出,提供快速链接,以便网友查阅。   对于新手而言,我希望他们能够按照基础篇中的文章依次阅读,在完成基础篇阅读后,再参考实战篇的两篇文章。实战篇的两篇文章,主要目的是教会网友如何在源代码中加入Intel AppUp Center的APIs,并将其打包成Intel AppUp Center需求的格式。   【Intel AppUp基础篇】 Intel AppUp进阶基础篇(一)申请账号 Intel AppUp进阶基础篇(二)下载SDK Intel ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

QT和MeeGo文章总汇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 29, 2011 在 10:14 上午
评论 (0)

在MeeGo平台上开发,QT是最基本的,也是最好用的开发包。笔者整理了以前写的若干篇文章,将它们汇总在一起,以便网友查阅。 汇总分为两块:QT基础学习和MeeGo基础学习。它主要面对的读者是对MeeGo和QT的初学者,如果网友已经有相关经验,也请提提改进意见,笔者将不胜感激!   【QT基础学习】 QT初级进阶1:轻轻松松搭建Windows QT Debugging环境 QT初级进阶2:轻轻松松打包MeeGo的QT程序   【MeeGo基础学习】 MeeGo进阶基础篇1 - 安装Ubuntu MeeGo进阶基础篇2 – 配置Ubuntu的MeeGo SDK环境 MeeGo进阶基础篇3 – 安装Ubuntu的MeeGo ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK文章总汇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 27, 2011 在 5:18 下午
评论 (0)

自Media SDK发布以来,一直跟随其不停的学习。随着时间的流逝,陆陆续续的写了几十篇相关的blogs。因为它们散布在不同的网页,在查阅的时候非常的费时,所以在此做一次整理,便于与网友分享。也希望网友能够和蔼的提出建设性意见,以便日后提高。先谢过了!   Media SDK基础篇 Media SDK,你在哪里? Intel Media SDK常见问题之解答 Media SDK的认识误区 Media SDK 用户实例模块执行图解 请更喜欢Media SDK Media ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK与CPU(i3/i5/i7)编解码对照表

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 27, 2011 在 4:28 下午
评论 (0)

Intel CPU已经自带集成显卡,软件通过Intel MSDK能够开启硬件的编解码加速功能。下表根据市场上的主流CPU(i3/i5/i7)绘制了一张编解码的实际硬件能力参考图,便于CODEC开发人员参考。                                                                         Table1: CPU(i3/i5/i7)硬件编解码能力图 Features ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK常见问题之解答

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 27, 2011 在 11:57 上午
评论 (1)

最近网友常问我关于Media SDK的一些基本问题,非常高兴大家对Media SDK的热衷。在浏览相关网页期间,发现了一篇老文章,将Media SDK的常见问题都进行了解答,感觉不错,分享给大家。 它主要回答了如下几个问题: Q1: What did Intel announce? Q2: What are ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK3.0 Beta4发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 14, 2011 在 3:48 下午
评论 (3)

Intel Media SDK3.0 Beta4发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/intel-media-sdk-30-beta/ 下载它。 新版本的Intel Media SDK3.0 Beta4的主要特征如下: *转码增强 - 转码性能的提高 - 转码视频图像质量的提高 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

福兮祸兮?- 议Google收购摩托罗拉移动

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 15, 2011 在 10:43 下午
评论 (35)

2011年8月15日晚,据传Google 将以 40 美元现金每股,总价 125 亿美元,收购摩托罗拉移动。其收购总价比照上周五的收盘价格溢价 63%,这次收购正在等待双方董事会批准。如果此事为真,那么它会引起什么轩然大波呢?从这次收购事件中,我们看到了什么?本篇博客主要以笔者自身对行业的认知,谈一下自己的看法,不代表任何组织,纯属个人观点! 【我们看到了什么?】 * 移动互联网的收购新特征。以前是传统公司搞互联网业务,而现在互联网公司开始兼并传统公司。谷歌收购摩托罗拉是一个典型的例子,这说明移动互联网市场巨大,互联网公司需要统一线上和线下,将用户资源牢牢掌握在自己手中。 * 专利是剑,专利是盾,持之能攻守兼备。谷歌收购摩托罗拉移动不是历史的偶然,而是必然!前有微软对Android厂商的专利收费,Apple对三星、HTC等Android厂商的专利大棒打压,后有甲骨文对谷歌Android系统的侵权诉讼,甚至连美国德州的一家小公司Lodsys也开始向Android和ios的开发人员发难专利。 【谁在哭泣?】 * Android的手机移动厂商。对三星、HTC和索爱等Android手机移动厂商而言,谷歌收购摩托罗拉移动是坏消息。虽然谷歌宣称对Android的定位没有变化,谷歌将继续作为一个开放的系统,一个充满活力的开源社区运营,并继续和其他厂商合作,开发并发售新的终端,但是对手机移动厂商而言,它们真的天真的相信了吗?估计很多已经是被“绑架”了,上船容易下船难!建议三星、HTC和索爱,组成移动版S.H.E,在谷歌门口大唱“只为爱上你”:-)。 * ...

继续 ›

分类: Blog Challenge, 其他, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK3.0 Beta3发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 21, 2011 在 3:53 下午
评论 (2)

Intel Media SDK3.0 Beta3发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/intel-media-sdk-30-beta/ 下载它。 新版本的Intel Media SDK3.0 Beta3的主要特征如下: *转码增强 - 转码性能的提高 - 转码视频图像质量的提高 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

QT初级进阶2:轻轻松松打包MeeGo的QT程序

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 21, 2011 在 3:42 下午
评论 (5)

打包MeeGo的QT程序是程序员的快乐时光,看到自己的成果马上要发布了,多少天开发的劳累,多少天的抓耳挠腮的痛苦,都在此时化为美丽的故事。RPM包是MeeGo最为常用的安装包,本篇博客以RPM包为基础,讲述如何在这快乐时光中,轻轻松松打包MeeGo的QT程序。 Ubuntu是MeeGo QT程序开发的常用PC环境,那么RPM包如何生成呢? 1) 下载和安装rpmbuild。         sudo apt-get install rpmbuild 2) 检查rpmbuild目录在安装后是否已经生成.         cd ~         ls | grep ‘rpmbuild’ 3) 将你的SPEC文件拷贝到~/rpmbuild/SPECS/下。SPEC文件的具体内容一般如下:         Summary:App summary         Name:App ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 开放源代码, 英特尔® 软件网络 2.0

Intel Media SDK3.0 Beta2发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 11, 2011 在 10:53 上午
评论 (0)

Intel Media SDK3.0 Beta2发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/intel-media-sdk-30-beta/ 下载它。 新版本的Intel Media SDK3.0 Beta2的主要特征如下: *转码增强 - 转码性能的提高 - 转码视频图像质量的提高 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

QT初级进阶1:轻轻松松搭建Windows QT Debugging环境

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 11, 2011 在 10:45 上午
评论 (0)

在windows下使用QT Creator,程序员经常需要对程序进行Debugging调试。当按下“Start Debugging(F5)”按钮的时候,很有可能弹出令人烦恼的错误对话框,如图1所示。 图1 有很多初学者问笔者,如何解决这个问题?虽然解决方法比较简单,但是人一多,工作量还是上去不少。有善意者提醒笔者,为什么不写一篇博文来逐步讲解解决方法呢? 非常棒的想法!闲话少说,让我们开始吧:-)。 解决方法步骤: 1)打开网页:http://doc.qt.nokia.com/qtcreator-snapshot/creator-debugger-engines.html,滚动图2位置。读者可以根据系统选择1号超链(http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx)还是2号超链(http://www.microsoft.com/whdc/devtools/debugging/install64bit.Mspx)。因为笔者系统是1号超链,故下面步骤也将按照其展开,对于2号超链,基本的操作步骤一致。 图2 2)点击1号超链:http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx 图3 3)点击图3的“Download Debugging Tools from the ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 开放源代码, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel Media SDK3.0 Beta1发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 四月 12, 2011 在 11:20 下午
评论 (0)

Intel Media SDK3.0 Beta1发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/intel-media-sdk-30-beta/ 下载它。 新版本的Intel Media SDK3.0 Beta1的主要特征如下: *转码增强 - 转码性能的提高 - ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

Intel AppUp进阶基础篇(七)创建Intel AppUp(TM) SDK项目

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 四月 10, 2011 在 1:36 下午
评论 (1)

创建Intel AppUp(TM) SDK项目是程序员开发Intel AppUp Centre应用的基本操作。虽然它的操作非常的简单,但是对初次使用Intel AppUp(TM) SDK的程序员而言,它也需要费一些周折。本篇博客讲述了如何Step by Step的创建Intel AppUp(TM) ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

Intel OpenCL SDK Alpha版本发布了!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 四月 9, 2011 在 8:25 上午
评论 (2)

网友可以从http://software.intel.com/en-us/articles/intel-opencl-sdk/下载到此Alpha版本,它的features主要如下所示: * 完全支持OpenCL1.1标准规格 * 支持部分OpenCL1.1可选标准: - 无序执行模式 - native kernels支持 - image支持 - 编译器优化选项 * Intel Vendor扩展 - ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Intel AppUp进阶基础篇(六)解决MSI访问权限问题

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 28, 2011 在 4:24 下午
评论 (0)

将应用打包是上传到Intel AppUp Centre的重要一步。在windows 7上,用VC2008打包MSI格式时候,经常会遇到一些访问权限的问题,使应用开发者极其沮丧。本篇博客主要讨论一个常见的问题,希望对读者有一定的借鉴作用。 图1中,是在使用VC2008时候非常常见的错误: ERROR: Could not create the file “C:\Users\Dell01\AppData\Local\Temp\VSICE41.tmp’ ERROR: ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件开发工具, 软件技术学习及认证

Intel AppUp进阶基础篇(五)安装VC AppUp IDE Plugin

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 28, 2011 在 1:20 下午
评论 (0)

在Intel AppUp进阶基础篇(一)申请账号、 Intel AppUp进阶基础篇(二)下载SDK、 Intel AppUp进阶基础篇(三)添加组织 和Intel AppUp进阶基础篇(四)获取应用程序GUID中, 笔者已经介绍了如何申请账号、下载相关的SDK、添加用户组织和获取应用程序GUID的问题,本篇文章将主要讲述如何获安装VC AppUp IDE Plugin。 1)登陆http://appdeveloper.intel.com/en-us 图1 2)点击图1“Get the ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件开发工具, 软件技术学习及认证

Intel AppUp进阶基础篇(四)获取应用程序GUID

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 25, 2011 在 5:41 下午
评论 (0)

在Intel AppUp进阶基础篇(一)申请账号、Intel AppUp进阶基础篇(二)下载SDK和 Intel AppUp进阶基础篇(三)添加组织中,笔者已经介绍了如何申请账号、下载相关的SDK和添加用户组织的问题,本篇文章将主要讲述如何获取应用程序GUID。 1)登陆http://appdeveloper.intel.com/en-us 图1 2)点击图1中的“Log in”按钮 图2 3)点击“My Dashboard” 图3 4)点击“Start A ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

Intel AppUp进阶基础篇(三)添加组织

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 25, 2011 在 4:06 下午
评论 (2)

在Intel AppUp进阶基础篇(一)申请账号和Intel AppUp进阶基础篇(二)下载SDK中,笔者已经介绍了如何申请账号和下载相关的SDK问题,本篇文章将主要讲述如何添加组织。对个人开发者而言是没有组织而言的,那么如何才能通过这个关卡往往是令程序员抓狂的,笔者也遇到了类似的经历,所以总结了一下,希望能够对后来人有所帮助。 1)登陆http://appdeveloper.intel.com/en-us 图1 2)点击图1中的“Log in”按钮 图2 3)点击“My Dashboard” 图3 4)点击“Add/Join Organization” 图4 5)点击“Next” 图5 6)点击第一个“Go”按钮,获取validation代码 图6 7)检查注册的email,查看是否appdeveloper.support@intel.com已经给你发信。 图7 8)将validation code从email拷贝到Text Edit中,点击“Go”按钮。 图8 9)点击“OK”按钮 图9 10)点击“Next”按钮 图10 11)新建你的组织名,点击“Go”按钮 图11 12)添加必须的以*标记的信息,然后点击“Next”按钮 图12 13)如果你的应用是需要付费的,那么请添加你的paypal信息,否则直接点击“Next” 图13 14)选择“I have ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 开放源代码, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

Intel AppUp进阶基础篇(二)下载SDK

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 25, 2011 在 1:48 下午
评论 (1)

在Intel AppUp进阶基础篇(一)申请账号一文已经讲述了如何申请用户账号,因为对开发者而言,Intel AppUP Centre SDK的下载必须是注册用户,如图1所示。 图1 1)用户注册,请参考Intel AppUp进阶基础篇(一)申请账号 图2 2)登陆http://appdeveloper.intel.com/en-us 图3 3)链接SDK下载网页 图4 4)下载你要的SDK包 图5 【小结】 - 只有注册用户才能下载SDK包 - AppUp Centre现在支持C/C++、NET、Java、Adobe AIR和MeeGo。 【参考】 Intel AppUp进阶基础篇(一)申请账号 Intel AppUp进阶基础篇(二)下载SDK Intel ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

Intel AppUp进阶基础篇(一)申请账号

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 25, 2011 在 11:41 上午
评论 (5)

在Apps爱上了MeeGo一文中,笔者已经讲述了Intel AppUp Centre的特点和优势。作为一名程序员,还不赶快注册:-)。 1)登陆http://appdeveloper.intel.com/en-us网站 图1 2)点击图1右上角的“Get an ID”链接 图2 3)点击图2下侧居中的“Get an ID *”按钮 图3 OK,现在你已经注册成功了。 【小结】 - http://appdeveloper.intel.com/en-us网站上是通过”Get an ID”来注册用户的,和其他网站有所不同,笔者当初因为找注册链接还折腾了一段时间。 - 通过“Get ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 开放源代码, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

Apps爱上了MeeGo

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 三月 18, 2011 在 11:37 下午
评论 (30)

自Apple建立了新的移动设备商业模式以来,特别是智能手机的创新使整个移动互联行业发生了翻天覆地的变化。 Apple的创新商业模式是AAD-CPC模式: - Apps是内容(Contact) - App Store是平台(Platform),提供丰富而强大的服务(Service) - 移动设备是载体(Carrier),提供创新产品设计和完美用户体验(UX) 新型的商业模式开辟了新的软件销售渠道,给自由软件开发者创造了数字销售市场,极大的降低了从事软件行业的门槛。AAD商业模式是一个良性的正反馈系统,通过软件带动硬件需求,促进了硬件的高速更新换代。在新增的硬件features下,又促进软件功能的不断迭代、深化和广化。 那么Apps作为整个商业模式的核心部分,为什么爱上了MeeGo呢? 笔者认为,主要有以下几点: 1) App Store概念延伸的使然。 一方面,App Store已从移动互联设备平台,发展到广义的平台。它包含平板电脑(Tablet)、上网本(Netbook)、笔记本(Notebook)、PC、车载系统(IVI)、智能电视(Smart TV)等不同的领域;另一方面App Store从单一提供商发展到多个提供商,比如对于一款Android手机,它可以在谷歌的e-market上下载Apps,也可以从移动运营商那里下载它们。Intel AppUp ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 其他, 图形和视觉计算, 开放源代码, 移动技术, 英特尔® 软件网络 2.0, 英特尔信息技术峰会, 软件技术学习及认证

MeeGo进阶基础篇6– Meego下搭建QT环境

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 27, 2010 在 3:26 下午
评论 (1)

MeeGo应用程序可以在模拟环境上开发,也可以在真实MeeGo系统上开发。本篇博客将着重讲述如何在MeeGo系统上搭建QT环境。 主要步骤如下: 1)在http://qt.nokia.com/downloads/sdk-linux-x11-32bit-cpp上下载QT SDK开发包。如果其他的环境,在http://qt.nokia.com/downloads中选择相关平台。 2)安装QT SDK $ chmod u+x qt-sdk-linux-x86-opensource-2010.05.1.bin $ ./qt-sdk-linux-x86-opensource-2010.05.1.bin 3)设置shell环境变量QTDIR和PATH a)打开~/.bash_profile $ vi ~/.bash_profile b)加入QTDIR环境变量 QTDIR=/opt/qtsdk-2010.05/qt PATH=$PATH:$HOME/bin:$QTDIR/bin export PATH export ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 开放源代码, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

MeeGo进阶基础篇5 – 安装MeeGo上网本

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 24, 2010 在 2:44 下午
评论 (0)

在MeeGo进阶基础篇1 - 安装Ubuntu MeeGo进阶基础篇2 – 配置Ubuntu的MeeGo SDK环境 MeeGo进阶基础篇3 – 安装Ubuntu的MeeGo SDK MeeGo进阶基础篇4 – ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

MeeGo进阶基础篇4 – 安装Ubuntu的MeeGo仿真器

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 23, 2010 在 4:17 下午
评论 (3)

QEMU是MeeGo SDK的一个元件,但它在仿真器下能够运行手持设备和上网本映像文件。读者可参考http://wiki.qemu.org/Main_Page为获取更多关于QEMU的信息,因为MeeGo进阶基础篇2 – 配置Ubuntu的MeeGo SDK环境一文中MeeGo SDK已经被安装,所以在本篇博客中将不再鳌述。 1)查看meego-sdk.list的用户权限 $ ls -al /etc/apt/sources.list.d | ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 虚拟化技术, 软件技术学习及认证

MeeGo进阶基础篇3 – 安装Ubuntu的MeeGo SDK

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 23, 2010 在 2:31 下午
评论 (0)

在MeeGo进阶基础篇1 - 安装Ubuntu和MeeGo进阶基础篇2 – 配置Ubuntu的MeeGo SDK环境中讲述了如何搭建MeeGo SDK的安装环境,本篇博客主要讨论如何在上述环境下安装MeeGo SDK1.1。 安装MeeGo SDK步骤如下: 1)查看meego-sdk.list的用户权限 $ ls ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

MeeGo进阶基础篇2 – 配置Ubuntu的MeeGo SDK环境

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 21, 2010 在 5:19 下午
评论 (6)

在MeeGo进阶基础篇1 - 安装Ubuntu一文中,笔者已经介绍了如何安装MeeGo SDK所需要的Ubuntu操作系统。本文将着重讨论如何在Ubuntu上配置MeeGo SDK所需要的软件环境。 打开Applications菜单,选择Accessories子菜单,点击Terminal子菜单。一个Terminal窗口将在Ubuntu系统中产生,对MeeGo SDK环境的配置请跟随如下步骤: 1)查看sources.list.d的用户权限 $ ls -al /etc/apt | ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

MeeGo进阶基础篇1 - 安装Ubuntu

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 10, 2010 在 2:05 下午
评论 (0)

MeeGo1.1 SDK已经能够在Ubuntu位平台上使用,本篇博客主要讲述如何搭建Ubuntu 10.04LTS平台。如果读者对其他平台感兴趣,可以登陆http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support来获取更多关于操作系统方面的信息。 如何下载并安装Ubuntu 10.04LTS 32版本? 1) 登陆http://www.ubuntu.com/ 2) 点击Download Ubuntu 3) 选择Ubuntu 10.04 ...

继续 ›

分类: Blog Challenge, 全国大学生软件创新大赛专栏, 图形和视觉计算, 开放源代码, 英特尔® 软件网络 2.0, 软件技术学习及认证

鸡肋?还是潮流?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 8, 2010 在 2:18 下午
评论 (12)

平板电脑(Tablet)的兴起,使多点触摸成为移动设备的特征之一。多点触摸提高了用户在移动设备上的网络冲浪、照片浏览、手写文字、游戏操作等体验,直接的优良操作体验引起了用户的强烈的兴趣。市场数据也反应出这种新的输入方式的力量,DRAMeXchange预测全球笔记本和上网本2011年增长率为15.4%,市场规模达2.227亿台,其中上网本受到平板电脑的冲击,市场份额呈现衰退,年减2%,约为3260万台,然而平板电脑却保持持续高速增长,达到5130万台,年增长率为237.5%。迫于形势的压力,传统笔记本和上网本厂商开始将多点触摸屏应用于笔记本和上网本上,力求通过这种改造来减弱平板电脑的给其带来冲击。 多点触摸屏笔记本真的是市场潮流?还是鸡肋呢? * 盲目跟风,沐猴而冠。传统的windows的操作系统和应用程序是建立在鼠标和键盘的输入基础之上的,系统UI的用户体验就是一个很好的例证。虽然windows 7支持多点触摸技术,但是在传统UI基础上的多点触摸体验有明显的弱点:它不适合手指直接操作,很容易疲劳。用户往往是7分热度,3分需求,如果发现多点触摸并没有带来什么明显的好处,相反会让人疲劳,那么它是没有太多的市场价值。 * 各有千秋,取长补短。鼠标、键盘和多点触摸屏仅仅是多种信息输入设备,从本质上讲没有拙劣之分。多点触摸确实有很多的优势,但是它不是全部。比如说,在日常的Office工作中,文字输入是一个基本的事务。很明显键盘和鼠标的配合要在效率和速度上占有优势。 * 精确定位,合理利用。平板电脑的成功之处就是充分运用了这点:通过多点触摸的优良用户体验,开辟了一条市场成功之路。乔布斯认为,在笔记本和智能手机之间有一块中间市场,ipad的精确定位,加上软件对多点触摸技术的量体裁衣,使tablet发挥出巨大的潜能。Tablet已经形成了市场,并得到认可。在Tablet这片热土上,笔记本和上网本以其之短博其之长,胜算在哪里?! 个人理解,多点触摸屏笔记本顶多是一个中间过渡产品,它不可能在市场上有很强的生命力。传统笔记本、上网本和平板电脑将会形成清晰的市场分界线,并随着平板电脑的发展,上网本将会淡出市场进入博物馆。 仅仅个人观点,欢迎讨论!

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

固步自封,还是老谋深算?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 29, 2010 在 7:30 下午
评论 (24)

苹果第四季度报表显示出强劲上升势头,净利润大幅增长至43.1亿美元,同比增70%;营收也比去年同期增长67%,至203.4亿美元。现在它的现金储备及短期投资为256亿美元,若包含长期投资在内,总数可达510多亿美元现金。令人感到奇怪的是,它既不分红,也无大规模资本支出计划,那么它在想些什么呢? 如果你是乔布斯,你正在考虑什么呢?他到底是在固步自封,还是在异常平静的氛围内,酝酿着一次惊人之作。老谋深算的乔布斯,应该在后面的几个月内揭晓答案。在此,笔者仅仅以自身对苹果的商业逻辑、市场产品和竞争对手的理解,为老乔同学如何使用这些现金做了一些预测。 预测1:收购一家大型广播和电视服务提供商。苹果正在推广它的Apple TV,但受到广播和电视服务提供商的阻力。那么手头这么庞大的现金储备,是否可以考虑对其一家进行收购,以便与维亚康姆、时代华纳和康卡斯特等竞争呢? 预测2:大力投资手机云,加快云步伐。笔者在MeeGo,机会来了!一文指中,手机云是将来智能手机的一个发展方向。作为苹果支柱的iphone,也会跟随这个行业趋势。正如,苹果斥资数十亿美元在北卡罗纳州修建数据中心,那么它是否可以考虑收购EMC(市值500多亿美元)、VMWare(市值280多亿美元)等公司来增加它的云实力呢? 预测3:强化苹果PING社交网络。社交网络的部署是老乔同学的战略计划,最近他在美国加州帕罗艾尔托邀请Facebook首席执行官马克.扎克伯格共进晚餐。这个是否意味着他有意收购Facebook(市值250多亿美元)呢? 预测4:强势入驻游戏世界。游戏是未来网络、手持设备上的重要内容。现在游戏界三巨头:索尼、任天堂和微软三国鼎立。苹果能够后来居上,通过收购索尼或者任天堂来速成呢?索尼当前市值是410多亿美元,任天堂是349多亿美元。除了微软咬不动,其他都在它的帐下! 预测5:收购游戏内容提供商。iphone、ipad等产品的大紫大红使苹果拥有庞大的用户基数,game center的触角也逐渐伸入传统游戏三国(索尼、任天堂和微软)的地盘。苹果可以通过收购像Zynga这样的社交游戏公司,加速游戏地盘的扩张。毕竟,苹果App Store已经形成气候,推广不再是问题。 预测6:收购地理定位服务提供商。地理定位服务一定是日后iphone、ipad等手持设备的重要功能,苹果可以通过收购Foursquare等公司强化自身服务能力。 预测7:对竞争对手(主要是谷歌)进行防御性收购。谷歌为了限制苹果的发展,先后对Android、Admob等公司做出了防御性收购,并且也取得了很好的成绩。那么,为什么苹果不可以“以其人之道还其人之身”呢?Foursquare,twitter等公司,谷歌老早就垂涎三尺,那么谷歌要的就是我要的,拼财力的时候到来了! 预测8:收购在线支付公司。现在苹果App Store使用的是itunes绑定信用卡支付系统,虽然很完美的实现了一站式服务,但是毕竟使用的是其他人的平台(感谢jim的指正)。看着白花花的银子落入人家口袋,老乔同学估计心里不是滋味。那么是否可以考虑收购一些在线支付公司,完成大统呢?看样子,BOKU, Fortumo和Zong等都是苹果嘴边的“肉”。 老乔同学的创造力非吾辈所及,笔者也仅仅在这里按照自身理解做出了大胆的预测。希望和广大网友探讨!

继续 ›

分类: Blog Challenge, 可管理性, 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK2.0 Gold发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 21, 2010 在 9:24 上午
评论 (9)

Media SDK2.0 Gold发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/media/ 下载它。 Media SDK2.0 Gold版本支持API 1.1版本,它兼容于API 1.0 版本。API 1.1版本支持多个session的链接使用,并且通过API扩展,定义了USER ...

继续 ›

分类: Blog Challenge, 可管理性, 图形和视觉计算, 英特尔® 软件网络 2.0

ipad,你看到了什么?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 16, 2010 在 2:18 下午
评论 (18)

苹果的ipad在IT业界刮起了一阵强烈的Tablet旋风,风靡全世界。据iSuppli报告称,ipad的出货量占今年整个tablet市场的~75%,并将在2011和2012维持高的占有率(~70%和~65%)。笔者不禁在问自己,为什么ipad一登陆中国市场就搞的风生水起,而当初iphone试水中国智能手机市场的时候却是败走麦城呢? 在讨论这个问题之前,笔者认为不妨先看看为什么当初iphone在中国市场水土不服呢? - 傲慢的苹果。苹果以令人惊叹的商业模式(以AppStore为核心的软ecosystem)征服了美国,欧洲等传统智能手机市场,可以说是势如破竹。乔布斯自认为,中国也仅仅是其中一站,无需调整这种商业模式而必将适应。在乔布斯踌躇满志的时候却忘记了在中国市场谁是真正的游戏规则的制定者?对中国运营商而言,苹果仅仅是一个国外公司,它的手机仅仅是智能手机的一种。他也忘记了中国消费者的免费消费理念。“是的,商业应用很好,但是我更喜欢免费。“ - 战略合作伙伴的失策。在中国市场,移动一直是传统的老大,但苹果却因为短期的经济利润选取与中国联通合作。市场是公平的,当你抛弃了多数用户而选择利益的时候,无论iphone是多么完美,无论用户是多么想拥有一台自己的“心爱“,它必将和他们擦肩而过。 - 销售渠道的短板。中国联通的销售渠道不足以完全打开国内广阔的智能手机市场,所以iphone的销售受到了诸多限制。苹果渠道的单一性和推广力度的乏失,iphone陷入泥潭,不温不火是必然之事。 - 无力的政府公关。iphone既然做作为智能手机的一种,必然受到政府的诸多限制,比如说入网license、允许携带的功能等。在没有良好政府公关的情况下,必然导致很多功能在国内受到阉割。比如,Wifi模块的缺失就是用户经常抱怨的一个重要购买因数。 - 错失上市良机。与运营商为最大获利的纠缠不清;与政府为license获准的辛苦等待,这些不利因素导致iphone在国内的上市远远超过预期。水货在这段时期却抓住了大好机会,不仅做出了规模、渠道和服务,而且功能比阉割行货更加强大。试想,你是iphone的购买者,你的选择在哪里?!悲哉叹哉! - 高昂的价格。我经常听分析师说,年轻国人对价格不敏感。他们会花几个月的工资大方地用去买一台iphone,而仅仅为了博得在朋友圈子里面的面子。我很不赞同这种观点!一方面,即使是有的话,也仅仅是少数年轻人而非大数!我周围有很多80,90后的年轻人,消费是非常理性和务实的。另一方面,他们把价格机械化的认为是iphone手机的价格。按照笔者理解,价格分为两块:1)iphone手机的价格。2)3G资费的价格。iphone价格是一次性投入,看上去蛮贵的,但是大头是后期的3G资费。这个有点象买车,为什么很少人会抱怨车价很高,但是却经常抱怨油价很贵呢?!温水煮青蛙的感觉是非常不好的,中国市场上主流人群还是以2G为主,毕竟3G的资费太高(联通版的iphone是3G WCDMA)。此外,在中国市场,iphone产品不是唯一选择,诺基亚、三星、LG、HTC、摩托罗拉等手机厂商也提供了很好的替代品。对于单价过高的iphone,竞争力自然下降了。 如果苹果要赢的中国市场,至少需要对上述问题进行一定程度的解决。那么ipad做到了吗? - 渠道的拓宽。它成功吸取了以前iphone的经验教训。不仅可以在联通营业厅可以买到ipad,还可以在国美等渠道获得,这对于ipad的全国销售是非常有利的。此外,现在的苹果将会拓宽合作对象,不仅与中国联通合作,还要和中国移动,中国电信两巨头联手。 - 理解国家政策。ipad和iphone不同之处在于ipad是3C产品,它可以不受国家入网license的限制,并且还可以利用国家的“以旧换新”优惠政策。10%的优惠将ipad的价格拉齐于港货水平,使水货市场失去了价格优势,极大的推动了销售业绩。 - 缩短了与国外ipad上市的时间差。它有效的打击了水货市场利用这个缓冲期占有国内市场的机会,从而遏制水货的泛滥。从现在的市场行情来看,效果显著。 笔者认为,苹果还需在国内市场做进一步的创新(innovation)工作,并深化中国市场。虽然上述三点已经基本解决了iphone的失败因数,从近期来看是非常有利于ipad在国内市场的销售,但此一时彼一次,市场是在不断发展的。没有永恒的策略,只用不断侦听市场的脉搏,管理变化。变,才能生存! 欢迎网友们讨论! 对于Tablet的软硬件定义,请参考如下文章: 我的Tablet我做主! 商务Tablet,还是软件为王?

继续 ›

分类: Blog Challenge, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0

商务Tablet,还是软件为王?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 4, 2010 在 10:24 上午
评论 (12)

在我的Tablet我做主!一文中,笔者对tablet进行了分类:信息娱乐tablet(Infotainment tablet)和商务tablet(Business/Enterprise tablet)。根据不同的市场定位需求,定义了它们相关的硬件规格。有网友反应它们之间的硬件规格差别不大,并且商务tablet的附加硬件模块在信息娱乐tablet中也是有可能被应用上去的。个人认为,产生这种情况的主要原因还是市场上没有对tablet进行一个很好的分类,所以产生了对tablet分类的不同理解。笔者之所以要对tablet如此分类,主要是考虑到信息娱乐市场和商业市场不同的用户需求,并着重按照它们的功能和价格进行了规格定义。本篇文章将以我的Tablet我做主!的硬件规格为基础,定义了商务tablet特有的基本软件模块。在此基础上,厂商可以根据自身的服务和内容进行细分或者添加更多软件功能。 Ipad的风靡使市场对信息娱乐tablet有了一个初步的了解,那么商务tablet在此基础上还应该具有什么功能呢? 在讨论这个问题之前,首先需要了解商业用户注重什么功能?根据笔者对市场的理解,以下四个部分是主要方面: - 安全。 - 高效。 - 易管理。 - 网络互联。 安全、易管理主要是针对企业需求;而高效和网络互联主要是针对商务人士需求。 那么问题是,什么样的软件功能是这四个部分最为关注的呢?笔者认为: - 安全         * 密码保护功能。包含开机锁(用户开机保护)和键盘锁(用户锁定和解锁保护)等。         * 休眠功能。在无任何操作一段时间后,系统进入待机模式,并启动键盘锁保护商业内容。它不仅仅是一个保护功能,还是一个很好的节电功能。         * AES/DES加解密功能。提供对email、短信等内容的加密功能,防止商业信息被窥探。         * 安全MIME功能。防止恶意软件、病毒对tablet通过MIME进行攻击,保护商业机密。         * 提供FIPS(Federal Information Processing ...

继续 ›

分类: Blog Challenge, 可管理性, 图形和视觉计算, 英特尔® 软件网络 2.0

我的Tablet我做主!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十月 1, 2010 在 12:38 下午
评论 (4)

Tablet是革命性的一代移动产品,它的功能介于netbook和smartphone之间,定位非常奇特。虽然苹果的ipad已经在市场上获得了巨大的成功,但是业界一直没有对Tablet定义统一的规格。在错中复杂的tablet市场(厂商请看考 MeeGo, 客户在哪里?),消费者非常困难做出选择:到底什么样的产品才是符合自己消费需求的产品?笔者虽然对tablet已经关注很久,但是也对某些厂家的tablet感到非常惊奇,产品的尺寸从3寸,4寸,5寸,7寸到10寸都有,并且还带有通话功能,那么3寸、4寸的tablet和smartphone之间有什么区分呢? 在另一方面,对于这种不规范的市场,从长远来看也是不利于tablet厂商发展的。因为一个成熟的tablet产品需要一个规范的tablet行业,通过对市场的细分,对不同客户群体的锁定,才能避免过量的同质化竞争、价格大战,造成恶性循环。 从tablet厂商的战略角度看,tablet现在是一个灰色地带,谁能够在行业中形成一个既定事实的规范(虽然这个规范可能太偏向于某个或某几个公司的产品,但它被市场大众接受。),那么它就会在市场中取得竞争优势。笔者认为,日后主流的tablet市场将会分为两种类型的产品,即 信息娱乐tablet和商务tablet。信息娱乐tablet主要针对的是游戏、视频、阅读、导航、旅游和社交等市场;商务tablet主要针对商务活动,比如视频会议、商务展示等电子安全等市场。为了满足各自的市场需求,笔者毛遂自荐,将其硬件做了一个规格,如下表1所示:                                                                                 表1 Infotainment 和Business Tablet硬件规格 规格补充说明: - 商务tablet面向高端用户,它具有信息娱乐tablet的特性,并将商业需求加入其中。 - 无论是信息娱乐tablet还是商务tablet,它都需要具有Kindle的类似功能,所以它具有交大屏幕(>=7寸),有较高的分辨率(>=1024 ...

继续 ›

分类: Blog Challenge, 可管理性, 图形和视觉计算, 英特尔® 软件网络 2.0

MeeGo, 客户在哪里?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 27, 2010 在 4:36 下午
评论 (6)

笔者在以前的四篇文章中对MeeGo的发展进行了一些思考,本篇博客主要讨论MeeGo的Tablet客户在哪里? 从诺基亚高层人事变动 看MeeGo前景 MeeGo, 机会来了! MeeGo成败 一念之差 建立Intel AppUp Center之思考 MeeGo是一个完整的嵌入式操作系统,支持Tablet,smartphone,IVI等众多的嵌入式设备,那么谁会使用MeeGo来开发产品呢?笔者通过对现有tablet市场的分析,绘制了潜在使用MeeGo的Tablet开发厂商。                                                                 图1: MeeGo潜在的Tablet客户 从图1中不难发现缺少HP,SONY等大客户,主要原因是HP在Tablet上使用Window Phone 7 和收购Palm得来的Webos。从商业角度来看,很难推动它使用MeeGo。此外,SONY现在对是否开发Tablet处于不确定状态,从现有市场上来看,它还没有计划将在2011年左右推出自己的Tablet产品,所以也没有将其放入客户列表中。 本篇仅仅是考虑了Tablet的客户群,笔者将会在后继的文章中继续讨论MeeGo的Smartphone、IVI等的客户群,请留意后续。

继续 ›

分类: Blog Challenge, 可管理性, 图形和视觉计算, 英特尔® 软件网络 2.0

从诺基亚高层人事变动 看MeeGo前景

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 24, 2010 在 7:29 下午
评论 (37)

正如MeeGo,机会来了!一文中所说,MeeGo是在改变中求得生存。这种改变不仅仅涉及到自身的自我提高,而且也涉及到竞争对手的改变。诺基亚是MeeGo阵营中的重要一员,它最近的高层人事变动,会给MeeGo的发展带来新变化吗?如果有新变化,那么它们是什么?本篇博客将仅仅从笔者自身理解的角度出发,来探讨那些可能变化。 诺基亚原CEO康培凯的离职仅仅是诺基亚重组计划的前奏,智能手机主管范约奇,董事长奥利拉也将会稍后离开诺基亚。新任CEO埃洛普的上任以及原高层的离职等因素,一定会对原有公司战略产生冲击,那么这种冲击会在哪里呢? 2010年上半年,诺基亚,三星和LG的手机出货量是4亿部,而苹果仅仅是1700万部。从出货数量上看,前三家公司占有绝对优势,近苹果的24倍,然而它们所获取的利润却是惊人的相反,苹果攫取了行业的39%的利润,而前三家仅仅是32%的利润。从这些数字来看,诺基亚相比于苹果就像是卖白菜。虽然每天有超过100万台的销售,但是利润率很低。在诺基亚和苹果的较量中,首先是输在商业模式(苹果创造了新的一套商业模式);而后是输在手机操作系统。商业模式是可以通过快速模仿或者跟随来减少差距的,那么手机操作系统如何解决呢?个人认为,诺基亚现在有上中下三策,如何使用,取决于埃洛普管理层的运筹能力。 上策:自力更生,丰衣足食。 我想很多消费者都希望诺基亚能够采用这个策略,毕竟它有着优秀的硬件,和曾几何时的大红大紫的Symbian系统。Symbian系统虽然在智能手机操作系统方面已经有些落伍,但是具有如此众多的用户群体是它的优势,那么在这种情况下,诺基亚有两种方式去做改变。 1) 快速、保质、保量的推出Symbian3。它已经延期了一段时间,这个对市场的耐心绝对是挑战,如果在无法按期推出,即使它再有很多亮点,也会被Android和IOS淹没。 2) 推广MeeGo系统。它是整合maemo和moblin的智能操作系统,能够完全兼容现有的Symbian软件,是一个理想的操作系统。对于诺基亚来说,如何尽快推出相关版本的手机,将是至关重要的。 中策:重新定位,放弃系统。 如果诺基亚无法采用上策,那么它也是保持市场占用率的一个策略。因为诺基亚拥有出色的硬件,可以考虑放弃软件系统,采用其他操作系统来抗衡竞争对手,回顾四方,它可能有这么两种主要选择。 1) 采用Android系统。既然Android系统如此大放异彩,那么凭借诺基亚的优秀的硬件系统和设计,完全可以在此集团中脱颖而出。 2) 采用Windows phone7系统。新任的CEO埃洛普原出微软,可以凭借他和微软的关系,在windows phone7上获取一个好的价格;此外,微软也急于找到好的手机制造商,来对付IOS和Android的产生的市场压力。如果诺基亚能够采用它,那么占有第三大手机操作系统的宝座是轻而易举的。 无论诺基亚采用何种选择,对于它的前景来说都很暗淡。采用Android系统就是饮鸩止渴,在MeeGo,机会来了!一文中已经清楚的说明了,谷歌日后的策略是限制差异化,扩大用户数,价值化其服务。这对于诺基亚来说,就要和摩托罗拉、HTC等打价格战,这个是它不能接受的。虽然Windows phone 7没有这种限制,诺基亚可以在上面做出差异化产品来,但是在手机领域,得平台者得天下,日后它必定会被操作系统提供商牵着鼻子走,未来也是不光明的。 下策:自甘堕落,寻求收购。 这个策略估计对于高傲的诺基亚来说和耻辱是一个意思,所以个人感觉不会出现。如果一定要以这个策略收场,那么和RIM合并可能是一条相对好的出路。 中策和下策对MeeGo而言是具有打击性的,但是从现有的消息来看,采用上策的可能性比较大。因为最近诺基亚雇佣前palm的高管 彼得•斯基尔曼(Peter Skillman)来担任MeeGo用户体验与服务部门主管,可见它对MeeGo的重视程度。此外,因为新任CEO埃洛普原出微软,对windows phone 7十分熟悉,可能会在短期使用windows phone ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

MeeGo, 机会来了!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 21, 2010 在 1:46 下午
评论 (25)

在MeeGo成败 一念之差和建立Intel AppUp Center之思考中,讨论了MeeGo成败的一些主客观因数。本篇文章主要讨论它的强劲对手Android系统的最新动态,来分析一下MeeGo的机会在哪里? Android系统从娃娃坠地的1.0到即将面世的3.0,一直受到媒体和手机终端厂商的追捧。它的免费和个性化的策略随着Android系统全球的风靡正在发生着一些变化。从Android3.0起,应用程序编程接口将会被关闭,并将统一Android的界面。这意味着Android的手机制造商将很难做出差别化产品,在很少甚至无差别化的产品中,价格因数就会变成主动力。对于这样的变化,应该是在情理之中的。Android现在羽翼渐丰,谷歌现在在逐步调整它的运营策略。因为对于以前的Android系统,无论它卖的多好,谷歌不会带来直接的经济利益。 现在实施Android3.0的策略原因何在呢? - 扩大Android用户群。Android系统的智能手机还在一个较高的价位,对于流行的HTC, 摩托罗拉等品牌,其主流配置都在2000元以上,偶尔有一两款过期的低端配置,但都在1500元以上,这个对于扩大Android用户群是不利的。因为它很难让更多低收入的人群加入谷歌阵营。谷歌希望通过Android3.0中的限制,对Android手机进行一次大范围的价格大战,通过市场使其价格控制在1000元左右或者更低。最近华为的IDEOS(100~200美元)等低端Android手机,谷歌是非常欢迎的,但是量还远远不够。从长远来看,Android手机集体掉价应该是趋势。 - 为谷歌增值服务做好铺垫。谷歌的email系统,搜索系统,social系统,甚至是云等都是其得以赚钱的法宝,这里最为关键的是用户数。从谷歌的战略来看,扩大Android用户群仅仅是其一小步,但是非常重要,否则很难将它的服务规模化出去。它有些类似于Facebook、Twitter在成长期的情况:开始的时候可以不赚钱,主要是积攒用户数。用户到达一定规模后,很多收费服务、各种广告业务就可以顺利推出,谷歌现在的思路也是如此。 竞争对手Android的当前变化,是否有利于MeeGo的市场开拓呢? 笔者认为,MeeGo的机会来了!原因如下: - 将来智能手机的四个基本特征的市场导向。         * 友好的人机界面(UI)         * 开放的应用程序接口支持(API)         * ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

快速入门Media SDK的DShow解码器(二)

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 19, 2010 在 5:40 下午
评论 (0)

Media SDK提供了Sample DShow Filters,它对于用户在利用Media SDK APIs开发DShow Filters是具有积极意义的。本篇博客将在此基础上讨论如何改进Sample DShow Filters,使其能够支持输出除NV12格式以外的其他格式。 Media SDK支持MPEG2, ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

快速入门Media SDK的DShow解码器(一)

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 6, 2010 在 3:50 下午
评论 (9)

Media SDK支持H.264, VC-1和MPEG2的解码。它不仅提供了完整的APIs,还在它的samples\sample_plugins\dshow目录中存放了如何实现DShow 解码器的参考代码。本篇博客主要讨论在此目录下的解码部分,通过对其目录结构和静态类框图的介绍,初步理解它的实现细节。 Media SDK的参考代码包含H.264,VC-1和MPEG2的解码器,它主要被存放于如下几个目录。 1)h264_dec_filter,此目录中存放H.264解码器的源代码。 2)vc1_dec_filter,此目录存放VC-1解码器的源代码 3)mpeg2_dec_filter,此目录存放MPEG2解码器的源代码 除了这三个重要目录外,还有三个关联目录。 1)video_dec_filter,此目录中存放着为解码H.264, VC-1和MPEG2所需要的基本解码源代码。为上述三种解码提供了独立的公用部分。 2)common,此目录中存放着为解码所需的内存分配器,帧构造器等元件。 3)utls,此目录存放着为简化DShow Filter实现的工具类。 对于解码H.264、VC-1和MPEG2,Media SDK使用了三个不同的类来进行处理: 1)CH264DecVideoFilter 2)CVC1DecVideoFilter 3)CMPEG2DecVideoFilter 它们之间的关系,如图1所示: 图1 H.264、VC-1和MPEG2的静态类关系图 从图1可以看出,CH264DecVideoFilter(H.264解码类)、CVC1DecVideoFilter(VC-1解码类)和CMPEG2DecVideoFilter(MPEG2解码类)都从CDecVideoFilter继承而来。对于一般的DShow Filter之间的链接,HRESULT ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK解码器中的SPS和PPS

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 九月 3, 2010 在 4:50 下午
评论 (2)

在Media SDK H.264解码器的子类型中,笔者讲述了AVC,H.264,X264之间的有无开始码的差别。因为这种差别的存在,会导致Splitter和Decoder之间互联和解码的失败。本篇博客在此基础上着重讨论SPS和PPS,它的存在也将会导致解码器的失败。 对于H.264的NAL结构,一般是如图1格式: 图1 NAL 结构图 Media SDK的Decoder是按照H.264标准的NAL结构来解析数据的。如果Splitter过来的数据没有相关的Start Code,那么为了使Sample H.264 DShower filter工作,必须在对应的数据前面插入Start ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK的双路硬件解码功能

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 29, 2010 在 12:44 上午
评论 (4)

随着Media SDK功能的逐步完善和加强,许多视频播放器开始使用Media SDK的硬件解码加速功能,以便提高用户体验。在某些特殊应用中,需要播放器提供PIP功能,那么双路硬件解码加速功能被应用所关注。本篇博客将着重讨论Media SDK与双路硬件解码的关系,通过理解这种关系,懂得Media SDK的双路硬件解码的内在机制。 在一般的理解范畴,双路硬件解码加速需要硬件支持独立的两路硬件解码能力,那么在Intel的现有平台中,哪些集成显卡拥有这些能力呢?表1详细列举了主要的集成显卡的硬件解码能力。 表1 Intel集成显卡的双路硬件解码 从表1可以容易看出,如果Media SDK运行于i3/i5/i7平台,那么硬件提供了双路硬件解码功能,所以Media SDK完全支持两路硬件解码能力,硬件通道可以类似于如下所示: 第一路:Input Bitstream1 -> ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK的认识误区

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 28, 2010 在 11:27 下午
评论 (1)

Media SDK是Intel提供的一个建立在IGFX硬件基础之上的多媒体开发包,它对于快速开发多媒体软件提供的强大的支持。本篇博客将着重讨论它与Codec和IGFX之间的关系,这对于理解Media SDK的应用范围和硬件加速条件有着重要参考价值。 在应用使用Media SDK之前,它们经常有一个认识的误区,那就是它能够编解码所有的流行的视频格式,然而Media SDK其实仅仅支持3中主流的编解码格式,表1展示了它的具体能力。 表1 Intel Media SDK支持的Codecs参考表 Media SDK仅仅支持3中主流格式,即 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK H.264解码器的子类型

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 27, 2010 在 4:01 下午
评论 (0)

理解Media SDK解码器的头信息分析了视频数据的头信息,指出了为什么第三方的Splitters在链接Media SDK的Decoders会出现解码错误。本篇博客将主要讲述Media SDK中主要的H.264解码器所对应的格式及其头信息的区别。 视频数据的格式一般用FOURCC来标示。正如它的名字所示,它由4个字符标示。对于H.264而言,一般有: ‘AVC1’ ‘avc1’ ‘H264’ ‘h264’ ‘X264’ ‘x264’ Media SDK的Decoder是按照‘H264’的格式进行解析的。‘H264’带有开始码(start code:0x00000001),相比与‘H264’,其它区别主要如下: ‘AVC1’:没有开始码,其它与’AVC1‘一致 ‘avc1’:除FOURCC值不一样外,其它与’AVC1‘一致 ‘h264’:除FOURCC值不一样外,其它与’H264‘一致 ‘X264’:除FOURCC值不一样外,其它与’H264‘一致 ‘x264’:除FOURCC值不一样外,其它与’H264‘一致 如果要支持上述格式,那么对于AVC只要添加开始码就可以了,其它格式应该和H264兼容。 具体的方法可以参考理解Media SDK解码器的头信息中的方法1和方法2。 【小结】 - H.264的subtype一般有如下定义:MEDIASUBTYPE_AVC1,MEDIASUBTYPE_avc1, MEDIASUBTYPE_h264,MEDIASUBTYPE_H264,MEDIASUBTYPE_X264,MEDIASUBTYPE_x264。 - H.264的 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

理解Media SDK解码器的头信息

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 27, 2010 在 2:04 下午
评论 (0)

在轻松运行Media SDK的DShow Filters和巧接Media SDK的DShow Filter中,笔者讨论了如何解决Media SDK的DShow Filters的运行环境问题和链接问题,本篇博客将着重讨论Decoder的头信息。 Splitters和Decoders之间一旦链接,那么就可以开始解码,那么为什么第三方的Spliiters提供的数据在解码的时候会出现这样或那样的错误呢? 原因是Media SDK的Decoders对Splitters传送过来的数据的头部信息是有一定要求的,否则解码会失败。当出现这种错误的时候,MFX_ERR_MORE_DATA的错误值将会被返回。如果应用遇到这种情况,那么请检查是否数据信息头有问题。下面笔者将通过一段具体的数据,分析其中的奥秘,对于其他的Splitters,应用可以据此举一反三。 数据块1是一个Splitter发生错误的时候的信息头,如下: 数据块1 0x00,0x29,0xac,0x7b,0x01,0xe0,0x08,0x9f,0x97,0x01,0xc8,0x00,0x00,0x9c,0x68,0x00, 0x1d,0x4c,0x07,0x03,0x00,0x00,0x10,0xb0,0x76,0x00,0x00,0xe4,0xe1,0xd0,0x31,0xb1, 0x81,0x80,0x00,0x08,0x51,0x07,0x00,0x00,0x72,0x70,0xe8,0x18,0xd8,0x72,0xc2,0x21, 0x14,0x58,0x00, 如果使用Media SDK的自带Splitter,那么它的头部信息如下数据块2: 数据块2 0x00,0x00,0x01,0x27,0x64,0x00,0x29,0xac,0x7b,0x01,0xe0,0x08,0x9f,0x97,0x01,0xc8, 0x00,0x00,0x9c,0x68,0x00,0x1d,0x4c,0x07,0x03,0x00,0x00,0x10,0xb0,0x76,0x00,0x00, 0xe4,0xe1,0xd0,0x31,0xb1,0x81,0x80,0x00,0x08,0x51,0x07,0x00,0x00,0x72,0x70,0xe8, 0x18,0xd8,0x72,0xc2,0x21,0x14,0x58,0x00, 对比数据块1和数据块2,不难发现在数据块2的前面五个字节是多出来的,即0x00,0x00,0x01,0x27,0x64,。 如果对照spec,可以清楚的看到它包含的同步字节等附加信息。Media SDK的Decoder会根据这种格式对其数据进行解析和解码。当缺少这段数据的时候,解码器如果仍然按照这种逻辑进行,那么一连串的错误就必将发生。 问题已经找到,那么如何才能够解决它呢? 方法1)如果有Splitter源代码,修改它的源代码,将这部分信息添加入数据。 方法2)如果没有Splitter的源代码,那么就必须在Decoder的源代码中添加这部分信息,然后再传送给相关的解码函数。 【小结】 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MeeGo成败 一念之差

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 25, 2010 在 3:19 下午
评论 (34)

在建立Intel AppUp Center之思考一文中,笔者和网友对Online Store进行了热烈的讨论,很多网友提出了一些有深度和广度的见解,笔者受益匪浅!在讨论中,网友们对MeeGo也非常感兴趣,甚至对其与Android和IOS4系统进行详细比较。本篇博客将从另外一个角度观察MeeGo,提出了一些个人的观点和看法,以供网友分享! MeeGo是一个嵌入式操作系统,它将广泛运用于平板电脑、智能手机、IVI设备等嵌入式硬件平台。从现在的发展趋势看,它是一个从高往低的发展方向,即先平板电脑-》智能手机-》IVI设备。如果从PC角度看,这种发展方向是先做与PC相关程度高的嵌入式设备,再逐渐进化,覆盖整个嵌入式领域。相比较于其他的传统嵌入式厂商,它们有着相反的发展曲线,类似于IVI设备-》智能手机-》平板电脑,从原来纯嵌入式端逐渐向PC靠拢。 从技术上看,这仅仅是两种不同的发展策略,没有本质的区别。不同的厂商会根据自身的特点和长处,选择一个对自己更加有利的道路。 笔者经常听到有朋友抱怨Netbook性能如何如何差:速度慢,性能低 ...,但是对ipad大加赞赏。如果将它们的硬件配置列表成列于左右,我们能够看到什么呢?笔者做过一个系统的调查,发现Netbook往往在硬件配置上还略胜于平板电脑,但是为什么得到的结果却是南辕北辙呢? 笔者认为,最大的原因是参照物发生了变化! 上网本从出生开始就决定了它的命运。它的参考物是相对于更加沉重的笔记本,无论是从外观还是用户操作,都是笔记本的简化形势出现。在和传统的电脑平台比较时,它的低性能特点暴露无遗了!用户在使用的时候,自然和非自然的将它与笔记本甚至是台式机比较,那么受到那么多非议也是正常不过的。 平板电脑是从哪里衍生出来的呢? 不错,是智能手机。当参考物变成智能手机的时候,平板电脑的优势就大多了。屏幕大 、性能高等长处无疑给平板电脑得到了众多的掌声。 用户体验往往是非常主观的,用户习惯、用户某些思维定势往往会决定着PK的结果。鉴于这个结果,那么MeeGo在进化过程中应该注意什么呢? - 注意用户体验。MeeGo走的是从PC向嵌入式发展的道路,那么它或多或少的继承了传统电脑的操作习惯。这种习惯和移动便携的手持设备有很大的区别,在实际应用中是出于劣势地位,那么如何设计出良好的用户体验是进化的关键。 - 注意用户使用心里差别。在介绍MeeGo的时候,要着重强调MeeGo是为嵌入式系统量身定制的,而非是全能操作系统。嵌入式客户往往会认为,全能的东西用户体验一定不好,在嵌入式领域越专越好。一旦用户对MeeGo定位出现了理解上的偏差,那么相关产品的命运就是Netbook的翻版。 - 注意用户信息收集习惯的变化。从使用传统的PC进行信息收集,到使用便携设备(比如手机等)进行信息的获取,这是整个行业发展的趋势,并且这种趋势在近几年发生了巨大的加速。MeeGo进化的时候一定要考虑到如何提供相关的features,使应用在MeeGo平台如鱼得水。 - ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

巧接Media SDK的DShow Filter

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 24, 2010 在 1:27 下午
评论 (0)

在轻松运行Media SDK的DShow Filters中,笔者讨论了如何解决GraphicEdit的环境问题。本篇将着重讨论Media SDK的Decoder和其他Splitter的链接问题。 Media SDK提供了MPEG2, VC-1, H.264 Decoder的DShow Filters,它们能够和Media SDK提供的Spiltter很好的互联。随着视频格式的不断丰富,Media ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

轻松运行Media SDK的DShow Filters

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 23, 2010 在 5:24 下午
评论 (0)

Media SDK不仅提供了强大的Media SDK API,还提供了丰富的DShow Filters,它们支持MPEG2, VC1和H.264。本篇博客将讨论在如何使用GraphicEdit运行DShow Filter的问题。 在Windows 7环境下,使用GraphicEdit来验证DShow Filter的编解码问题是一种常用的方法,但是它在某些特殊版本的Windows下,可能会遇到视频文件无法识别的问题,如图1所示: 图1 视频文件构建错误 从图1可知,GraphicEdit构建视频图失败,那么如何才能解决这个问题呢? 1)选择Graph菜单下的Insert ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK2.0 Beta揭秘 之 计算Video Surface篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 16, 2010 在 3:34 下午
评论 (0)

在Media SDK2.0 Beta揭秘 之 AsyncDepth篇中,笔者讲述了AsyncDepth的特别用处,也提及应该在分配Video Surface的时候考虑AsyncDepth的影响。本篇文章将具体讨论如何在实际应用中动态的计算Video Surface的最佳帧数。 图1是一种最为常见的Media SDK应用场景,它包含三个部分:解码器 -> VPP模块 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK2.0 Beta揭秘 之 FrameType篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 13, 2010 在 3:19 下午
评论 (0)

Media SDK2.0 Beta版本在原有Alpha版本上对Frametype进行了扩充,支持不同场类型的。本篇博客将着重讨论,有哪些场类型被添加入新的API 1.1版本。 Media SDK2.0 Alpha对场的类型定义如下: /* FrameType */ enum { ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK2.0 Beta揭秘 之 AsyncDepth篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 13, 2010 在 11:14 上午
评论 (0)

Media SDK2.0 Beta版本是API 1.1版本的一个延续,本片博客主要讨论它的一个新feature,即AsyncDepth。它是mfxVideoParam结构中的一个新的成员变量。 mfxVideoParam的定义如下所示: typedef struct _mfxVideoParam { mfxU32 reserved[3]; mfxU16 reserved3; mfxU16 AsyncDepth; union ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK2.0 Beta发布啦!

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 13, 2010 在 10:43 上午
评论 (0)

Media SDK2.0 Beta发布了,请使用Media SDK的开发者到 http://software.intel.com/en-us/articles/media/ 下载它。 Media SDK2.0 Beta版本支持API 1.1版本,它兼容于API 1.0 版本。API 1.1版本支持多个session的链接使用,并且通过API扩展,定义了USER ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(九)从RGB24到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 9, 2010 在 2:23 下午
评论 (5)

RGB和YUV之间转化是视频格式之间的常见转化,对于英特尔IGFX而言,它要求视频格式为NV12格式,这也就多了一层如何从YUV(4:4:4)转化为NV12格式的步骤。在MSDK格式转化篇(八)从IYU2到NV12中,我们讲述了如何将YUV(4:4:4)格式转化为NV12的,那么本篇将以此为基础,讲述如何将RGB格式转化为NV12的。 将RGB转化为YUV的公式,如公式1所示: Y = 0.299R + 0.587G + 0.114B U = -0.147R ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(八)从IYU2到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 6, 2010 在 5:07 下午
评论 (0)

IYU2是常用的YUV格式,它是一种4:4:4的24bit YUV格式,常用于IEEE 1394数字照相机接口。本篇文章将讲述如何从IYU2转化为NV12格式,它对以后的RGB格式转化为NV12格式是有铺垫作用的。 IYU2的格式比较简单,存放格式以此是U0Y0V0 U1Y1V1 ...,如图1所示                                                                                图1 IYU2格式 NV12格式如图2所示:                                                                                图2 NV12格式 从IYU2到NV12的转换算法如下: NV12->Y[ n ] ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(七)从IMC4到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 4, 2010 在 5:13 下午
评论 (0)

MSDK格式转化篇(四)从IMC1到NV12 MSDK格式转化篇(五)从IMC2到NV12 MSDK格式转化篇(六)从IMC3到NV12 文章讲述了将IMC1、IMC2、IMC3转化为NV12格式,本篇博客将会讲述如何将IMC4转为NV12格式。 IMC4是一种常用的视频格式,它的格式如图1所示:                                                                                图1 IMC4格式 NV12格式如图2所示:                                                                                图2 NV12格式 IMC4类似于IMC2,它将IMC2的UV相互换后所得,转化为NV12的方法也类似,如下: 1. 拷贝Y数据 memcpy( NV12->Y, IMC4->Y, Height * Stride ); 2. ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(六)从IMC3到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 3, 2010 在 3:48 下午
评论 (0)

MSDK格式转化篇(四)从IMC1到NV12 MSDK格式转化篇(五)从IMC2到NV12 文章讲述了将IMC1和IMC2转化为NV12格式,本篇博客将会讲述如何将IMC3转为NV12格式。 这个格式是非常有意思的格式,在讲解之前,让我们先看看这个格式如何,如图1所示。                                                                                图1 IMC3格式 IMC3有几个特点: 1)UV的stride必须和Y的stride一致,图1已经很好的表示这种意思。 2)UV的高度和宽度必须是16的倍数,这个就决定了W1,H1是需要更具Y的H计算出来的。 NV12格式如图2所示:                                                                                图2 NV12格式 程序伪代码实现IMC3转成NV12 1. 拷贝Y数据 memcpy( NV12->Y, IMC3->Y, Height * Stride ); 2. ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(五)从IMC2到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 八月 2, 2010 在 5:05 下午
评论 (0)

IMC2是另外一种视频的流行格式,它相识于IMC1。本篇博客主要讨论如何它的格式如何,以及如何转成为NV12格式。 IMC2的格式如图1所示。                                                                                图1 IMC2格式 参考图2所示:                                                                                图2 IMC1格式 IMC1和IMC2的主要不同点是: - IMC1的UV是按照Y的Stride对齐的,但是IMC2的UV是按照Y的Stride/2对齐的。 - IMC2的格式更加的紧密,对于空间利用率比较高。 NV12格式如图3所示:                                                                                图3 NV12格式 对于IMC2转化为NV12,方法也比较简单,如下: 1. 拷贝Y数据 memcpy( NV12->Y, IMC2->Y, Height ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(四)从IMC1到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 30, 2010 在 4:40 下午
评论 (0)

MSDK格式转化篇(一)从YV12到NV12 MSDK格式转化篇(二)从YUY2到NV12 MSDK格式转化篇(三)从YVYU到NV12 文章讲述了将YV12,YUY2和YVYU转化为NV12格式,本篇博客将会讲述如何将IMC1转为NV12格式。 这个格式是非常有意思的格式,在讲解之前,让我们先看看这个格式如何,如图1所示。                                                                                图1 IMC1格式 IMC1有几个特点: 1)UV的stride必须和Y的stride一致,图1已经很好的表示这种意思。 2)UV的高度和宽度必须是16的倍数,这个就决定了W1,H1是需要更具Y的H计算出来的。 NV12格式如图2所示:                                                                                图2 NV12格式 程序伪代码实现IMC1转成NV12 1. 拷贝Y数据 memcpy( NV12->Y, IMC1->Y, Height * Stride ); 2. ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

建立Intel AppUp Center之思考

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 28, 2010 在 5:40 下午
评论 (105)

从iphone,ipad的成功,我们看到了一种使用模式的成功:硬件需要软件提升它的价值。试想,如果没有丰富的软件,ios和android的移动设备能够取得当前的成绩吗? 显然不能!顺应这种成功模式,建立Intel AppUp Center也是必然之事。 Apple和google的online store已经走在竞争对手的前面,它们不仅提供用户友好的客户端使用工具,而且也存储着丰富的应用程序,提供用户下载。作为跟随者的Intel AppUp Center,如何能够在短时间减少应用短缺的不利状态,甚至在长远规划中有赶超的机会呢? 笔者认为,充实Intel AppUp Center的应用,首先要知道用户习惯在哪里?哪些应用是用户在日常生活中使用频率最为普遍的? 为此,笔者研究了2010年上半年的在iphone、google、Symbian、RIM、palm和windows mobile平台上流行的Top10的软件,发现如下排名: 1)社交网站和微薄客户端,比如Facebook、Twitter等。 2)网络视频,包含网络TV、网络电台等。 3)新闻、电子书和RSS阅读器。 4)地图、天气和在线预订软件。 5)休闲类游戏软件。 6)浏览器和搜索引擎插件。 特别是前3项,占有很大的比重。笔者认为,建立Intel ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(三)从YVYU到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 28, 2010 在 4:24 下午
评论 (1)

在MSDK格式转化篇(二)从YUY2到NV12中,作者已经讲述了YUY2的格式,以及如何将其转化为NV12的方法。在本篇文章中,将会介绍另外一种常用格式YVYU,及其如何将其转化为NV12格式。 首先认识一下YVYU的基本格式是如何? YVYU的基本格式是 Y0V0Y1U0      Y2V1Y3U1      Y4V2Y5U2 ...,如图1所示:                                                                                图1 YVYU格式 请注意,图1是按照数据的YUV的格式标注,它不同于采样格式。YVYU的采样格式如下: Y0V0Y1U0      Y2V2Y3U2 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(二)从YUY2到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 27, 2010 在 11:10 上午
评论 (5)

在 MSDK格式转化篇(一)从YV12到NV12中,作者已经讲述了YV12的格式,以及如何将其转化为NV12的方法。在本篇文章中,将会介绍另外一种常用格式YUY2,及其如何将其转化为NV12格式。 首先认识一下YUY2的基本格式是如何? YUY2的基本格式是 Y0U0Y1V0      Y2U1Y3V1      Y4U2Y5V2 ...,如图1所示:                                                                                图1 YUY2格式 请注意,图1是按照数据的YUV的格式标注,它不同于采样格式。YUY2的采样格式如下: Y0U0Y1V0      Y2U2Y3V2 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

MSDK格式转化篇(一)从YV12到NV12

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 26, 2010 在 3:25 下午
评论 (13)

Media SDK的decoder,vpp,encoder对输入输出格式有着严格的限制,现在仅仅支持NV12。那么如何从其他格式转化为NV12是日常工作中经常遇到的事情。本篇文章以此为目的,讨论如何将YV12格式转化为NV12格式。 YV12格式是常用的CODEC格式,它的格式如图1所示。                                                     图1 YV12格式 图1中: W表示图像的宽度,即Width的缩写。 H表示图像的高度,即Height的缩写 Stride表示图像行的跨度,超出Width部分为填充数据,主要目的是为了字节对齐,一般以16字节或者32字节对齐居多。 NV12是英特尔定义的视频格式,它在英特尔硬件平台上是原生态支持,它的格式如图2所示。                                                     图2 NV12格式 从图1,图2可以看出,YV12和NV12基本上相似: - Y有相同的格式 - U和V不同。YV12将VU分开存储,而NV12将其交叉存储。 程序伪代码实现YV12转成NV12 1. 拷贝Y数据 memcpy( NV12->Y, YV12->Y, Height ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK硬件编解码器共享之说

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 9, 2010 在 10:31 上午
评论 (7)

Media SDK通过硬件加速提高视频的编解码能力,一方面提高了用户观看影片的效果;另一方面因为降低了CPU的利用率,也同时提高了电池的续航能力。本篇文章主要以一个或多个硬件编解码器的常见用户问题进行展开,讨论如何充分使用硬件资源。 英特尔的IGFX可以支持一路或多路的硬件编解码器,比如硬件解码器,图1所示: 图1 硬件解码加速 假设现在有两路解码请求,当前的平台仅仅支持一路硬件解码,那么应用如何处理呢? 恩 ... ,在片刻思考后,应用做出了看似聪明的决定! 一路用硬件加速解码,一路用软件解码。 看上去很合理,难道真的是唯一的选择吗?! Media SDK提供了硬件共享机制,简单的说,一路编解码加速硬件可以被多个session共享(对于session的介绍,请参考:提高Media SDK效率之初始化设置篇)。 在这种机制下,应用完全可以使用两路硬件解码的方式处理不同的解码请求。这太棒了!难道不是吗?! 那么具体如何做呢? 很简单,创建两个硬件的session,然后按照正常的硬件解码流程进行处理。不要关心硬件资源如何共享的问题,因为Media SDK已经帮应用打点好所有东西,它只要轻松享受就OK了:-)。 是不是觉得很神奇,还不快点去试试:-)! 【小结】 - 资源共享是一个好事情,那么在一个编解码硬件被多个session共享的时候有什么副作用呢?在看标清源时候,应用应该不会有太多的性能丢失,但是如果是高清源,应用可能会感觉到比单路稍慢一些。 - 本文讨论中仅仅列举了解码器,对以编码器的操作也是这种模式。简单的说,就是一个硬件解码器,可以被多个session共享,以提高应用效能。

继续 ›

分类: Blog Challenge, 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK 用户实例模块执行图解

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 七月 5, 2010 在 12:23 下午
评论 (0)

Media SDK对USER模块提供了并行处理的能力,在多核基础上,能够高效的处理用户定义的多个任务,本篇文章以此为基础,通过实例讲解,讨论了Media SDK是如何调度和处理多任务的。 在 让我们一起动起来 之 Media SDK用户定制功能入门篇 让我们一起动起来 之 Media SDK用户定制功能注册篇 让我们一起动起来 之 ...

继续 ›

分类: Blog Challenge, 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK Filter使用状态快速检查方法

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 25, 2010 在 2:24 下午
评论 (9)

Media SDK不仅提供了功能强劲的APIs,还提供了相关的splitter,decoder,encoder和mux的标准DShow Filters,请参考丰富的Media SDK DShow Filters。在使用这些Media SDK提供的Filters的时候,如何才能获知它们是否已经被应用使用了呢?本篇文章以此为基础,介绍了一个简单实用的检查方法。 为了便于对工具的理解,我们以一个具体的实例为出发点进行讲解。 Graphics editor应该是一款非常常用的DShow Filter使用工具,图1展示了它的一个简单应用:播放一个MPG格式的视频文件。 图1 Graphics ...

继续 ›

分类: 图形和视觉计算, 英特尔® 软件网络 2.0

巧用JoinSession提高应用效率

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 17, 2010 在 5:30 下午
评论 (3)

浅析Media SDK新功能JoinSession简单论述了JoinSession的应用场合和如何使用,但未对其一些特殊场合的优化作用进行深入的讨论。本篇以某个特殊情况为基础,讨论如何使用JoinSession机制提高应用程序的执行效率。 为了便于理解,讨论还是以实例为基础进行展开。 图1 两路视频编码 图1所示,有两路视频的编解码。程序将其分成两个session。 session1 以decoder1->User->Encoder1 session2 以decoder2->User->Encoder2 对于具体使用,假设Encoder1和Encoder2是没有区别的,分离的做法仅仅是为了使读者更加容易理解。据此实例,用户模块和encoder是可以重复利用的,那么我们如何使用joining session来提高它的效率呢? 图2 双路视频连接图 图2 显示了如何利用JoinSession来实现的参考图,对于硬件编解码而言,它的运行效率提高不多,但是对于软件编解码,它的执行效率有10%的提高。主要原因是Media SDK的调度器能够做更好的workload的线程间平衡,并且充分利用现有资源进行分配,大大提高了执行的效率。 【小结】 - JoinSession在普通的使用模式下是相对复杂的应用,但是在某些特殊应用环境。它不仅能够优化性能,而且也能够简化数据流程模型。 - ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

浅析Media SDK新功能JoinSession

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 17, 2010 在 1:52 下午
评论 (0)

随着Media SDK功能的逐渐加入,Session的应用范围越来越广。以前的简单Session功能已经无法满足新需求的出现,本篇文章主要以此为基础,讨论在新版Session中新功能的使用场景及其技术要点。 Media SDK用户定制功能入门篇 Media SDK用户定制功能注册篇 Media SDK用户定制功能提交篇 Media SDK用户定制功能执行篇 对新增的用户功能模块做出了一个比较全面和详细的介绍,并分析了它的使用场景和注意点。不难发现,如果使用新增的用户模块,我们很难用同一个session来完成所有模块的链接工作。 图1 Join Session应用场景 从图1可以看出,用户功能模块的介入改变了原有Session流程,应用基本上无法用同一个session来完成所以的操作。VPP模块被分为两个部分,前半部分可以是处理类似于改变窗口大小的工作,后半部分可以是去噪声等操作。 那么普通状态下如何分割session呢? 其实这种应用还算比较简单,普通的方法是按照用户模块作为分割线。用户模块前的Decoder和VPP可以看做是session1;后面的vpp和Encoder可以看做是session2的。 那么用户模块属于什么session呢? 这个要看具体的情况,可以是session1的,也可以是session2的,甚至是session3的,关键点主要是考虑如下: 1)是否有利于程序的开发和维护 2)是否有利于效率的提高 从使用角度来看,使用了JoiningSession增加了实现的难度,那么应该也何种使用态度来对待它呢? - JoiningSession是一种特殊情况下的优化,它有其特殊的使用场景。 - 在正常情况下,首先考虑使用非JoiningSession,除非应用有明确的需求。 说了半天,让我们看一看它的API的庐山面目吧:-) mfxStatus ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

让我们一起动起来 之 Media SDK用户定制功能执行篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 11, 2010 在 5:06 下午
评论 (0)

在Media SDK用户定制功能提交篇中,用户任务根据I/O有效性将其提交入Media SDK执行队列。本篇文章主要讨论用户任务是如何在Media SDK中执行的。 Media SDK提供了两个函数来处理用户任务的执行: mfxStatus (*Execute)(mfxHDL pthis, mfxThreadTask task, mfxU32 ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

让我们一起动起来 之 Media SDK用户定制功能提交篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 11, 2010 在 3:58 下午
评论 (0)

在Media SDK用户定制功能入门篇和Media SDK用户定制功能注册篇已经讲述了USER模块的基本概念和注册方法。本篇文章将着重讨论Media SDK是如何检查和提交用户定义的任务,简单的说就是用户定义的回调函数。 对于用户定义的任务,Media SDK使用MFXVideoUSER_ProcessFrameAsync接口函数来触发,具体定义如下: mfxStatus MFXVideoUSER_ProcessFrameAsync(mfxSession session, mfxHDL *in, mfxU32 ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

让我们一起动起来 之 Media SDK用户定制功能注册篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 3, 2010 在 12:07 下午
评论 (11)

在让我们一起动起来 之 Media SDK用户定制功能入门篇中,笔者简单的介绍了User模块的基本使用场景及其编译链接的情况,从整体上描述了它的功能状况。本篇文章将开始逐渐切入具体的编程细节,希望能够给读者起到一定的引领作用。 Media SDK提供注册机制来管理User模块的添加和删除,如下函数所示: mfxStatus MFXVideoUSER_Register(mfxSession session, mfxU32 type, mfxPlugin ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

让我们一起动起来 之 Media SDK用户定制功能入门篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 六月 3, 2010 在 11:21 上午
评论 (0)

Media SDK在不断的创新中,注入了许多新的活力。对于传统的三大件 decoder,vpp和encoder,它们的链接方式比较死板,如图1 基本数据输入输出图 所示。随着用户需求的不断涌现,这种结构限制了搭建良好的功能外延。本篇文章以此为基础,将着重介绍Media SDK中的新成员: 用户定制功能。希望能够使读者对其概念及使用场景有一个初步的理解。                                                 图1 基本数据输入输出图 为了便于理解,文章从两个常用的用户场景说,如图2所示。                                                 图2 常用用户场景 场景一:图2 上图所示, ...

继续 ›

分类: 图形和视觉计算, 英特尔® 软件网络 2.0

实用Media SDK VPP硬件过滤器

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 28, 2010 在 6:01 下午
评论 (2)

Media SDK2.0不仅提供了强大的编解码硬件加速功能,也在VPP模块中提供了丰富的硬件过滤器。 笔者以此为内容,整理出一份Media SDK1.5与Media SDK2.0软硬件过滤器对照表,以便大家查阅。 表1 实用Media SDK VPP硬件过滤器对照表 【小结】 - 提供一个Media SDK实用参考表,便于开发者查找。 - 比较Media ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

使用Media SDK轻松搞定CC数据

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 25, 2010 在 5:15 下午
评论 (4)

Media SDK提供了功能强大的视频编解码APIs,此外还提供了一些其他的功能函数。因为它们处于“弱势”地位,容易被忽略。本文以此为话题,简单讨论如何使用Media SDK获取CC(即,close capation)数据。 CC数据可以包含是ES流中,那么Media SDK如何将其获取呢? 在设计之初,Media SDK已经考虑到这种情况了,它提供了 mfxStatus MFXVideoDECODE_GetPayload(mfxSession session, mfxU64 *ts, mfxPayload ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

请更喜欢Media SDK

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 25, 2010 在 4:27 下午
评论 (3)

Media SDK提供了丰富的API,应用可以根据自己的爱好在此基础上封装出个性化的API。从用户角度看,这个看上去非常的好,因为熟悉的API接口是非常有利于快速编程的。本文主要从这个角度出发,探讨了这种做法可能会带来的副效应。 为了便于理解,讨论将以一个实例展开。有一个视频播放器的应用,主要功能是将硬盘中的视频文件进行解码,然后数据通过视频模块增强处理后再播放出来。因为Media SDK提供了硬件加速功能,应用首先通过分配显存进行硬件解码(请参考 提高Media SDK效率之内存选择篇中关于内存类型选择),然后将解码数据从显存导入到内存,经过视频模块增强处理后再放入显存显示。 这里牵扯到一个问题,如何提高从显存到内存,内存到显存的传送速度。因为应用有编程高手,它可以通过SSE4X的movntXXX来提高传送效率,是的。在高手的两天调试后,速度有质的提高。在应用欣喜如狂的时候,Media SDK不禁要问:哎,为啥不用我而自己重写这部分功能呢? 应用纳闷了,难道我这样做不好吗? 从最终的性能角度看,应用的这种做法也是优化性能的一种方法,但是不是最好的一种,理由如下: 1)内存选择不当。从应用的使用场景来看,内存和显存之间的数据传送不可避免,那么我们在选择内存的时候最好选择系统内存。因为Media SDK已经使用某些在驱动中特殊的技术,提高了数据传送的能力。应用所使用的SSE4X仅仅是其中的一种手段而已。 2)指令优化局限。SSE4X只能局限于一些高端的CPU,对于全面优化数据传送不是最为有利的。正如1)所示,Meida SDK使用了特殊的技术提高数据传送的能力,那么在那些低端的CPU中,这些技术是依然有效的。 3)不利于后继的开发和维护。应用过分复杂,因为数据传送这块会牵扯到大量的汇编代码来优化,不利于维护。此外,汇编指令需要复杂调试,不利于开发效率。 从这个实例可以看出,在实现某些功能的时候,应用应该优先选择Media SDK的已实现功能,而非自己重写。Media SDK能够跟随Intel的硬件的升级而升级,对以日后性能的调优和维护,将是非常有利的。此外,应用将这部分繁琐的工作交予Media ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK的版本信息之识别

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 19, 2010 在 4:45 下午
评论 (4)

Media SDK有提供了复杂的版本信息,有针对Marketing的Release版本,比如说Media SDK1.0,Media SDK1.5,Media SDK2.0等,还有针对开发人员的Media SDK的API的版本,比如说1.0,1.1等。那么如何区分这些复杂的版本信息呢?本文以此为基础,通过不同的版本信息,揭示Media SDK的一些隐藏其中的有价值信息。 Media SDK的版本信息如何构成? Media SDK的信息分成两个部分: 1)主版本信息。 2)次版本信息。 常见的格式是:主版本号.次版本号,比如1.0, 1.1等。 - ...

继续 ›

分类: 图形和视觉计算, 英特尔® 软件网络 2.0

Media SDK程序向前兼容性之实现

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 19, 2010 在 12:18 下午
评论 (2)

Media SDK提供了丰富的视音频接口函数。随着它的版本逐渐更新,新features被不断地加入,性能也随其相应提高。虽然Media SDK提供了很好的向后兼容性,但是新版本所带来的性能提高无法支持以前开发的程序。本篇文章以此为基础,提出了一种向前兼容的方法,对现有程序提供了最大程度的向前兼容性,以便享受后继版本性能提高。 Media SDK是根据版本号来加载不同的动态链接库的,这个版本号也是初始化session时候指定的。Session的函数如下: typedef struct _mfxSession *mfxSession; mfxStatus MFXInit(mfxIMPL impl, mfxVersion ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Media SDK VPP的前处理功能

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 17, 2010 在 5:42 下午
评论 (3)

Media SDK是Intel的多媒体开发库,提供Intel平台的硬件编解码加速和图像处理功能。它主要包含三大模块,解码器(Decoder),图像处理(VPP)和编码器(Encoder),对于解码器和编码器的处理,作者已经在提高Media SDK效率之XXX篇中做出了总体的介绍,这篇文章重点于介绍VPP模块中的功能。 VPP在Media SDK中是重要的图像处理模块,它包含: - Colorspace转化功能。提供了RGB 《-》YUV 《-》 NV常用颜色空间转化的能力。 - ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

巧用Media SDK检查系统硬件加速

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 五月 12, 2010 在 2:10 下午
评论 (11)

Media SDK是Intel强大的视音频软件开发包。它提供了相应的丰富的DShow filters,而且也提供了功能完备的视音频APIs。本文主要将阐述如何巧用这些APIs来实现系统硬件加速功能。 在使用这些API之前,我们必须了解一点基本的知识。对于Media SDK提供的decoder,VPP和encoder模块,在使用必须要先创建一个session。利用这个已建的session,相应的decoder,VPP和encoder才能被创建。如果它们使用同一个pipeline,那么这些session必须是同一个。当然在以后的版本中,将会支持不同session建的元件连接。 对于Session的创建,Media SDK提供了4个函数,定义如下: typedef struct _mfxSession *mfxSession; mfxStatus MFXInit(mfxIMPL impl, ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

提高Media SDK效率之异步优化篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 二月 4, 2010 在 1:05 下午
评论 (6)

    提高Media SDK效率之多线程篇中已经讲述了如何使用多线程提高编解码的效能问题。因为增加了队列(Queue)的创建和维护等附加工作,在多线程情况下程序的复杂性也被加大,那么还有没有其他方面可以采用呢?本文以此为讨论出发点,主要从异步角度出发,讨论如何采用合适的异步方法来提高编解码器的效能问题。 在多线程方案中,我们使用队列(Queue)的同步机制来保证三个模块的协同工作,如图1所示。                                                 图1 模块线程化输入输出图 从图1中,网友不难发现有两个基本的开销点: - 需要3次同步帧(SyncFrame)来完成一次编解码动作。 - 模块间的2个共享Queue都需要做同步操作。 这两个开销点对于多线程效率和竞争是不利的,那么有什么方法可以剔除或减小这种开销呢? 幸运的是Media SDK提供了异步机制,它提供了三个函数支持相应的三个模块: - MFXVideoDECODE_DecodeFrameAsync - MFXVideoVPP_RunFrameVPPAsync - MFXVideoENCODE_EncodeFrameAsync 模块异步工作原理如图2所示。 &                                                 图2 模块异步化输入输出图 相比于多线程模式,它有几个优点: - 只需要一次帧同步,而其他两次的异步操作基本上不耗时间,节省了时间。 - 不需要队列的同步操作,提高了效率。 - 不需要多线程,一个线程搞定三个模块,实现复杂度低。 【小结】 - 异步模式对于硬件编解码比较适合。它的效能高,软件复杂度低。在软件编解码中,它的效能和简单串行模式无太多优势,所以可考虑采用多线程模式来实现。 - 多线程模式和异步模式仅仅是提高效率的两种方法,它们之间没有冲突,应用可以根据自身的需求灵活采用,也可以混合运用,提高效率。

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

提高Media SDK效率之多线程篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 一月 28, 2010 在 4:16 下午
评论 (3)

        提高Media SDK效率之初始化设置篇和提高Media SDK效率之内存选择篇中,笔者已经对Media SDK的两个重要配置部分进行了分析和总结。本节,我们将着重讨论如何使用多线程技术提高视频Converter的效能(一种视频的常用应用)。 在运用Media SDK进行格式转换时,一般要涉及三大模块,他们是Decoder,VPP和Encoder,数据输入输出如图1所示。                                                 图1 基本数据输入输出图 从图1可以看出,每经过一个模块,都要对数据进行同步操作。在此期间,其他两个模块是处于空闲状态,是一个典型的串行处理过程。对于英特尔的多核技术,它的多核利用率是最低的,相应的效率也较差。 那么如何对现有流程进行多线程化呢? 本文提供了一种最简单的方法,即对每个模块线程化。它在实际运用中并非是最佳方案,之所以采用它,仅仅是为了提供一种思路。请参考图2所示。                                                 图2 模块线程化输入输出图 图2将Decoder,VPP和Encoder三个模块分别线程化,在彼此之间以队列(queue)为数据交换。 简单的工作模式如下: - 若队列为空,后级模块等待数据。 - 若队列被填充,前级模块通知后级模块。 - 若无输入数据,前级模块通知后级模块结束工作,后自行了断。 虽然这种线程化的工作增加的程序的复杂性,但是对于赢得的性能而言是值得的。在理想状态下,我们看到三个模块的并行工作,转化时间的长短取决于最为耗时模块。 【小结】 - Media SDK仅仅提供硬件加速能力,线程化工作展开于具体应用。 - 三个模块线程化仅仅是一种简单参考实现,不是最佳方案。如何充分利用英特尔的多核技术,应该建立在具体分析的基础之上。英特尔提供了丰富的性能检测和优化工具,他们能够帮助程序员找出关键问题所在。 - VPP模块是可选的,如果应用没有采用,就将Decoder后的队列直接连接到Encoder之前。

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

提高Media SDK效率之内存选择篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 一月 21, 2010 在 8:52 下午
评论 (6)

Media SDK使用内存缓冲来输入/输出视频数据,内存缓冲的不同种类将会直接影响编解码的效率。内存缓冲可以是一块在系统内存中的连续块(通过malloc或者new来分配),也可以是显卡内存的连续块(通过Microsoft Direct3D9 Surface函数来分配)。那么内存缓冲的种类由谁来决定呢?本篇文章就是以此为基础,讨论在不同情况下程序如何选择内存缓冲种类的问题。 在讨论内存缓冲对编解码影响之前,笔者先讨论下面三种情况下的内存数据传送问题。 - 系统内存间数据如何传送? 对于程序员而言,这个是最为简单的日常编程事项。一般的使用方式是memcpy,在一些数据较大情况下(超过L3的cache尺寸时候,用movntqa等指令)。不管何种方式,都是CPU-BASED的代码,在SIMD下效率很高。 - 显存间数据是如何传送的? 它类似于系统内存之间的数据传送,并且显存的带宽和速率都很高,传送速度更快。 - 显存和系统内存间数据是如何传送的? 通过DMA方式传送内存数据,速度依赖于DMA的带宽和速率(普通DMA的传送速率在33.3MB/s,而Ultra DMA最高也不过100MB/s)。相比与上述两种情况,它的传送速度明显慢。 从上面的三种情况可以看出,程序一定要尽量避免出现系统内存和显存之间的数据传送,那么Media SDK在什么配置下会出现此类尴尬状态呢? 在提高Media SDK效率之初始化设置篇中,程序通过MFX_IMPL_AUTO参数根据当前平台来自动选择硬件或软件编解码,并能通过mfxStatus ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

提高Media SDK效率之初始化设置篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 一月 15, 2010 在 12:48 下午
评论 (9)

Media SDK支持VC1,H264和MPEG2格式在Intel显卡平台的硬件加速,并提供相应的软件编解码实现。提供软件实现的意义在于,即使在非Intel显卡支持的平台上,采用Media SDK实现的应用程序也能够正确的实现编解码功能,唯一的差别仅在于速度问题。在日益强大的Intel CPU下,这种差别也变得越来越小。从Clarkdale和Arrandale的测试结果来看,Media SDK的软件实现比市场上主流的编解码软件仅差~20%,如果使用一定的软件高级开发技巧,那么它可以控制在10%左右。本篇文章以此为基础,讨论如何在初始化时,采用适当的软件配置提高软件的效率和可维护性。 在讨论优化之前,首先要了解一下Media SDK是如何初始化编解码器的。 1. 创建和初始化一个编解码Session。Media SDK提供了mfxStatus MFXInit(mfxIMPL impl, ...

继续 ›

分类: 图形和视觉计算, 并行计算, 英特尔® 软件网络 2.0

Clarkdale和Arrandale之规格

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 一月 10, 2010 在 11:06 下午
评论 (11)

    Clarkdale和Arrandale是集成Intel GMA HD显卡的新一代处理器,它们分别面对桌面和移动CPU市场。在Arrandale,CPU与G45的瑰宝一文中,笔者已经具体介绍了Arrandale的特点和趋势,它同样也适用于Clarkdale,所以在此将不再赘数。此外,鉴于Clarkdale和Arrandale的丰富的CPU型号(对应的具体参数难于识记),有网友希望能够有一个简明的表格可以查询(不必每次借助于CPU-Z等工具一一查看)。据此,笔者整理后提供了一个简易的查询表格,如表1,希望能够满足要求。                             表1 Clarkdale和Arrandale之规格 在查看表1后,细心的网友可能发现,笔者没有将Pentium G6950放入表格,故这里补充一下它的参数:集成显卡主频是533MHZ,CPU主频是2.80GHZ,2C:4T。此外,在Arrandale中,集成显卡的主频普遍比Clarkdale低,最高为533MHZ,最低位166MHZ,主要因为节能方面的考虑。

继续 ›

分类: 博客征文专栏, 图形和视觉计算, 移动技术, 英特尔® 软件网络 2.0

ATOM优化之GCC篇

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 31, 2009 在 11:43 上午
评论 (12)

在ATOM程序优化利器中,笔者着重讲述了如何使用Intel Compiler对ATOM应用程序的优化,很多网友都比较感兴趣并想知道在GCC编译器下如何优化ATOM。借此,本文将重点于讨论如何使ATOM应用程序在GCC编译器下优化。 细心的网友可能发现GCC4.4.2手册没有讲述如何在ATOM平台优化,所以要通过GCC对ATOM平台优化,一定要从平台的特性出发。为了便于理解,先回顾一下ATOM平台的特点: 1. ATOM平台的指令是顺序执行的。 2. ATOM平台支持超线程技术,也就是我们通常所说的1C:2T。 3. ATOM平台支持SSE3指令集。 如果我们的GCC编译选项能够满足这基本的三大点,那么相应的应用程序性能也将会有很大提升。 讨论1:ATOM应用程序在ATOM计算机上编译。 对于本机编译而言,这种开发环境相对是比较容易优化的。我们只要关心两个基本点: 1. SSE3指令集。 2. 平台环境(32位还是64位?)。 a) 对于32位操作系统,ATOM应用程序的优化设置为: -mtune=native -m32 -mmmx ...

继续 ›

分类: 图形和视觉计算, 开放源代码, 移动技术, 英特尔® 软件网络 2.0

Media SDK,你在哪里?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 21, 2009 在 3:25 下午
评论 (10)

Intel Media SDK极大的加速了视音频编解码能力,为用户能在低端Intel硬件平台观看高清视频提供了可能。对视音频应用软件而言,如何在用户平台准确的配置Media SDK就成为一个重要的课题。这篇文章将着重探讨这个问题,希望对读者有启示作用。 如何配置Media SDK? - ...

继续 ›

分类: 其他, 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

谁来主宰我的WIFI?

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 16, 2009 在 2:37 下午
评论 (19)

无线技术发展迅猛,几乎国内所有的笔记本和上网本都支持WIFI技术,随着消费电子、智能手机、便携式多媒体播放设备、打印机、投影机等产品对WIFI的支持,建立WIFI局域网迫在眉睫。据ABI 2009年研究报告,到2011年支持WIFI的设备总数将达到10亿台,有非常大的市场潜力。 在这种趋势促成下,Intel的MY WIFI腾空出世,它是WIFI的个人局域网(PAN)。工作原理就是把无线网卡虚拟成两个无线空间,当与传统的AP相连时,就是一个普通的终端设别;当与个人无线网络连接时,就充当传统AP的功能。简单的说,就是一卡两用。 MY WIFI的主要优点是: - 使用简便。随时随地可启动,受环境影响很小。 - 兼容性好。支持802.11/a/b/g/n协议。 - 速度快,高达54Mbps。 - 功能强。能同时支持支持打印机、投影仪、智能手机等多个设备。 - 便携性好。不需要独立AP,只要拥有Intel 5100/5300无线网卡,即可随时随地能够组WIFI网络。 既然MY ...

继续 ›

分类: 其他, 移动技术, 英特尔® 软件网络 2.0, 软件技术学习及认证

Arrandale,CPU与G45的瑰宝

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十二月 11, 2009 在 3:05 下午
评论 (25)

廉价的集成显卡一直以不错的游戏性能和支持高清硬件解码而倍受用户青睐,在2009年DIY市场调查中,集成显卡占有46%的市场份额(Intel占有集成显卡中的40+%的份额),并且保持良好的上升势头。Intel的Clarkdale和Arrandale将Intel集成显卡和CPU封装在一块基片上,就是这种大趋势的表现。32nm技术的采用、高效的Nehalem框架、物理距离的缩短等,使其具有以下新的特点: - 高效的视频编解码能力。相比与penryn的G45平台,Arrandale的G45有40+%的性能提升,这是非常可观的! - 更加省电。它得益于32nm技术、第二代的Hi-k处理技术和G45的融合。 - 有CPU就有显卡。对于做集成显卡的其他厂商而言,它可能是致命的,但对用户而言是受欢迎的,可以用更加低廉的价格获取较好的性能提升。 Intel的CPU和集成显卡的融合方案是否能够成为板载集成显卡的终结者呢?笔者认为,一方面取决于市场对其性价比的肯定程度;另一方面在于其后继产品的优秀程度。不管结果如何,CPU遇到G45不是巧合,而是市场需求的必然结果。

继续 ›

分类: 图形和视觉计算, 英特尔® 软件网络 2.0

ATOM程序优化利器

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 23, 2009 在 4:59 下午
评论 (12)

Intel编译器是著名的X86框架优化编译器,充分使用它的优化选项不仅能够使程序性能更好,而且也能同时节省电力,这个对于笔记本、手持设备等都是有显著意义的。Intel编译器现在的版本是11.X,它提供了针对ATOM丰富编译选项。 本文将按照ATOM的特点,对Intel编译器的优化选项依次说明。一方面强调重点,另一方面也便于读者理解。 首先,ATOM CPU是顺序执行的(现在主流的CPU都是乱序执行的),对于乱序执行优化的程序,在ATOM平台反而会有适得其反的效果,并且耗电。这就要求相关的应用程序在运行期有一个自动设别平台的能力,我们可以通过CPUID指令来实现它。对于编译器而言,问题的关键是如何添加正确的编译选项呢?(Windows平台)和axSSE3_ATOM(Linux平台)编译选项粉墨登场,它告诉编译器对源代码进行ATOM方式的优化。 其次,ATOM CPU支持SSE3指令,那么QaxSSE3_ATOM和axSSE3_ATOM同时也要求编译器对源代码进行SSE3指令的优化。 再则,如果程序有大量的big endian和little endian之间转化的程序块,Intel编译器也提供了/Qinstruction:movbe(Windows平台)和-minstruction=movbe(Linux平台)的编译选项,它能够快速高效的提高数据转化能力。 最后,对于运行环境,编译时我们还需要考虑操作系统是否是为IA32还是IA64,比如说通过-m32或者-m64来定义。它结合QaxSSE3_ATOM和axSSE3_ATOM编译选项,对于提高代码的优化成效是很有帮助的。 对于大多数程序员而言,这些编译选项设置还是相对比较繁琐的,那么Intel编译器提供了一个QxSSE3_ATOM(Windows平台)和xSSE3_ATOM(Linux平台)的编译选项来搞定上面的所有事情。它的好处非常的明了,就是简单,能够满足绝大多数的应用程序。缺点就是无法对IA32,IA64,movbe等指令ON/OFF的控制,无法手动在代码尺寸,速度等方面做一个恰当的应用平衡。 小结: 1. QxSSE3_ATOM(Windows平台)和xSSE3_ATOM(Linux平台)编译选项是能够满足ATOM平台的常规优化能力。对于喜欢手动配置优化能力的程序员,可以考虑使用axSSE3_ATOM,instruction等组合来完成。 2. 本文仅仅提供了编译器端的ATOM优化设置,还有一个非常关键的优化点是:如何利用好ATOM平台的多线程能力? 3. 对于其他的优化选项,比如说ipo在ATOM平台依然是有效的,所以应该结合它们一起做一个全盘的优化,达到性能的最佳。

继续 ›

分类: 移动技术, 英特尔® 软件网络 2.0
标签:,

丰富的Media SDK DShow Filters

作者: Yanqing Wang (Intel) (109 篇文章) 日期: 十一月 10, 2009 在 3:30 下午
评论 (1)

Intel的Media SDK是一个强大的视音频编解码库,它建立在Intel的集成显卡G45平台(提供硬件加速),并能支持后继的其他Intel显卡产品。Media SDK不仅提供了丰富的API以供客户二次开发,而且也提供的标准的DShow Filters,方便了客户的使用,提高了重复使用的效能。本文主要是用表格方式总结了Media SDK1.1 所提供的DShow Filters,便于开发人员查询。 ...

继续 ›

分类: 图形和视觉计算, 英特尔® 软件网络 2.0, 软件技术学习及认证