An extension for MIT App Inventor 2.
PlayAI TTS Extension to generate and play audio using PlayAI models running 10x faster on Groq. My other extensions Built by Sarthak Gupta
Specifications
Package: com.playai Size: 59.61 KB Version: 1.0 Minimum API Level: 7 Updated On:2025-05-22T18:30:00Z Built & documented using:FAST v3.4.0
Voice Demo
The demo files are generated using the PlayAI Extension! These are the demo voices of 4 models. We have 30+ voices to choose from.
Events:
PlayAI has total 2 events.
AudioGenerated
Triggered when audio is successfully generated. Returns the file path to the mp3 file
Parameter
Type
filePath
text
ErrorOccurred
Triggered when an error occurs during audio generation or playback
Parameter
Type
errorMessage
text
Methods:
PlayAI has total 2 methods.
GenerateAudio
Generates TTS audio from the input text using the Groq API
Parameter
Type
text
text
PlayTTS
Plays the TTS audio file at the specified file path
The documentation of all blocks is available above.
Just set your api key from the Groq console. Generate tts and play it using the blocks.
Its that simple. If you want I will send a sample aia.
Hello,
I tried to compile my project using this extension with MIT app inventor and received all possible errors. The list was really long. Does this extension work only with Kodular? I used the paid version of it. I can enclosure the error list.
I made a sample app and compiled in both appinventor and kodular. No errors at my end. Would you please share the AIA privately in my dm along with the error log.
Thanks for your answer. Here is the full error log:
App Inventor is unable to compile this project.
The compiler error output was
[ReadBuildInfo] Starting Task
[ReadBuildInfo] Task succeeded in 0.004 seconds
[LoadComponentInfo] Starting Task
[LoadComponentInfo] INFO: Generating assets...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify assets
[LoadComponentInfo] Component assets needed, n = 0
[LoadComponentInfo] INFO: Generating activities...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify activities
[LoadComponentInfo] Component activities needed, n = 1
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify activityMetadata
[LoadComponentInfo] Component activity metadata needed, n = 0
[LoadComponentInfo] INFO: Generating broadcast receivers...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify broadcastReceivers
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify contentProviders
[LoadComponentInfo] INFO: Generating libraries...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify libraries
[LoadComponentInfo] Libraries needed, n = 0
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify metadata
[LoadComponentInfo] Component metadata needed, n = 0
[LoadComponentInfo] INFO: Generating Android minimum SDK...
[LoadComponentInfo] INFO: Generating native libraries...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify native
[LoadComponentInfo] Native Libraries needed, n = 0
[LoadComponentInfo] INFO: Generating permissions...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify permissions
[LoadComponentInfo] usesLocation = False
[LoadComponentInfo] Permissions needed, n = 5
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify queries
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify services
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify xmls
[LoadComponentInfo] Component xmls needed, n = 0
[LoadComponentInfo] INFO: Generating component broadcast receivers...
[LoadComponentInfo] INFO: Component "com.playai.PlayAI" does not specify broadcastReceiver
[LoadComponentInfo] Task succeeded in 0.005 seconds
[PrepareAppIcon] Starting Task
[PrepareAppIcon] INFO: Creating mipmap dirs...
[PrepareAppIcon] INFO: Generating icons...
[PrepareAppIcon] Generating icons for mipmap-mdpi
[PrepareAppIcon] Generating icons for mipmap-hdpi
[PrepareAppIcon] Generating icons for mipmap-xhdpi
[PrepareAppIcon] Generating icons for mipmap-xxhdpi
[PrepareAppIcon] Generating icons for mipmap-xxxhdpi
[PrepareAppIcon] Task succeeded in 0.973 seconds
[XmlConfig] Starting Task
[XmlConfig] INFO: Creating animation xml
[XmlConfig] Creating zoom_enter.xml
[XmlConfig] Creating fadeout.xml
[XmlConfig] Creating slide_v_exit.xml
[XmlConfig] Creating fadein.xml
[XmlConfig] Creating zoom_exit.xml
[XmlConfig] Creating slide_v_enter.xml
[XmlConfig] Creating zoom_exit_reverse.xml
[XmlConfig] Creating slide_v_enter_reverse.xml
[XmlConfig] Creating zoom_enter_reverse.xml
[XmlConfig] Creating slide_enter_reverse.xml
[XmlConfig] Creating slide_exit.xml
[XmlConfig] Creating hold.xml
[XmlConfig] Creating slide_enter.xml
[XmlConfig] Creating slide_v_exit_reverse.xml
[XmlConfig] Creating slide_exit_reverse.xml
[XmlConfig] INFO: Creating style xml
[XmlConfig] INFO: Creating provider_path xml
[XmlConfig] INFO: Creating network_security_config xml
[XmlConfig] INFO: Generating adaptive icon file
[XmlConfig] INFO: Generating round adaptive icon file
[XmlConfig] INFO: Generating adaptive icon background file
[XmlConfig] Task succeeded in 0.003 seconds
[CreateManifest] Starting Task
[CreateManifest] INFO: Reading project specs...
[CreateManifest] VCode: 1
[CreateManifest] VName: 1.0
[CreateManifest] Min SDK 19
[CreateManifest] INFO: Writing screen 'appinventor.ai_akowalski25.Voice.Screen1'
[CreateManifest] Task succeeded in 0.001 seconds
[AttachNativeLibs] Starting Task
[AttachNativeLibs] Task succeeded in 0.0 seconds
[AttachAarLibs] Starting Task
[AttachAarLibs] Task succeeded in 0.126 seconds
[AttachCompAssets] Starting Task
[AttachCompAssets] Task succeeded in 0.0 seconds
[MergeResources] Starting Task
[MergeResources] Task succeeded in 0.194 seconds
[SetupLibs] Starting Task
[SetupLibs] Task succeeded in 0.0 seconds
[RunAapt] Starting Task
[RunAapt] Task succeeded in 0.817 seconds
[GenerateClasses] Starting Task
[GenerateClasses] INFO: Source File: appinventor/ai_akowalski25/Voice/Screen1.yail
[GenerateClasses] INFO: Libraries Classpath = /tmp/kawa12559937867966990576.jar:/tmp/acra-4.4.014841725256258602313.jar:/tmp/AndroidRuntime12006070000021666008.jar:/tmp/annotation9784679111952459818.jar:/tmp/annotation-experimental16048271374563581493.jar:/tmp/appcompat13241813506037024643.jar:/tmp/asynclayoutinflater5088565286526182665.jar:/tmp/collection12786657214033236159.jar:/tmp/constraintlayout12265285753321060228.jar:/tmp/constraintlayout-solver17739279307806675273.jar:/tmp/coordinatorlayout3545741238893000499.jar:/tmp/core12161058660408587513.jar:/tmp/core-common334827800618711545.jar:/tmp/core-runtime12561857673542815962.jar:/tmp/cursoradapter5245921681067400839.jar:/tmp/customview18111338610214756453.jar:/tmp/documentfile9828806384508090068.jar:/tmp/drawerlayout8857969777303332235.jar:/tmp/fragment14163066329935026491.jar:/tmp/interpolator10342838616781720261.jar:/tmp/legacy-support-core-ui10210487622128274107.jar:/tmp/legacy-support-core-utils13374101867761424024.jar:/tmp/lifecycle-common11894174719267465829.jar:/tmp/lifecycle-livedata14609612817217936464.jar:/tmp/lifecycle-livedata-core8989620650692489181.jar:/tmp/lifecycle-runtime10043269590777434350.jar:/tmp/lifecycle-viewmodel10181062907817321524.jar:/tmp/loader12076007037474683901.jar:/tmp/localbroadcastmanager16912467500645115124.jar:/tmp/print5845066956164307328.jar:/tmp/slidingpanelayout16542510155397261168.jar:/tmp/swiperefreshlayout2359723971268921742.jar:/tmp/vectordrawable8836489238739366773.jar:/tmp/vectordrawable-animated18262614521712835537.jar:/tmp/versionedparcelable9136134704115383885.jar:/tmp/viewpager14203709684841898714.jar:/tmp/1755418607932_7679419556380622848-0/youngandroidproject/../assets/external_comps/com.playai/files/AndroidRuntime.jar:/tmp/1755418607932_7679419556380622848-0/youngandroidproject/../build/classes:/tmp/android15374755344525610920.jar
[GenerateClasses] ERROR: Kawa compile has failed.
(compiling appinventor/ai_akowalski25/Voice/Screen1.yail to appinventor.ai_akowalski25.Voice.Screen1)
ERROR: appinventor/ai_akowalski25/Voice/Screen1.yail line 21: caught exception in inliner for # - java.lang.VerifyError: Expecting a stackmap frame at branch target 481
Hello
I think so you are a bit confused but lemme tell you that I am the developer of this extension. So I would be of better help to you. I instructed you to share the AIA with me privately so I will be able to fix it.
Please do the needful.