Jump to content

C64 SAM (Software Automatic Mouth) as Text2Speech in armbian


guidol

Recommended Posts

Maybe someone does know the old/historical SAM (Software Automatic Mouth) speech synthesizer for the Commodore 64?

 

Today I did found the github-page with the source-code and compiled it on my Orange Pi R1 - using armbian :)

 

For compiling the default SDL-version I had to install the 2 additional packages with apt

- libsdl1.2-dev 

- libsdl1.2debian

before SAM did compile on armbian.

 

I also did try libsdl2-2.0.0 (and -dev), but this didnt worked well while compiling :(

 

The souce-code could be found at:

https://github.com/s-macke/SAM

 

Hear here, how this OLD speech synthesizer sounds :)
https://www.youtube.com/watch?v=Rm4ZCGgzeeU

 

 

Test him ONLINE:
https://simulationcorner.net/index.php?page=sam

 

Or read about him in the Wikipedia:

https://en.wikipedia.org/wiki/Software_Automatic_Mouth

Link to comment
Share on other sites

Tested SAM again and here some infos for compile and usage ( if you have a "late switching" amplifier on your SBC) :


If you want to use direct output via sdl instead of generating .wav / using aplay the .wav
( libsdl2-2.0-0 libsdl2-dev doenst work with SAM ):
------------------------------------------------------------------------------------------
apt install libsdl1.2-dev libsdl1.2debian

wget https://github.com/s-macke/SAM/archive/master.zip -O SAM_original_master.zip
unzip SAM_original_master.zip
cd SAM-master

edit flags in Makefile if you want to use of Non-SDL (and save 30MB download and 300MB on HDD)

make


./sam 'Hello, how do you do?'
./sam -wav sam_ouput.wav 'Hello, how do you do?' && aplay ./sam_output.wav

Creating a empty .wav for activating the amplifier:
---------------------------------------------------
./sam -wav /home/guido/SAM-master/sam_empty.wav ''
 
Shell-Script waiting for audio-amplifier to be ready:
-----------------------------------------------------

# Non-SDL sam_amp_nonsdl.sh
# ========================================
./sam -wav /tmp/sam_output.wav $1
aplay /home/guido/SAM-master/sam_empty.wav 2> /dev/null
sleep 1
aplay /tmp/sam_output.wav 2> /dev/null
rm /tmp/sam_output.wav
# ========================================

OR

# SDL sam_amp_sdl.sh
# ========================================
aplay /home/guido/SAM-master/sam_empty.wav 2> /dev/null
sleep 1
./sam $1
# ========================================


Examples:
------------------------------------------
./sam_amp_nonsdl.sh 'My name is SAM'
./sam_amp_sdl.sh 'My name is SAM'

 

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines