diff --git a/.gitignore b/.gitignore
index 4b87013..ca38dd3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,4 +21,4 @@
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
-/.metadata/
+.metadata/
diff --git a/asrt_client_demo/asrtcli/.classpath b/asrt_client_demo/asrtcli/.classpath
new file mode 100644
index 0000000..eba6737
--- /dev/null
+++ b/asrt_client_demo/asrtcli/.classpath
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/asrt_client_demo/asrtcli/.project b/asrt_client_demo/asrtcli/.project
new file mode 100644
index 0000000..9c3e1c1
--- /dev/null
+++ b/asrt_client_demo/asrtcli/.project
@@ -0,0 +1,17 @@
+
+
+ asrtcli
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/asrt_client_demo/asrtcli/src/asrtcli/Main.java b/asrt_client_demo/asrtcli/src/asrtcli/Main.java
new file mode 100644
index 0000000..083cf06
--- /dev/null
+++ b/asrt_client_demo/asrtcli/src/asrtcli/Main.java
@@ -0,0 +1,81 @@
+/**
+ *
+ */
+package asrtcli;
+
+import net.ailemon.asrt.sdk.*;
+import net.ailemon.asrt.sdk.models.*;
+import net.ailemon.asrt.sdk.common.*;
+/**
+ * @author ailemon
+ *
+ */
+public class Main {
+
+ /**
+ * @param args
+ */
+ public static void main(String[] args) {
+ // TODO Auto-generated method stub
+ String host = "127.0.0.1";
+ String port = "20001";
+ String protocol = "http";
+ BaseSpeechRecognizer sr = Sdk.GetSpeechRecognizer(host, port, protocol);
+ String filename = "C:\\Users\\ailemon\\Desktop\\data.wav";
+ if(args.length > 0){
+ filename = args[0];
+ }
+ // ============================================
+ // 直接调用ASRT识别语音文件
+ AsrtApiResponse rsp = sr.RecogniteFile(filename);
+ System.out.println(rsp.statusCode);
+ System.out.println(rsp.statusMessage);
+ System.out.println(rsp.result);
+
+ // ============================================
+ // 调用ASRT识别语音序列
+ byte[] wavBytes = Common.readBinFile(filename);
+ Wave wav = new Wave();
+ wav.deserialize(wavBytes);
+ byte[] sampleBytes = wav.getRawSamples();
+ int sampleRate = wav.sampleRate;
+ int channels = wav.channels;
+ int byteWidth = wav.sampleWidth;
+ rsp = sr.Recognite(sampleBytes, sampleRate, channels, byteWidth);
+ System.out.println(rsp.statusCode);
+ System.out.println(rsp.statusMessage);
+ System.out.println(rsp.result);
+
+ // ============================================
+ // 调用ASRT声学模型识别语音序列
+ wavBytes = Common.readBinFile(filename);
+ wav = new Wave();
+ wav.deserialize(wavBytes);
+ sampleBytes = wav.getRawSamples();
+ sampleRate = wav.sampleRate;
+ channels = wav.channels;
+ byteWidth = wav.sampleWidth;
+ rsp = sr.RecogniteSpeech(sampleBytes, sampleRate, channels, byteWidth);
+ System.out.println(rsp.statusCode);
+ System.out.println(rsp.statusMessage);
+ System.out.println(rsp.result);
+
+ // ============================================
+ // 调用ASRT语言模型识别拼音序列1
+ String[] pinyins = ((String)rsp.result).split(", ");
+ rsp = sr.RecogniteLanguage(pinyins);
+ System.out.println(rsp.statusCode);
+ System.out.println(rsp.statusMessage);
+ System.out.println(rsp.result);
+
+ // ============================================
+ // 调用ASRT语言模型识别拼音序列2
+ pinyins = new String[]{"ni3", "hao3", "a1"};
+ rsp = sr.RecogniteLanguage(pinyins);
+ System.out.println(rsp.statusCode);
+ System.out.println(rsp.statusMessage);
+ System.out.println(rsp.result);
+
+ }
+
+}