Thursday, July 31, 2008

Why do hams hate proprietary codecs?

Recently, WinDRM took down its downloads because it used the MELP codec by default for encoding voice. It was restored to change the default to an open-source codec. Read about it at ARRL's web site

I have heard people telling me they won't use D-Star because it uses the proprietary AMBE 2020 codec. Never mind that the rest of the protocol is free for amateurs to use.

The normal way these codecs are used is to embed them in a chip, which, when you pay for it, goes to license the intellectual property inside.

Think of it this way. DeForest vigorously defended his patents. You could use his tubes in your radio, but if you tried to copy his tube and sell it as your own, you got sued.

It gets more complicated in the WinDRM case, and the analogy gets a little frayed. WinDRM used a freely-available copy of what is normally sold by TI and other companies. Back in 1915, no one would think of making a copy of an Audion tube and giving it away, but imagine someone did. Maybe they hated Dr. DeForest. Do you think that it would go unchallenged?

TI and the other rights holders are protecting their interests. They winked at hams for a while, but no more. If they don't protect their interest in this codec, which is used by the US Department of Defense and others, they will appear to have abandoned it and will no longer be able to sell it.

Either buy the chips, license the codec (in which case you'd have to start charging for WinDRM) or come up with your own. Amateur HF digital voice is begging for an open-source codec with a similar performance. How about a homebrew transciever in QST that uses AMBE-2020 chips?

Friday, July 11, 2008

More AMSAT Website Hacking

AMSAT has a page that predicts satellite passes. My problem with it is that it lists ALL of the passes, including ones that just graze the horizon. I generally tend to avoid them.

The following bookmarklet clears out all passes from the table of results that are less than 30 degrees above the horizon. Go to the AMSAT Prediction and get a list of passes for a satellite. Then paste the following code in your browser's address window and tell it to go. It should shorten the table.

***UPDATE - An error crept in when I posted this before...I had the row variable running to row <= table5.rows.length, and it ran over the end of the table, giving errors. The version below seems to work better.

***UPDATE - Added a prompt for the minimum elevation.

javascript:(function(){var minElev=Number(prompt("Minimum Elevation","30"));var table5=document.getElementsByTagName('table')[5];var row=2;while(row<table5.rows.length){if(table5.rows[row].cells[4].innerText<minElev){table5.deleteRow(row);}else{row=row+1;}}})()

It works in IE 6 and Firefox 2.0.0.15.