|
Posted
over 18 years
ago
by
anthm
I recently read Roman Shaposhnik's blog entry about static linking:
http://blogs.sun.com/rvs/date/20070331
We sure can relate to this here at the FreeSWITCH camp so I thought I’d chime in.
I can provide a different perspective to this whole issue.
... [More]
Our project (FreeSWITCH) has much of its own code as well as a hefty list of dependency libraries for various add-on modules. Now as Roman said in his article in a *perfect* world where there was only 1 operating system and one entity managing the exact same environment I could simply demand that you have these various libraries installed on your system to use our software.
There are two major problems we face. The first problem is that one of our goals is to be cross-platform in the true sense of the phrase meaning we want to run on any OS *and* on any hardware we can. This alone is a nightmare in fact it’s the opposite of Roman’s perfect world its more like a chaotic anarchy because you have Windows, MacOSX, a dozen Linux sects, and Solaris all with different wants and needs. So when I try to compile our software on any one of these platforms I will certainly find *issues*. The plain truth of the matter is that that neither all of the maintainers or vendors of these platforms nor all of the developers of the dependency libraries we use are in the same hurry we are to make everything work perfectly. I also doubt they all share our interest in cross-platform support. This brings us to the second problem. If we are even lucky enough to find our dependency lib already on this particular platform how do we know they configured it right for the way we need it? Many packages have dozens of compile time flags that may or may not be set that we can’t live without or, on the other hand enable some *feature* that is not desirable. Also how do we package our software so we can politely request the dependency we need from all these different systems? There is only one choice. We have to keep our own copy of the code and build our own version of the library and since we don’t want to be rude and install it on someone’s system and we certainly don’t want to install a shared library to somewhere on the system only to have the application find the wrong one at runtime we simply statically link the library into our own loadable modules or our core where it will bother nobody and we can rest at night knowing it’s the same code we developed with. It has nothing to do with efficiency or being thrifty with disk space and memory usage for me I simply want my software to work. Now as a caveat, we do take the time once we have some code working well to determine if there is a well-known, easy-to-install or commonly pre-installed packaged version. If we can test it on all of our target platforms we are usually happy to work against that one instead. Btw, to date, the only one that seems to fit that bill is ODBC because it’s a well-defined permanent binary API that has numerous implementations. [Less]
|
|
Posted
over 18 years
ago
by
anthm
Well, one day after announcing the ability to converse with an N800 over mod_dingaling we can now actually *run* freeswitch on the N800.
If you want to try it out here is a binary snapshot: http://www.freeswitch.org/downloads/n800/
|
|
Posted
over 18 years
ago
by
anthm
We now have the initial interop complete for the Nokia N800 It can now be used to call mod_dingaling on FreeSWITCH.
|
|
Posted
over 18 years
ago
by
anthm
There was a nice breakdown of several popular open source VoIP apps posted on digg.com Today. Check it out.
|
|
Posted
almost 19 years
ago
by
anthm
I just completed a new module called mod_shout.
Using mod_shout you can do the following:
Record to an icecast stream anywhere you can normally record a file using a URL e.g. shout://login: [email protected]/mount.mp3
Play a stream or remote file
... [More]
anywhere you can normally play a file with a URL e.g. shout://host.com/mount.mp3
play and record .mp3 files to the local disk with the traditional file syntax e.g. local_file.mp3
It's hot off the press so it probably needs some testing so give it a shout ..err shot! [Less]
|
|
Posted
almost 19 years
ago
by
admin
We had a chance to play around on an Amazon Elastic Compute Cloud so we checked out a copy of FreeSWITCH then compiled and ran a conference on it. And it WORKED!
Amazon's EC2 is a web platform the can expand it's computational power on-the-fly to
... [More]
meet the load required using a clustering technology.
It's good to know that our "bend, but don't break" philosophy is paying off! [Less]
|
|
Posted
almost 19 years
ago
by
admin
We checked in mod_lumenvox this week an interface to the LumenVox ASR engine.
More information in the Commit Log.
|
|
Posted
almost 19 years
ago
by
admin
We checked in a new version of mod_portaudio this week thanks to the sponsorship from eWorld Com.
More information in the Commit Log.
|
|
Posted
almost 19 years
ago
by
admin
Due to popular demand. We downloaded and installed a copy of Media Wiki, a much revered wiki platform. A huge thanks to Mike Murdock who has done a great job adding a huge amount of content in a very short period of time.
Visit the WIKI
|
|
Posted
almost 19 years
ago
by
admin
Using the new javascript sub modules we have now implemented mod_spidermonkey_odbc which makes it possible to use ODBC from IVR scripts.
Here is a small example script.
You should be able to do some really cool stuff with this module.
|