这个AVI视频播放器应用程序作为测试例子。通过这章你将扩展这个测试应用程序来试验不同的native Graphics APIs。这个例子应用程序将提供如下:

一个Android应用程序项目代用原生代码的支持。

一个静态连接的AVI库,带有展示给Java层的基本函数和绑定Activity生命周期。

一个简单的GUI来展示着avi视频的文件和原生图形Api的类型来使用来播放。

下面的步骤让AVILIB成为一个NDK导入的模块:

1.使用你最喜欢的浏览器,转到http://tcforge.brelios.de/.

2.在写时,这最新的Transcode的版本是1.1.5.接下来下载transcode-1.1.5.tar.bz2源文件的存档文件。

3.打开一个窗口终端如果你正在使用Mac OS或LInux,或者Cygwin如果你正在使用Windows。

4.改变当前目录到Android NDK导入模块目录通过使用如下命令:

cd  $Android_ndk_home/sources

5.解压下载的压缩文件 tar jxvf <Download Location>/transcode-1.1.5.tar.bz2

6.改变着目前的目录到Transcode的avilib子目录,通过:cd transcode-1.1.5/avilib

7.使用Eclipse打开platform.h.如下,增加粗体行在#include“config.h"的周围。

#ifdef HAVE_CONFIG_H

#endif

8.这Android NDK建立系统需要这在它拥有的Andoid.mk文件模式需要的导入模块。使用Eclipse,建立一个新的Android.mk在目前的目录,内容如下:

LOCAL_PATH := $(call my-dir)
             #
             # Transcode AVILib
            #
           # Source files
          MY_AVILIB_SRC_FILES := avilib.c platform_posix.c
         # Include path to export
        MY_AVILIB_C_INCLUDES := $(LOCAL_PATH)
         #
        # AVILib static
        #
        include $(CLEAR_VARS)
        # Module name
       LOCAL_MODULE := avilib_static
      # Source files
       LOCAL_SRC_FILES := $(MY_AVILIB_SRC_FILES)
      # Include path to export
     LOCAL_EXPORT_C_INCLUDES := $(MY_AVILIB_C_INCLUDES)
    # Build a static library
    include $(BUILD_STATIC_LIBRARY)
   #
    # AVILib shared
    #
    include $(CLEAR_VARS)
   # Module name
  LOCAL_MODULE := avilib_shared
   # Source files
  LOCAL_SRC_FILES := $(MY_AVILIB_SRC_FILES)
  # Include path to export
  LOCAL_EXPORT_C_INCLUDES := $(MY_AVILIB_C_INCLUDES)
  # Build a shared library
  include $(BUILD_SHARED_LIBRARY)

NDK avi播放器相关推荐

  1. 【C# interface接口】模拟MP3/AVI播放器

    注意:本程序仅模拟播放器功能,点击按钮时只会输出一句话,并未真正实现播放. 对接口的理解,见我的另一篇博客,里面有详细说明:[C# interface接口]对接口的理解.接口的使用方式(最通俗的解释) ...

  2. 做avi播放器的反思

    有思维固性.有一个需求是想要在web上播放avi. 总脑子总是围绕着如果使用html标签 和 如何使用框架提供好的东西去做. 然后没有想过.视频呈现文本是通过怎么样的方式. 或者是没有想过动画形成的最 ...

  3. C#入门学习-----制作AVI播放器

    本实例主要用到了Microsoft Animation Control Version 6.0 组件,该组件可以一帧一帧地播放AVI文件. 用到该组件,必须将Microsoft Animation C ...

  4. 采用CAnimateCtrl的AVI播放器,没有什么应用的,纯当练技术

    目前,专门用于设计多媒体应用的软件很多.而VC6.0也提供了一种动画控件来实现简单多媒体动画文件的播放.我们创建一个基于对话框的工程,取名为player,具体步骤如下: class CplayerDl ...

  5. 声明一个接口IPlayer,包含5个接口方法:播放、停止、暂停、上一首和下一首。设计一个Windows应用程序,在该程序中定义一个MP3播放器类和一个AVI播放器类,以实现该接口,最后创建相应类的实例

    从左往右,btnMP3,lblShow,btnAVI using System; using System.Collections.Generic; using System.ComponentMod ...

  6. 兼容ie8的html avi播放器

    可以在ie8下播放avi等主流视频,需要插件: media.player.codec.pack.v4.3.8.setup.exe 点击(此处)折叠或打开 <%@ page language=&q ...

  7. NDK学习笔记(十二) 原生图形api,使用AVILib创建一个AVI视频播放器

    文章目录 1.练练手,使用AVILib创建一个AVI视频播放器 (1)首先下载transcode,并配置avilib. (2)创建AbstractPlayerActivity并实现native方法 ( ...

  8. C#——窗体程序声明一个播放器接口IPlayer,包含5个接口方法:播放、停止、暂停、上一首和下一首。

    声明一个播放器接口IPlayer,包含5个接口方法:播放.停止.暂停.上一首和下一首.设计一个窗体程序,在该程序中定义一个MP3播放器类和一个AVI播放器类,以实现该接口,最后创建相应类的实例测试程序 ...

  9. 声明一个播放器接口IPlayer,包含5个接口方法:播放、停止、暂停、上一首和下一首。

    声明一个播放器接口IPlayer,包含5个接口方法:播放.停止.暂停.上一首和下一首.设计一个Windows应用程序,在该程序中定义一个MP3播放器类和一个AVI播放器类,以实现该接口,最后创建相应类 ...

最新文章

  1. Ubuntu Linux root password - default password
  2. 戴尔:发力互联互通 构建世界基础设施中心
  3. 通过rsync清除目录的shell脚本
  4. Linux学习:目录操作函数
  5. style 里引用php变量,php引用 详解
  6. Apache 更改80端口
  7. android 字母索引三方,Android 字母索引动态自定义布局
  8. 品质LOGO模板素材|想知道平面设计师如何设计徽标的秘密吗?
  9. 【服务器环境搭建-Centos】tmpfs,【转载】
  10. 《Spring 5官方文档》11集成测试 (二)
  11. js 弹出提示信息,并跳转指定页面代码分享
  12. linux 浮点异常,浮点数学函数异常处理方法
  13. 运动式蓝牙耳机什么牌子好、运动式蓝牙耳机推荐
  14. 痛并快乐着的保研经历
  15. 哪几种MM最受男孩喜欢?(组图)
  16. Java开发短连接分享功能
  17. 对中国国家气象局进行api数据分析
  18. util.Date和sql.Date之间的转换
  19. 《Google Android开发入门与实战随书视频》
  20. 拒绝踩坑!源码编译 tensorflow 解决 cuda 不配套 万金油方法

热门文章

  1. python_异常处理
  2. [论文阅读] (06) 万字详解什么是生成对抗网络GAN?经典论文及案例普及
  3. LeetCode Algorithm 22. 括号生成
  4. 编写你的第一个 Django 应用,第 4 部分
  5. 《C champion》C语言发展
  6. feachall php_集合:给 PHP 数组插上翅膀
  7. 通过例子学Solidity[注释翻译]
  8. 执行应用程序出现: No such file or directory
  9. Qt学习笔记-----Model/View架构
  10. java随机产生密码_用Java生成随机密码的方法