2006-03-24

ScanSoft RealSpeak 3.51 for Linux

hi,


A small description about the procedure how I installed it (and use it) on my
Debian Sarge system.


I have been demonstrated that the same procedure worked for Ubuntu 6.06.


Here we go.


Install


The scansoft realspeak host 3.51 provides two .rpm files:

  • rs-api-<version-stuff>.rpm (for developpers)
  • rs-<lang>-<version-stuff>.rpm (the language data).

The indication <lang> is different for every language-package. Belgian Dutch for instance gives us "dub".


For ease of use (especially installation) on a .deb based system (like debian, ubuntu,...), we convert these packages using alien:


fakeroot alien rs-api-3.51.00.02-1.i386.rpm
fakeroot alien rs-dub-3.51.00.02-1.i386.rpm



Then follows installation:


sudo dpkg -i rs-api_3.51.00.02-2_i386.deb
sudo dpkg -i rs-dub_3.51.00.02-2_i386.deb



By this, the ScanSoft (RealSpeak) files are put into /opt/scansoft.


To allow applications to reach the libraries, I added to /etc/ld.so.conf a line:


/opt/scansoft/engine


Followed by execution of sudo /sbin/ldconfig to apply these changes.

Test/Usage


ScanSoft RealSpeak comes with a couple of demos, which can be used to test the functioning. One of them, standard just converts a text into a raw file.

cd /tmp
echo "This is the text I want to be converted to speech by Scansoft." >> text.txt
/opt/scansoft/tts/api/demos/standard 0 0 /opt/scansoft/tts/engine /tmp/text.txt


The values 0 and 0 in the example, select American English (first zero) and a Female voice (second zero). The value(s) corresponding to your language-package might differ.


My system having female flemish (belgian dutch) speaker, uses 14 resp. 0. In the code-directory of rs-api, you'll find the correct values. Read /opt/scansoft/tts/api/inc/lh_ttsso.h to find the corresponding values.

Look for a line like:

#define TTS_LANG_<YOURLANGUAGE> <number>

that will give you the language number.


Above code snippet will write in the /tmp directory a file called standard.pcm. This file can be auditioned using:


play --type=raw --channels=1 --rate=8000 -s -2 --endian=little standard.pcm

play is provided by the sox package.
I used a version d.d. 2007-01-31. (version 13.0.0-1).

For an older version (Debian ETCH uses sox 12.17.9-1), you could try:

play -t raw -c 1 -r 8000 -f s -s w standard.pcm


or you could install the alsa-utils-package, and use aplay:

aplay --type=raw --channels=1 --rate=8000 --format=S16_LE standard.pcm

You even might want to convert the audio-file to an mp3-file:

lame -r -m m -s 8 -x standard.pcm standard.mp3



Note that the last 3 seconds of the audio might not be played. This seems to have something to do with the rudimentary way of playing them. Use another player and it might work as expected.

Labels: , , ,

2006-03-02

keyboard Inspiron 8000 (unresponsive [F6]6yhn[F7]7ujm)

Problem:
Occasionaly the Inspiron 8000 Laptop doesn't register certain key-pressing on the "internal" keyboard (the two diagonal rows of keys of [F6] to n and [F7] to m)

Discussion:
After a thorough checking of sollutions on Dell-forums, I discovered this problem to be recurrent with some users, sometimes with other keys. See
This link at Dell-discussion forum

I also discovered that if the machine is run with the lid closed for a prolonged time, the chance of provoking the problem is enlarged, which could indicate a heat-dissipation problem, which also explains the positive response on dismanteling and cleaning 'cause during this operation the system - obviously - cools down.

Partial (Temporarily) Solutions:
  • While looking for a solution, I discovered that lifting the machine at its left-front corner (the [ctrl] and [fn]-key corner), and "twisting" the machine a little, could cause the keys to respond again.
  • After reading the forum, I also cleaned the keyboard (dismanteled the laptop, blew out the keyboard etc....). After this procedure the problem did not return for about 2 to 3 months. Later occurrences of the problem and then cleaning out the keyboard (even though nothing like dust or spilling was found) resulted in some restoration.

Labels: ,

Reboot your DOS machine through command-line

Running Dos is no problem, but sometimes you want to reboot your system, use it in a batch-file or so, when you can't press CTRL+ALT+DEL.

Then you can use this: start
debug


Then enter these lines:
n reboot.com
rcx
12
a 100
mov ax,40
mov bx,72
mov cx,1234
mov ds,ax
mov [bx],cx
jmp ffff:0000

w
q

Note the empty line prior to the w (write). This indicates to press ENTER twice (once to close the line
jmp ffff:0000
and once to close the Assembly-modus (started at the line
a 100


This procedure will produce a reboot.com executable which should reboot your DOS-computer.

MIDI to WAV conversion

Situation:
I was having a couple of MIDI files that I wanted (needed) to put on music CD's. My way was to convert them first to wav or mp3 files, prior to putting them on CD using a program like Ahead Nero (you can find it if your writer was not providing it).

Tools:
TiMidity++ is a converter that converts some MIDI files into audio-files (like RIFF WAVE).

These Distributions came with an "enough" configured timidity-package out of the box:

  • SuSE 9.0 (YaST - Software - timidity)
  • Debian 3.1a (apt-get install freepats timidity timidity-interfaces-extra)

If you have a TiMidity installation that's well-configured (capable of playing a midi-file on your (linux-) system), you'll be able to use it to save wav files.

Short way:

timidity --output-mode=w --output-file=result.wav source.mid

Long way:
You can first check your player, if at least it produces correct audio (through the speakers of the system) by executing

timidity source.mid

If this doesn't produce correct (evt. musical) sound, you should check the configuration of your timidity, prior to continuing here.

Using this command-line instruction, you create the wav file of the a midi file.

timidity --output-mode=w --output-file=result.wav source.mid

I use to reduce size of the files:

timitidy --sampling-freq=16000 --output-mode=w --output-file=result.wav source.mid
If I want only one single voice (or mute some channels), I use:
timidity --mute=0,-4 --output-mode=w --output-file=result.wav source.mid
This previous example mutes all voices (0) and then de-mutes voice 4 (in my case almost always the bass-line).

Labels: , , ,

Computer Desktop Trouble

BULLOCKS, Bullocks, bullocks,

Situation
My Desktop system (Dell Dimension 8200) is getting on my nerves.
I'm running Windows XP Professional SP2.
The screen switches off every time some change is applied to the display, and then it returns active (the screen). These changes include moving of a window, resizing a window, and sometimes switching windows (changing focus). Almost all redraw causes multiple screen-flickers (with too much a delay like 2 secondseconds) while each component is drawn, causing like 10 to 50 blinks before a single dialog-box is displayed.
  • When launching the OS in VGA-modus, (640x480 or 800x600), the problem doesn't occur. Even changing resolution within this VGA modus, is no problem. But as soon as the OS discovers the Video-card and charges its specific driver, the blinking starts and it's no friendly eye-blink (anymore).
Trials
  • Replacing the hardware graphics adapter (nVidia GeForce 4 for an MSI ATI 9250) didn't solve the problem. Although it seems that ATI doesn't have the problem in lower resolutions, but at 1600x1200 it does.
  • The cable between adapter and dispaly doesn't seem to be at fault since the problem occurs both when connected using a VGA- and a DVI-cable.
  • The Display (LCD) doesn't seem to be malfunctioning when attached to another system and also running in 1600x1200.
  • Even the OS is not at fault since another harddisk was inserted, and a NEW installation from scratch was performed and... once again the blinking starts annoying me.
  • A memtest86 of the memory passes without glitch.
What remains....
  • motherboard should be replaced to test its fault, but could be difficult since specific format for the DELL airduct over processor
  • processor could be at fault, but don't think so
  • memory ... but is expensive to test.
brhhhrhrhrh
I'm really getting it on my nerves.

Temporary Fix
When fidging with the advanced settings of the Display Adapter interface, I disabled *ALL* Hardware Accellerated activities, and this seems to solve the problem. Even the smallest acceleration allowed, restarts the problem.
Of course this prevents me from playing the super-game "Spacetripper"..., and so probably other programs as well which still need to be discovered.
But I'm working again.

Labels:

Airport Express client in hidden WEP protected web

Summary
Tips on how to connect an Aiport Express within an WEP-encrypted hidden-SSID wireless network using a MSWindows PC.

The Introduction

I recently bought an Airport Express. Cool device to allow (apple) Itunes to output audio over wifi-network through a 3mm jack.
Now I already *have* a non-published (hidden SSID) WEP128 "protected" WIFI-web. And I wanted this Airport Express to join this network. (Unfortunately one WIFI device can only be connected to one Wireless Network at a time (or so I believe), otherwise I would have separated the Audio-web from the file-web).
Running Windows 2000 and WinXP Pro

The fast tips:
  1. Connect to your Airport Express through the web it offers (easiest through Wireless (Airport Express runs dhcp deamon on its wireless network named LIKE "Apple Network bdf213")
  2. password of a non-configured Airport Express is "public" [1]
  3. configure your WEP using hex-string but PRECEDE IT by "$".
    like: "$ab12f42042c41314243212aadd"
    The configuration utility will discover if NO Hex-string is put, (like it contains a "t"), but apparently without the "$" character in front of the WEP-key, it doesn't connect. [2]
The (unfullfilled?) desires:
  • allow iTunes to simultaneously play different songs on different Airport Express connected speakers (currently is possible using VMWare so running two instances of iTunes, but seems a huge overkill).
  • Join the airport express with an existing WIFI network, AND let it function as switch(router) for a new (evt. DHCP-fed) network through the ethernet port
  • Attach an iPod to the USB-connector of the Airport Express (downstairs) and thus read/connect it to iTunes on the machine upstairs (over airport)
The Long way:
I installed the Apple Software to configure the Airport Express device. During installation, the Windows 2000 system complained (actually the installation routine complained on the Windows 2000 installation) and refused to install. The website of apple gave another copy of the software (select on apple.com the "Support" tab and then search for "Airport Express" will return amongst others a link "airport 4.2 for Windows" (version as of this writing)).
This newly downloaded software installed in Win2KPro, and only complained about the "Airport Setup Assistant" Wizard that won't be installed, but at least the installation procedure continues.

The Admin utility found the Wireless network "Apple Network aabbcc" with aabbcc the last 6 hex-digits of the WIFI-MAC address (which can be found on the label on the device next to "Airport ID" indication).

Configuring machine (my PC) apparently should be connected and configured on the network that's created by the Airport Express (running a DHCP-server), otherwise the device doesn't seem to respond. It is detected but when the Apple-program (admin) tries to read the current settings, it asks a password and fails with an error-code like "-7635").

Then Finaly I found the step by step instruction on Apples website [3], with the most important link to "joining a third-party WEP-protected network" [2].

Links:
[1] "public" password http://docs.info.apple.com/article.html?artnum=107454
[2] "$" in front of Hex-WEP pwd http://searchdocs.info.apple.com/article.html?artnum=300153&coll=cp
[3] how to join an existing... http://searchdocs.info.apple.com/article.html?artnum=302153&coll=cp

Labels: , , ,