├── VoiceChanger ├── assets │ └── .gitignore ├── res │ ├── layout │ │ └── .gitignore │ ├── drawable-hdpi │ │ └── .gitignore │ ├── drawable-ldpi │ │ └── .gitignore │ ├── drawable-mdpi │ │ └── .gitignore │ ├── drawable-xhdpi │ │ └── .gitignore │ ├── values-v11 │ │ └── styles.xml │ ├── values-v14 │ │ └── styles.xml │ └── values │ │ └── styles.xml ├── obj │ └── local │ │ ├── armeabi-v7a │ │ ├── libstdc++.a │ │ ├── libspeex.so │ │ └── libsoundtouch.so │ │ └── armeabi │ │ ├── libstdc++.a │ │ ├── objs │ │ └── soundstretch │ │ │ └── .gitignore │ │ ├── libspeex.so │ │ └── libsoundtouch.so ├── jni │ ├── Android.mk │ ├── Application.mk │ ├── speex │ │ ├── include │ │ │ ├── Makefile.am │ │ │ └── speex │ │ │ │ ├── speex_config_types.h │ │ │ │ ├── speex_config_types.h.in │ │ │ │ ├── Makefile.am │ │ │ │ ├── speex_buffer.h │ │ │ │ ├── speex_stereo.h │ │ │ │ ├── speex_types.h │ │ │ │ └── speex_header.h │ │ ├── libspeex │ │ │ ├── testdenoise.c │ │ │ ├── kiss_fftr.h │ │ │ ├── testecho.c │ │ │ ├── smallft.h │ │ │ ├── testjitter.c │ │ │ ├── lpc.h │ │ │ ├── exc_10_16_table.c │ │ │ ├── echo_diagnostic.m │ │ │ ├── misc_bfin.h │ │ │ ├── gain_table_lbr.c │ │ │ ├── fftwrap.h │ │ │ ├── Makefile.am │ │ │ ├── filterbank.h │ │ │ ├── vbr.h │ │ │ ├── vq.h │ │ │ ├── exc_10_32_table.c │ │ │ ├── lsp.h │ │ │ ├── quant_lsp.h │ │ │ ├── exc_5_64_table.c │ │ │ ├── hexc_10_32_table.c │ │ │ ├── kiss_fft.h │ │ │ ├── cb_search_sse.h │ │ │ ├── lsp_bfin.h │ │ │ ├── ltp_sse.h │ │ │ ├── filters_arm4.h │ │ │ ├── vorbis_psy.h │ │ │ ├── exc_20_32_table.c │ │ │ ├── stack_alloc.h │ │ │ ├── cb_search.h │ │ │ ├── testenc_uwb.c │ │ │ ├── testenc_wb.c │ │ │ ├── vq_sse.h │ │ │ ├── filters.h │ │ │ ├── vq_arm4.h │ │ │ ├── testenc.c │ │ │ ├── cb_search_bfin.h │ │ │ └── vq_bfin.h │ │ ├── Android.mk │ │ └── speex_jni.cpp │ └── SoundTouch │ │ ├── SoundTouch │ │ ├── PeakFinder.cpp │ │ ├── InterpolateCubic.h │ │ ├── cpu_detect.h │ │ ├── InterpolateShannon.h │ │ ├── Makefile.am │ │ ├── InterpolateLinear.h │ │ ├── AAFilter.h │ │ └── PeakFinder.h │ │ ├── include │ │ ├── Makefile.am │ │ └── soundtouch_config.h │ │ ├── Android.mk │ │ └── soundtouch-jni.cpp ├── lint.xml ├── libs │ ├── armeabi │ │ ├── libspeex.so │ │ └── libsoundtouch.so │ ├── android-support-v4.jar │ └── armeabi-v7a │ │ ├── libspeex.so │ │ └── libsoundtouch.so ├── .settings │ ├── org.eclipse.core.resources.prefs │ └── org.eclipse.jdt.core.prefs ├── src │ └── com │ │ └── dll │ │ ├── speex │ │ ├── SpeexPlayerListener.java │ │ ├── SpeexRecorderListener.java │ │ ├── encode │ │ │ ├── Speex.java │ │ │ └── SpeexEncoder.java │ │ ├── SpeexPlayer.java │ │ └── writer │ │ │ ├── SpeexWriteClient.java │ │ │ └── SpeexWriter.java │ │ ├── voicechanger │ │ ├── PlayerListener.java │ │ ├── RecorderListener.java │ │ ├── VoiceChanger.java │ │ └── SoundTouch.java │ │ └── util │ │ └── FilePathUtil.java ├── .classpath ├── project.properties ├── AndroidManifest.xml ├── proguard-project.txt ├── .externalToolBuilders │ └── NDK_Builder.launch └── .project ├── VoiceChangerDemo ├── assets │ └── .gitignore ├── res │ ├── drawable-ldpi │ │ └── .gitignore │ ├── drawable-hdpi │ │ └── ic_launcher.png │ ├── drawable-mdpi │ │ └── ic_launcher.png │ ├── drawable-xhdpi │ │ └── ic_launcher.png │ ├── values-v11 │ │ └── styles.xml │ ├── values-v14 │ │ └── styles.xml │ ├── values │ │ ├── strings.xml │ │ └── styles.xml │ └── layout │ │ └── activity_main.xml ├── libs │ └── android-support-v4.jar ├── .settings │ └── org.eclipse.jdt.core.prefs ├── .classpath ├── project.properties ├── proguard-project.txt ├── .project ├── AndroidManifest.xml └── src │ └── com │ └── dll │ └── voicechangerdemo │ └── MainActivity.java └── .gitignore /VoiceChanger/assets/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/res/layout/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChangerDemo/assets/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/res/drawable-hdpi/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/res/drawable-ldpi/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/res/drawable-mdpi/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/res/drawable-xhdpi/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/drawable-ldpi/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi-v7a/libstdc++.a: -------------------------------------------------------------------------------- 1 | ! 2 | -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi/libstdc++.a: -------------------------------------------------------------------------------- 1 | ! 2 | -------------------------------------------------------------------------------- /VoiceChanger/jni/Android.mk: -------------------------------------------------------------------------------- 1 | include $(call all-subdir-makefiles) -------------------------------------------------------------------------------- /VoiceChanger/jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_ABI := armeabi armeabi-v7a -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi/objs/soundstretch/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VoiceChanger/jni/speex/include/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | SUBDIRS = speex 3 | -------------------------------------------------------------------------------- /VoiceChanger/lint.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /VoiceChanger/libs/armeabi/libspeex.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/libs/armeabi/libspeex.so -------------------------------------------------------------------------------- /VoiceChanger/libs/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/libs/android-support-v4.jar -------------------------------------------------------------------------------- /VoiceChanger/libs/armeabi-v7a/libspeex.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/libs/armeabi-v7a/libspeex.so -------------------------------------------------------------------------------- /VoiceChanger/libs/armeabi/libsoundtouch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/libs/armeabi/libsoundtouch.so -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi/libspeex.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/obj/local/armeabi/libspeex.so -------------------------------------------------------------------------------- /VoiceChanger/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding//src/com/dll/voicechanger/RecorderManager.java=UTF-8 3 | -------------------------------------------------------------------------------- /VoiceChangerDemo/libs/android-support-v4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChangerDemo/libs/android-support-v4.jar -------------------------------------------------------------------------------- /VoiceChanger/libs/armeabi-v7a/libsoundtouch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/libs/armeabi-v7a/libsoundtouch.so -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi-v7a/libspeex.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/obj/local/armeabi-v7a/libspeex.so -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi/libsoundtouch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/obj/local/armeabi/libsoundtouch.so -------------------------------------------------------------------------------- /VoiceChangerDemo/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChangerDemo/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /VoiceChangerDemo/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChangerDemo/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /VoiceChanger/jni/SoundTouch/SoundTouch/PeakFinder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/jni/SoundTouch/SoundTouch/PeakFinder.cpp -------------------------------------------------------------------------------- /VoiceChanger/obj/local/armeabi-v7a/libsoundtouch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChanger/obj/local/armeabi-v7a/libsoundtouch.so -------------------------------------------------------------------------------- /VoiceChangerDemo/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaobinlzy/VoiceChanger_Android/HEAD/VoiceChangerDemo/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /VoiceChangerDemo/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 3 | org.eclipse.jdt.core.compiler.compliance=1.6 4 | org.eclipse.jdt.core.compiler.source=1.6 5 | -------------------------------------------------------------------------------- /VoiceChanger/jni/speex/include/speex/speex_config_types.h: -------------------------------------------------------------------------------- 1 | #ifndef __SPEEX_TYPES_H__ 2 | #define __SPEEX_TYPES_H__ 3 | typedef short spx_int16_t; 4 | typedef unsigned short spx_uint16_t; 5 | typedef int spx_int32_t; 6 | typedef unsigned int spx_uint32_t; 7 | #endif 8 | -------------------------------------------------------------------------------- /VoiceChanger/jni/speex/include/speex/speex_config_types.h.in: -------------------------------------------------------------------------------- 1 | #ifndef __SPEEX_TYPES_H__ 2 | #define __SPEEX_TYPES_H__ 3 | 4 | /* these are filled in by configure */ 5 | typedef @SIZE16@ spx_int16_t; 6 | typedef unsigned @SIZE16@ spx_uint16_t; 7 | typedef @SIZE32@ spx_int32_t; 8 | typedef unsigned @SIZE32@ spx_uint32_t; 9 | 10 | #endif 11 | 12 | -------------------------------------------------------------------------------- /VoiceChanger/res/values-v11/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/values-v11/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Built application files 2 | *.apk 3 | *.ap_ 4 | 5 | # Files for the Dalvik VM 6 | *.dex 7 | 8 | # Java class files 9 | *.class 10 | 11 | # Generated files 12 | bin/ 13 | gen/ 14 | 15 | # Gradle files 16 | .gradle/ 17 | build/ 18 | 19 | # Local configuration file (sdk path, etc) 20 | local.properties 21 | 22 | # Proguard folder generated by Eclipse 23 | proguard/ 24 | 25 | # Log Files 26 | *.log 27 | -------------------------------------------------------------------------------- /VoiceChanger/src/com/dll/speex/SpeexPlayerListener.java: -------------------------------------------------------------------------------- 1 | package com.dll.speex; 2 | 3 | public interface SpeexPlayerListener { 4 | /** 5 | * 播放完成时回调。 6 | * 7 | * @param fileName 8 | */ 9 | public void onPlayerFinished(String fileName); 10 | 11 | /** 12 | * 播放失败时回调。 13 | * 14 | * @param fileName 15 | */ 16 | public void onPlayerFailed(String fileName); 17 | } 18 | -------------------------------------------------------------------------------- /VoiceChanger/jni/speex/include/speex/Makefile.am: -------------------------------------------------------------------------------- 1 | # Disable automatic dependency tracking if using other tools than gcc and gmake 2 | #AUTOMAKE_OPTIONS = no-dependencies 3 | 4 | nodist_pkginclude_HEADERS = speex_config_types.h 5 | 6 | pkginclude_HEADERS = speex.h speex_bits.h speex_buffer.h speex_callbacks.h \ 7 | speex_echo.h speex_header.h speex_jitter.h speex_preprocess.h speex_resampler.h \ 8 | speex_stereo.h speex_types.h 9 | 10 | -------------------------------------------------------------------------------- /VoiceChanger/res/values-v14/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/values-v14/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | VoiceChangerDemo 5 | Hello world! 6 | Settings 7 | 录音 8 | 停止录音 9 | 播放 10 | 停止播放 11 | 12 | -------------------------------------------------------------------------------- /VoiceChanger/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /VoiceChangerDemo/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /VoiceChanger/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 5 | org.eclipse.jdt.core.compiler.compliance=1.7 6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 11 | org.eclipse.jdt.core.compiler.source=1.7 12 | -------------------------------------------------------------------------------- /VoiceChangerDemo/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-19 15 | android.library.reference.1=../VoiceChanger 16 | -------------------------------------------------------------------------------- /VoiceChanger/src/com/dll/voicechanger/PlayerListener.java: -------------------------------------------------------------------------------- 1 | package com.dll.voicechanger; 2 | 3 | /** 4 | * 播放事件监听接口 5 | * 6 | * @author DLL email: xiaobinlzy@163.com 7 | * 8 | */ 9 | public interface PlayerListener { 10 | 11 | /** 12 | * 播放完成时回调,总是在主线程中被调用。 13 | * 14 | * @param fileName 15 | */ 16 | public void onPlayerFinished(String fileName); 17 | 18 | /** 19 | * 播放失败时回调,总是在主线程中被调用。 20 | * 21 | * @param fileName 22 | */ 23 | public void onPlayerFailed(String fileName); 24 | 25 | /** 26 | * 播放被人为停止时回调,总是在主线程中被调用。 27 | * 28 | * @param fileName 29 | */ 30 | public void onPlayerStoped(String fileName); 31 | } 32 | -------------------------------------------------------------------------------- /VoiceChanger/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-19 15 | android.library=true 16 | android.library.reference.1=../../../AndroidUtils 17 | -------------------------------------------------------------------------------- /VoiceChanger/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 14 | 15 | 16 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 14 | 15 | 16 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /VoiceChanger/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /VoiceChangerDemo/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 |