Author: digitaleagle

VMWare Updated to 4.0.2 on Ubuntu 11.10

Today, my VMWare just offered to update!  Now, I have the new 4.0.2 version:

The update was great.  I wish other software vendors could make their updates this easy!  I just stepped through the Wizard, and before too long, I have the latest and greatest installed.

You can read the changes in the new version here: VMware Player 4.0.2 Release Notes.

I have been having trouble with the VMWare Tools update hanging.  It would download and install forever, and I couldn’t close the window.  With the new version, it finished and installed–no problem.

Another new feature that I just noticed was the Shared Folders.  I am not sure if this is new to this version or not.  I had been looking for Shared Folders, but I hadn’t been able to find them.  Now, they are an option in the machine settings:

Voice Recognition in Ubuntu

Someone asked me about voice recognition the other day, so I thought it sounded like a fun little project to master.  Here’s my go at it.

Unfortunately, I didn’t have much luck with it.  Please post a comment if you get more working than I did.

Which Package to Install

I did a little research, and found that Wikipedia has a nice list of open source speech recognition programs.  While it’s not huge, it was a good place to start.  I chose Julius because it looked the most promising.

Installing Julius

Since Julius is in the repositories, installing it was easy!  I just installed it from the Software Center.

Installing Julius with the Software Center

I went a step further and installed the voxforge accoustic files from the “More Info” screen.

From what I can tell, there is no gui for julius (although, the project Simon might be a frontend for it).  You should find it installed on the command-line though:

$ which julius
/usr/bin/julius
$ julius -help

Running Julius

Looking at the options, my first attempt was:

$ julius -input mic
ERROR: m_chkparam: you should specify at least one LM to run Julius!

The next thing I found was the VoxForge quickstart.  I downloaded the tarball, and extracted it:

$tar -xzvf julius-3.5.2-quickstart-linux.tgz
$cd julius-3.5.2-quickstart-linux/
$ julius -input mic -C julian.jconf

That was closer, but it gave me this message at the end of all the output:


------
### read waveform input
Stat: adin_oss: device name = /dev/dsp (application default)
Error: adin_oss: failed to open /dev/dsp
failed to begin input stream

Adding padsp in front of the command fixed that problem:

$ padsp julius -input mic -C julian.jconf

I still got warnings though…


### read waveform input
Stat: adin_oss: device name = /dev/dsp (application default)
Stat: adin_oss: sampling rate = 16000Hz
Stat: adin_oss: going to set latency to 50 msec
Stat: adin_oss: audio I/O Latency = 32 msec (fragment size = 512 samples)
STAT: AD-in thread created
<<< please speak >>>Warning: adin_oss: no data fragment after 300 msec?
Warning: adin_oss: no data fragment after 300 msec?
Warning: adin_oss: no data fragment after 300 msec?

If you open the Sound Settings, the warnings go away.  I thought was kind of flakey, but it worked.  Unfortunately, the output was a little cryptic, and didn’t give me the feedback that I needed.  This is what I get when I said, “Hello”:


pass1_best: <s> DIAL EIGHT
pass1_best_wordseq: 0 3 5
pass1_best_phonemeseq: sil | d ay ax l | ey t
pass1_best_score: -3177.784424
### Recognition: 2nd pass (RL heuristic best-first)
STAT: 00 _default: 13 generated, 13 pushed, 5 nodes popped in 109
sentence1: <s> DIAL OH </s>
wseq1: 0 3 5 1
phseq1: sil | d ay ax l | ow | sil
cmscore1: 1.000 1.000 0.997 1.000
score1: -3393.694580

Running from a Recording

I probably could have used audacity much more easily, but since I was already on the command line, I decided to keep it there with the arecord program.  I used this line to record:

$ arecord -r 16000 > test.wav

I played it back and it sounded kind of rough, but we’ll try it —

$ mplayer test.wav

Next, I ran it through julius:


$ ls test.wav > test.txt
$ julius -input rawfile -filelist test.txt -C julian.jconf

Unfortunately, mplayer could play the file, but julius could not open it for some reason.


### read waveform input
Error: adin_file: bytes per second != 32000 (16000)
Error: adin_file: error in parsing wav header at test.wav
Error: adin_file: failed to read speech data: "test.wav"
0 files processed

So, I found an example that used sox to convert it.  I had to install sox with apt-get …

sudo apt-get install sox

Then, I converted the file and ran it like this:

$ sox test.wav -r 16000 -b 32 -c 1 test.s32
$ ls test.s32 > test.txt
$ julius -input rawfile -filelist test.txt -C julian.jconf

Still, this is the only output that I got:


### Recognition: 1st pass (LR beam)
...........................................................................................................................pass1_best: <s>
pass1_best_wordseq: 0
pass1_best_phonemeseq: sil
pass1_best_score: -2712.263916
### Recognition: 2nd pass (RL heuristic best-first)
WARNING: IW-triphone for word head "l-ow+t" not found, fallback to pseudo {ow+t}
WARNING: IW-triphone for word head "ow-ow+t" not found, fallback to pseudo {ow+t}
WARNING: IW-triphone for word head "t-ow+t" not found, fallback to pseudo {ow+t}
WARNING: IW-triphone for word head "uw-ow+t" not found, fallback to pseudo {ow+t}
WARNING: 00 _default: hypothesis stack exhausted, terminate search now
STAT: 00 _default: 0 sentences have been found
WARNING: 00 _default: got no candidates, search failed
STAT: 00 _default: 147 generated, 147 pushed, 147 nodes popped in 123
<search failed>
------
### read waveform input
1 files processed

I used audacity to cleanup the file.  The Noise Removal improved it somewhat, but it still wasn’t good quality.  Here’s the output after that:


### read waveform input
Stat: adin_file: input speechfile: test.wav
STAT: 30000 samples (1.88 sec.)
STAT: ### speech analysis (waveform -> MFCC)
### Recognition: 1st pass (LR beam)
..........................................................................................................................................................................................pass1_best: <s> DIAL OH </s>
pass1_best_wordseq: 0 3 5 1
pass1_best_phonemeseq: sil | d ay ax l | ow | sil
pass1_best_score: -5237.150391
### Recognition: 2nd pass (RL heuristic best-first)
STAT: 00 _default: 27 generated, 27 pushed, 5 nodes popped in 186
sentence1: <s> DIAL OH </s>
wseq1: 0 3 5 1
phseq1: sil | d ay ax l | ow | sil
cmscore1: 1.000 0.978 0.987 1.000
score1: -5225.757324
------
### read waveform input
1 files processed

I also tried creating a file from scratch in audacity, and I still couldn’t get it:


### read waveform input
Stat: adin_file: input speechfile: test.wav
STAT: 21176 samples (1.32 sec.)
STAT: ### speech analysis (waveform -> MFCC)
### Recognition: 1st pass (LR beam)
..................................................................................................................................pass1_best: <s> DIAL OH
pass1_best_wordseq: 0 3 5
pass1_best_phonemeseq: sil | d ay ax l | ow
pass1_best_score: -3417.226318
### Recognition: 2nd pass (RL heuristic best-first)
STAT: 00 _default: 23 generated, 23 pushed, 5 nodes popped in 130
sentence1: <s> DIAL OH </s>
wseq1: 0 3 5 1
phseq1: sil | d ay ax l | ow | sil
cmscore1: 1.000 0.911 1.000 1.000
score1: -3453.692871
------
### read waveform input
1 files processed

Running on YouTube Videos

My next task that I wanted to attempt was to try to capture something on a good recording.  So, let’s find a good YouTube video to run through julius.

I tried clive, but it failed for some reason:

$sudo apt-get install clive

$ clive -cnrf best http://www.youtube.com/watch?v=dePLd9HAYjQ
fetch http://www.youtube.com/watch?v=dePLd9HAYjQ ...done.
error: no match: `(?-xism:url_encoded_fmt_stream_map=(.*?)&)'

So, I went back to my tried and true Video Downloader Firefox extension.  Here is the first video that I tried:

For God So Loved The World (song and hymn history) 

I converted the flv file to a wav like this:

ffmpeg -i youtube.flv -vn -acodec pcm_s16le -ar 16000 -ac 1 -f wav test.wav

And, I ran it through Julius like this:

$ ls test.wav > test.txt
$ julius -input rawfile -filelist test.txt -C julian.jconf

The end result was a segmentation fault!

I tried another one: Psalm 119 King James Holy Bible 

This one also have me a segmentation fault.

Another: Job 41 (King James Holy Bible) 

This one gave me this message:
....trace_backptr: sentence length exceeded ( > 150)

VoxForge Example

If you want to play with the VoxForge addon package, you can look at the readme file that should be located here:

/usr/share/doc/julius-voxforge/examples/README

 Here are all the files installed with it:
$ dpkg -L julius-voxforge
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/julius-voxforge
/usr/share/doc/julius-voxforge/copyright
/usr/share/doc/julius-voxforge/examples
/usr/share/doc/julius-voxforge/examples/controlapp
/usr/share/doc/julius-voxforge/examples/controlapp/mediaplayer.grammar
/usr/share/doc/julius-voxforge/examples/controlapp/command.py
/usr/share/doc/julius-voxforge/examples/controlapp/mediaplayer.voca
/usr/share/doc/julius-voxforge/examples/controlapp/README.controlapp
/usr/share/doc/julius-voxforge/examples/README
/usr/share/doc/julius-voxforge/examples/sample.grammar
/usr/share/doc/julius-voxforge/examples/sample.voca
/usr/share/doc/julius-voxforge/examples/julian.jconf.gz
/usr/share/doc/julius-voxforge/dict.gz
/usr/share/doc/julius-voxforge/changelog.Debian.gz
/usr/share/julius-voxforge
/usr/share/julius-voxforge/acoustic
/usr/share/julius-voxforge/acoustic/hmmdefs
/usr/share/julius-voxforge/acoustic/macros
/usr/share/julius-voxforge/acoustic/tiedlist

Resources

ICS ROM Update for HD2

My HD2 Phone
I decided it was time for a whole new post listing the latest Android 4.0/Ice Cream Sandwich ROMS for the HD2 phone.  A few new ones have popped up since my last list.Currently, I have been following Tytung’s ROMs.  I am on his NexusHD2-ICS-CM9 v1.2.  So, here is a list of links relating to his ROMs:

Here are a few more other ROMs out there:

Note: SportsStar89’s ROM is discontinued.  According to this post, he doesn’t have a working HD2 anymore.  Apparently, he dropped it, cracked the digitizer, and broke it more trying to repair it.
I have picked up a number of source sites from these links that would be handy for creating a ROM.

I can’t forget to mention the HD2 ROM site that lists all of the ROMs out there: HTC HD2 Android Roms/Builds.

Blog Moving Again

Ok, It is time to move the blog again!  But, this time you shouldn’t have to change your bookmarks!  I am just moving the website to new web host.

The transfer is supposed to be seamless, but I suspect you might see a little downtime over the next week as the domain re-registers and points to the new site.  If it’s not working, please give me some time and check back.

I’ll update you on the other side!

What App Can I Use for a Single Social Heaquarters?

This post is just a quick research into the different apps that attempt to unify all of the different social websites.  I just want one place to read the updates and one place to publish updates/thoughts.

For me, these are the sites that are on my radar:

Ok, so that’s the idea.  Here’s some applications that I found:

TweetDeck LogoTweetDeck

Links:

The interface looks cool.  It has multiple columns and you can add filters to show what you want in each column.  The only problem is that it seems limited to just one Twitter Account and/or one Facebook account.  Here’s the setting screen, and I don’t see where you can add anything else:

TweetDeck Settings Screen

Yoono Logo Yoono

Links:

This option looks pretty cool too.  They have a desktop app, browser app, and an iPhone app.  (What about Android?)  But, they don’t list Google Plus and Diaspora on their supported services list:

Yoono Supported Services

Hotot LogoHotot

Links:

This option looks very promising because of the extension support.  I couldn’t find any list of supported services, but it sounds like you could write an extension to support a new one if needed.  It is a desktop app with versions for Windows, Mac, and Linux.

Gwibber LogoGwibber

Links:

This project is an open source Linux desktop client.  It came preinstalled on my latest Ubuntu installation, so I will probably play with it the most.  It also doesn’t have Google Plus or Diasport, so I need to do some research there.

Gwibber Supported Services

Conculsion

I will have to report back if I find a solution that works well for me.  In the meantime, can you help?  Please comment if you have some a useful tool or method that helps you keep up with the “social” world.

Using My Phone for My Bible

A long time ago, I wrote about a an app called MySword.  Well, I have gotten to the point that I use that program exclusively for my Bible on my phone.  Let me walk you through how I use it, and please let me know if you have any suggestions.

You can install it from here:

Android Market: MySword from Riversoft Information System

Here are some of the advantages of using my phone like this over a regular Bible:

  • I mostly have it with me all the time — no need to carry something additional
  • Search — if someone mentions a verse without the reference, I can find it.
  • Commentaries, Strongs, etc.
  • Taking notes all in the same place

So, here’s what I do.  On one of my screens, I put the MySword on my desktop with BuzzOff.  (The BuzzOff allows me to turn the ringer off easily.)

Desktop with MySword on it

The first thing you will want to do is get all of the Modules that you want to use.  First, open the menu and choose the more option:

MySword Menu

On the more menu, you can choose to Download Modules:

Download Modules Menu Option

From the Download Modules Screen, you can get the different modules that you want:

Download Modules Screen

Another thing that took me a bit to figure out was how to get rid of the Strongs numbers.  I finally determined that you can switch them on and off by changing between KJV and KVJ Lite:

MySword: Bible Versions

Looking up versions works fine.  I like the way Virtue Bible works where you can see all of Bible Books at one time, but this works.  Maybe I could recommend that as a new feature — different verse selection options.  Here’s what the verse selector looks like:

MySword: Verse Selector

When I take notes, I use the Journal:

Select Journal Module

There are different types of Journals, and I am using the “My Church Notes”.

MySword: Journal Type

Here’s the New button and Edit button for creating notes:

New and Editing Journals

The one issue I found is that I can’t view a verse while editing the notes.  So, when the pastor makes reference to a verse, I have to Save the notes, go the passage, then go back and edit again.  So, there’s another feature request.

I still need to figure out how to:

  • Sync my “Journal”/Church Notes back to my computer/Xiphos
  • Convert my Sword modules from Xiphos to MySword

All in all, I really like the program, and I would recommend it as a Bible program for anyone.

ICS on HD2: Camera Now Somewhat Works!

This is a nice Christmas present: the camera now somewhat works on Tytung’s ICS Rom.

Here’s a screenshot just after I took a picture:

Camera on ICS

The preview doesn’t work.  As you can see, it is just black.  You can see the tiny thumbnail of the Christmas tree picture that I took though.  When I select the thumbnail, it comes up like this:

Picture Taken with ICS

Unfortunately, the phone keeps rebooting with the Camera application.  I still not exactly sure what causes it.  I tried to capture a log, but the app/phone wouldn’t cooperate.  EdJones88 posted a work around to keep it from rebooting, but it is kind of impractical as far as I am concerned.

You can checkout my list of ICS Roms and watch as the ROM developers get things working.

Software to Watch: Vi Everywhere!

I made an effort several years ago to learn the vi key commands, and I have learned to like that user interface.  The key combinations may take a bit to learn, but once you learn them, you can move around and edit quickly.  I am always up for adding the Vi interface to more and more.

I found a web browser that uses similar key combinations:

S3hh Blog: Vimprobable web browser

You can read more about Vimprobable on the SourceForge Project Homepage.

To install the browser, I added the repository with this command:

sudo add-apt-repository ppa:serge-hallyn/vimprobable
sudo apt-get update

I used the Software Center to install it:

Installing Vimprobable

Or, you could just run:

sudo apt-get install vimprobable2

After it installs, you should find it in your menu:

Vimprobable in the Menu

Here’s what the browser looks like:

Vimprobable

You can use J and K to move up and down in the page.  o will open a page in the current window.  / will search.  f will follow links.  y will copy the URL of your current page.  H goes back to the previous page.  You see the complete list on the Keybindings page.

The f command is pretty cool.  You can select your link with a number.  I pressed f on the project home page and I can go to the keybindings page by pressing 4.

Follow mode in Vimprobable

The open command will also search when you don’t enter a URL.  I typed “o digitaleagle”, and I got this:

Vimprobable Search

If you’re not ready to bite off a whole new browser, you can settle for a plugin.  S3hh also mentions a few more plugins to Chrome and Firefox:

I’ll spend some time messing with the vrome.  I’ll have to report back after some time using it.

If I had a request for a vim-like tool, I would ask for a compiz-fusion tool.  I want something where I can use vim-like keyboard shortcuts to navigate and control windows.  Maybe it could use the F12 key or scroll lock instead of Escape.

If you’re still not satisfied with these tools, here are some more that I ran across in my search.  (I didn’t have a chance to try all of them out):

Swype Works on ICS for me

I read on Engadget that Swipe was having some troubles on Android 4.0/Ice Cream Sandwich.  Of course, they are talking about the Galaxy Nexus, and I am running it on my HD2, so maybe that is why it is different.  Here’s what it looks like:

Swype in Action

I installed the Swype from their beta website.  If you want to get your own you can head here:

Swype Beta

Here’s a few more screenshots:

Swype in Settings

And here’s the actual settings for Swype.

Swype Settings