Android(安卓)Lame c库应用
16lz
2021-01-26
废话不多说.
<1> : 首先可以从网上面下载lame库;
<2> : 新建一个android工程,如前面博客的添加所有的配置文件和jni目录;
<3> : 添加lame c文件库到jni中:解压后添加下面两个:
<4> : 根据<2> 中的文件目录,编写makefile文件:
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := lamejniLOCAL_SRC_FILES := ./libmp3lame/bitstream.c \./libmp3lame/encoder.c \./libmp3lame/fft.c \./libmp3lame/gain_analysis.c \./libmp3lame/id3tag.c \./libmp3lame/lame.c \./libmp3lame/mpglib_interface.c \./libmp3lame/newmdct.cLOCAL_SRC_FILES += ./libmp3lame/presets.c \./libmp3lame/psymodel.c \./libmp3lame/quantize_pvt.c \./libmp3lame/quantize.c \./libmp3lame/reservoir.c \./libmp3lame/set_get.c \./libmp3lame/tables.c \./libmp3lame/util.cLOCAL_SRC_FILES += ./libmp3lame/takehiro.c \./libmp3lame/vbrquantize.c \./libmp3lame/VbrTag.c \./libmp3lame/version.cLOCAL_SRC_FILES += ./libmp3lame/xmm_quantize_sub.cLOCAL_SRC_FILES += durianlame.c durianutils.cLOCAL_LDLIBS := -lloginclude $(BUILD_SHARED_LIBRARY)
durianlame.c :
#include "durianlame.h"#include "durianutils.h"#include "libmp3lame/lame.h"JNIEXPORT jstring JNICALL Java_com_durian_lamelib_DurianLame_getLameVersion (JNIEnv *env, jobject jobj){char *version=get_lame_version();return (*env)->NewStringUTF(env, version);}
上面是获取lame库的版本,lame库对外基本上所有的接口都在它的lame.c中
应用层调用:
/** * @Title: DurianLame.java* @Package com.durian.lamelib* @Description: TODO* @author zhibao.liu from durian organization* @date 2016-1-4 下午02:24:43* @version V1.0 */package com.durian.lamelib;/** * @ClassName: DurianLame * @Description: TODO * @author zhibao.liu Freelancer * @email [email protected] * @date 2016-1-4 下午02:24:43 * */public class DurianLame { public native String getLameVersion(); static{ System.loadLibrary("lamejni"); } }
lame.c的所有的接口都可以对应到应用层,可以参照上面一次类推.
代码code : http://pan.baidu.com/s/1kUjdzAf
更多相关文章
- Android(安卓)混淆 以及 java代码方式实现混淆配置
- 1. NDK Android(安卓)jni开发 2种so库编译 cmake(相机图片美化)
- Android积累之《Android(安卓)strings.xml文件定义字符串中的标
- Android应用开发相关下载资源(2014/12/14更新) 【转】
- Android(安卓)NDK r8b 和 FFmpeg 0.11.2 移植
- [Android]Fragment的应用/点击替换fragment应用实例
- 小多的Android入门教程系列---之1---贪吃蛇改进版
- android去权限反编译,签名,zipalign优化
- android使用ant自动打包(更改java文件中的属性值,批量自动生成)