随笔分类 -  ffmpeg

摘要:ffmpeg-0.8.11-vc-sdk,是使用ffmpeg 转换vc项目工具生成VC工程编译的 release 版本的sdk。因为编译器的问题导致sse开启的时候会导致程序崩溃,所以屏蔽了sse优化.其他的优化还是有了,config.h里面看到我屏蔽了其他的是因为为了发布sdk方便,所以屏蔽的。此sdk不依赖任何其他得dll,只需要把lib下的zlib,sdl,这两个库的dll加到运行目录中就可以发布,不需要其他任何的mingw,cygwin这样的dll文件。由于使用vc编译,所以在其他电脑上安装可能需要vs2008的运行环境。下载地址:http://download.csdn.net/de 阅读全文
posted @ 2012-05-22 18:58 移动应用开发 阅读(247) 评论(0) 推荐(0)
摘要:相信大家在移植ffmpeg代码到vc中都会遇到很多汇编指令,是VC不支持的。那是因为AT&T汇编和intel汇编格式不兼容引起的。今天给大家介绍一下libavutil\x86\internal.h 中emms_c函数的移植吧。函数原型:static av_always_inline void emms_c(void) { if(av_get_cpu_flags() & AV_CPU_FLAG_MMX) __asm__ volatile ("emms" ::: "memory"); }因为VC asm提供了emms,直接调用就可以了。因此修 阅读全文
posted @ 2012-05-22 18:53 移动应用开发 阅读(746) 评论(0) 推荐(0)
摘要:移植代码需要的朋友可以联系购买。也可以购买工具,或者购买工具的代码。 阅读全文
posted @ 2012-05-12 01:00 移动应用开发 阅读(100) 评论(0) 推荐(0)
摘要:移植就剩下最后一个文件修改,不得不终止。继续用0.8.11重新移植。 阅读全文
posted @ 2012-05-10 23:46 移动应用开发 阅读(161) 评论(0) 推荐(0)
摘要:相信大家在移植ffmpeg代码到vc中都会遇到很多汇编指令,是VC不支持的。那是因为AT&T汇编和intel汇编格式不兼容引起的。今天给大家介绍一下libavutil\x86\timer.h 中read_time函数的移植吧。函数原型:static inline uint64_t read_time(void) { uint32_t a, d; __asm__ volatile("rdtsc" : "=a" (a), "=d" (d)); return ((uint64_t)d << 32) + a; }因为int 阅读全文
posted @ 2012-05-07 20:05 移动应用开发 阅读(205) 评论(0) 推荐(0)
摘要:mmsplayer for wince demo,应大家要求,晚上抽空编译了一个wince版本的demo,明天测试一下,然后发布上来。wince,wm 地址:http://download.csdn.net/detail/weinyzhou/4278833windows 地址:http://download.csdn.net/detail/weinyzhou/4278838 阅读全文
posted @ 2012-05-05 00:10 移动应用开发 阅读(147) 评论(0) 推荐(0)
摘要:ffmpeg 转换VC工具 V1.1.1已经完成1.支持大部分已知需要转换的结构体变量转换(支持含有宏定义)2.对于未知结构体变量,只需加入table中亦可转换.3.可支持5.1或5.2解析解析运行,使用纯lua脚本编写,未使用任何扩展库。4.可跨平台(这是与lua有关,只要有lua解析器即可运行)转换成功后libavcodec/4xm.c下的文件版权所有,未经允许不得擅自转载发布于:http://blog.csdn.net/weinyZhou 阅读全文
posted @ 2012-05-04 18:42 移动应用开发 阅读(149) 评论(0) 推荐(0)
摘要:local text="AVCodec ff_jpeg2000_decoder = {" .." .name = \"j2k\",\n" .." .type = AVMEDIA_TYPE_VIDEO,\n" .." .id = CODEC_ID_JPEG2000,\n" .." .priv_data_size = sizeof(J2kDecoderContext),\n" .." .init = j2kdec_init,\n" .." .clos 阅读全文
posted @ 2012-05-03 22:45 移动应用开发 阅读(305) 评论(0) 推荐(0)
摘要:工具已经上传了.需要的到:http://download.csdn.net/detail/weinyzhou/4268448这下载。需要将gcc,yasm,nasm等工具的目录加入到bin路径里面,否则编译会导致提示找不到文件,因为汇编文件都是用他们编译的。补充;main.lua是启动文件,但是需要修改里面两个路径。一个是脚本路径,一个是ffmpeg代码路径。修改成功后用lua解析器运行就可以了。 阅读全文
posted @ 2012-05-01 13:27 移动应用开发 阅读(125) 评论(0) 推荐(0)
摘要:上图:现已基本上完成:1.makefile文件解析2.往所有的文件插入包含config.h语句3.往所有文件中插入宏开关4.生成VC工程文件,对汇编文件使用自定义编译器,使用gcc编译下一步需完成:1.将所有文件的结构体定义进行格式转换,因为ffmpeg所有的结构体定义都是C99格式,VS2008是不支持的。GCC编译格式是这样:AVCodec ff_fourxm_decoder = { .name = "4xm", .type = AVMEDIA_TYPE_VIDEO, .id = CODEC_ID_4X... 阅读全文
posted @ 2012-04-30 16:59 移动应用开发 阅读(224) 评论(0) 推荐(0)
摘要:正在编写一个ffmpeg项目工程半自动转换成VC工程的工具。因为我喜欢用VS2008所以,工具只能生成VS2008的项目。此工具基于lua脚本完成。介绍一下大概思路,解析makefile文件,得到需要编译的所有文件列表,然后将所有的.o文件替换成.c,.asm,.S然后打开文件修改文件,在文件中加入include <config.h>.若不加入此头文件,会导致大量宏找不到定义而失败。为了添加文件编译开关, OBJS-$(CONFIG_AANDCT) += aandcttab.o 解析出 CONFIG_AANDCT 然后插入#if CONFIG_AANDC... 阅读全文
posted @ 2012-04-29 17:57 移动应用开发 阅读(206) 评论(0) 推荐(0)