diff --git a/JavaApp/src/main/java/com/mojang/text2speech/Narrator.java b/JavaApp/src/main/java/com/mojang/text2speech/Narrator.java new file mode 100644 index 00000000..d973759b --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/Narrator.java @@ -0,0 +1,20 @@ +package com.mojang.text2speech; + +public interface Narrator { + void say(final String msg, final boolean interrupt); + + void clear(); + + boolean active(); + + void destroy(); + + static Narrator getNarrator() { + return new NarratorDummy(); + } + + static void setJNAPath(String sep) { + System.setProperty("jna.library.path", System.getProperty("jna.library.path") + sep + "./src/natives/resources/"); + System.setProperty("jna.library.path", System.getProperty("jna.library.path") + sep + System.getProperty("java.library.path")); + } +} diff --git a/JavaApp/src/main/java/com/mojang/text2speech/NarratorDummy.java b/JavaApp/src/main/java/com/mojang/text2speech/NarratorDummy.java new file mode 100644 index 00000000..77156c99 --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/NarratorDummy.java @@ -0,0 +1,21 @@ +package com.mojang.text2speech; + +public class NarratorDummy implements Narrator { + @Override + public void say(final String msg, final boolean interrupt) { + } + + @Override + public void clear() { + } + + @Override + public boolean active() { + return false; + } + + @Override + public void destroy() { + + } +} diff --git a/JavaApp/src/main/java/com/mojang/text2speech/NarratorLinux.java b/JavaApp/src/main/java/com/mojang/text2speech/NarratorLinux.java new file mode 100644 index 00000000..aba33507 --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/NarratorLinux.java @@ -0,0 +1,4 @@ +package com.mojang.text2speech; + +public class NarratorLinux extends NarratorDummy { +} \ No newline at end of file diff --git a/JavaApp/src/main/java/com/mojang/text2speech/NarratorOSX.java b/JavaApp/src/main/java/com/mojang/text2speech/NarratorOSX.java new file mode 100644 index 00000000..d109a9aa --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/NarratorOSX.java @@ -0,0 +1,4 @@ +package com.mojang.text2speech; + +public class NarratorOSX extends NarratorDummy { +} diff --git a/JavaApp/src/main/java/com/mojang/text2speech/NarratorWindows.java b/JavaApp/src/main/java/com/mojang/text2speech/NarratorWindows.java new file mode 100644 index 00000000..3643ccca --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/NarratorWindows.java @@ -0,0 +1,4 @@ +package com.mojang.text2speech; + +public class NarratorWindows extends NarratorDummy { +} diff --git a/JavaApp/src/main/java/com/mojang/text2speech/Text2Speech.java b/JavaApp/src/main/java/com/mojang/text2speech/Text2Speech.java new file mode 100644 index 00000000..3d503e77 --- /dev/null +++ b/JavaApp/src/main/java/com/mojang/text2speech/Text2Speech.java @@ -0,0 +1,17 @@ +package com.mojang.text2speech; + +public class Text2Speech { + public static void main(final String[] args) { + System.setProperty("jna.library.path", "./src/natives/resources/"); + final Narrator narrator = Narrator.getNarrator(); + narrator.say("This is a test", false); + + while (true) { + try { + Thread.sleep(100); + } catch (final InterruptedException e) { + e.printStackTrace(); + } + } + } +}