I'm looking at a possible computer telephony project that might make use of Aculab's products. I used the Aculab PCI card back in 2002 to do SS7/C7 switching with the telcos when I was still in that line of business. Ah, those were the days when I lived and breathed Dialogic code.
I remember the Aculab card as a very powerful card and quite affordable for something that can do SS7. Dialogic's equivalent product (the former DataKinetics) cost considerably more especially if you factor in the cost of the software. In the case of Aculab, the software protocol stacks are free. You just buy the board. And with Linux support plus great technical support, it was a hands-down winner.
I've been studying the trial version of Prosody S, their host-based media processing (HMP) platform. The API's only support C/C++ for multi-platform portability. I was hoping they would have C# libraries but unfortunately, they did not. Their pre-sales tech guy gave me a sample in C#, but it makes direct socket calls, as opposed to, using the API function calls. So it looked really messy.
So I figured I might as well install Visual Studio's C++ and see if I can shake off my C++ cobwebs. I haven't written in C++ for probably 5 to 6 years already. And when I did write in C++, I used Borland C++Builder for Windows and the GNU C++ compiler for Linux. I never actually used Microsoft's Visual C++. I never bothered to learn the Microsoft Foundation Classes (MFC). So I figured I'm going to have a bit of an uphill climb here.
After installing VS2005's C++ support, I made it create a .NET windows app using its templates. When I saw the code, my first reaction was -- What The F***?! It looked totally alien and unlike the C++ I knew. There were new operators (the caret ^) which I'm pretty sure is not part of standard C++.
I tried copying-and-pasting some code from the Aculab examples, and the compiler gave me all sorts of error messages about converting unmanaged code to managed. The uphill climb is starting to look like an up-mountain climb. As usual, I went to Google and did some query on C++/CLI (Common Language Infrastructure). The CLI is Microsoft .NET's common managed environment for its new generation of languages. Using C# and VB.NET with CLI is really trivial. But using it with an "old", unmanaged language like C++ involves a lot of changes.
Here are some quick tutorials I found on getting up-to-date on C++/CLI:
Just converting between the old, null-terminated string (char *) in C/C++ to the managed System.String (or System::String in C++/CLI format) version involves several steps. But I guess that is really the way to go. I mean, doing Windows programming with MFC or the native Windows API calls is a worse option.
Friday, June 12, 2009
Friday, June 5, 2009
Web Sites Projects under Visual Studio 2005
I've been looking at some sample code lately that requires Visual C++ compilation. Since I have been mainly doing C# programming the past several years, I never bothered to install the C++ option of Visual Studio (2003 and 2005). But now that I do need it, I popped in my MSDN DVD and tried to add C++. It gave me some strange error and refused to install it. So I had no choice but to uninstall Visual Studio 2005 and reinstall it -- this time with C# and C++.
The process seem to have worked as I can now view the C++ sample codes. But strangely, when I try opening some of my C# projects, Visual Studio 2005 would complain about unsupported project files. This is particularly true for my really old web/web service projects which I migrated from VS 2003 to 2005. VS2005 just doesn't seem to like their .csproj files.
After some tinkering around, I noticed that VS2005 web site/service projects do not seem to need a .csproj files. In fact, deleting the .csproj files seem to fix the problem. The project could then be added/loaded onto a VS Solution without any hassle.
On another note, I also recently installed Windows XP Service Pack 3. Although SP3 has been around for some time, I haven't really bothered to install it. Now that its installed in my system, I'm experiencing weird problems with my Virtual PC. The problem seem to specifically happen when I do large file transfers between my Virtual PC session and my host PC. It just reboots my entire machine without any warning. Grrr... the lesson is -- don't load new Microsoft service packs unless you are specifically experiencing problems that require it.
The process seem to have worked as I can now view the C++ sample codes. But strangely, when I try opening some of my C# projects, Visual Studio 2005 would complain about unsupported project files. This is particularly true for my really old web/web service projects which I migrated from VS 2003 to 2005. VS2005 just doesn't seem to like their .csproj files.
After some tinkering around, I noticed that VS2005 web site/service projects do not seem to need a .csproj files. In fact, deleting the .csproj files seem to fix the problem. The project could then be added/loaded onto a VS Solution without any hassle.
On another note, I also recently installed Windows XP Service Pack 3. Although SP3 has been around for some time, I haven't really bothered to install it. Now that its installed in my system, I'm experiencing weird problems with my Virtual PC. The problem seem to specifically happen when I do large file transfers between my Virtual PC session and my host PC. It just reboots my entire machine without any warning. Grrr... the lesson is -- don't load new Microsoft service packs unless you are specifically experiencing problems that require it.
Thursday, June 4, 2009
How To Find Unread Messages in GMail
For the longest time, I've been wondering how I can quickly retrieve all my unread email in GMail. I tried manually clicking the "next" links to go through my large inbox. But with more than 9,500 messages now, its just impossible to find the unread ones.
I did some Google search and found the simple answer -- just type label:unread in the search box and click the "search mail" button! That's all there is to it!
I did some Google search and found the simple answer -- just type label:unread in the search box and click the "search mail" button! That's all there is to it!
Hong Kong Actor Sex Scadal
Step aside Hayden Kho and Kristina Halili. A bigger star, Chinese/Canadian actor/singer, Edison Chen, was recently involved in a similar celebrity sex scandal. And this one actually made it to the front page of CNN! Even at the height of the Kho/Halili scandal, I don't think they made it that far in world news.
Unlike the Kho/Halili scandal, the girls here -- which included starlets Gillian Chung, Cecilia Cheung, Maggie Q, and many more, the girls here seem to know that they were being photographed. Candice Chan's wedding was called off after her fiance found out about it. It wasn't clear whether Edison distributed the photos himself, or as claimed, it was in his laptop which he brought to a repair shop, and the computer technician supposedly saw the thousands of photos of nude celebrities with Chen and circulated them online.
Edison claims to have received death threats. But at least he did not receive verbal abuse from their equivalent of a senator there in HK. he he he
Unlike the Kho/Halili scandal, the girls here -- which included starlets Gillian Chung, Cecilia Cheung, Maggie Q, and many more, the girls here seem to know that they were being photographed. Candice Chan's wedding was called off after her fiance found out about it. It wasn't clear whether Edison distributed the photos himself, or as claimed, it was in his laptop which he brought to a repair shop, and the computer technician supposedly saw the thousands of photos of nude celebrities with Chen and circulated them online.
Edison claims to have received death threats. But at least he did not receive verbal abuse from their equivalent of a senator there in HK. he he he
Wednesday, June 3, 2009
PLDT Line at Marikina
Our PLDT line at home could not accept incoming calls for almost a week. It was finally fixed today. It was a strange problem. We had no problems calling out, but no one can call in. Dialing our 425-xxxx number from other landline results to a long silence, then a disconnect tone. Calling from my Smart phone, I immediately get a "call not allowed" message. Calling from my Globe phone, I also get the long silence-then-disconnect tone.
During this period, our neighbors don't seem to be having similar problems. But then, they are all on the older 9xx-xxxx telno series. Our line came from a different exchange -- hence, it 425-xxxx.
When I called PLDT to report the problem earlier this week, I was told by the 171 operator that they were experiencing a problem with their "server". I thought that was very strange. Since when did "servers" have anything to do with plain ol' telephone system (POTS) service. If it was a TDM switch that went down, you should not be able to accept both incoming calls and make outgoing calls. And you don't take days to fix a switch. You just hot-swap some TDM card and that's it. Or if its a physical line problem, you basically send a lineman to go up the telephone pole to fix it. But this was something else. A "server"?!
This led me to wonder whether we're on PLDT's Next Generation Network (NGN) which is supposed to be running on their IP-based, "converged" network. I guess new technology brings new kinds of problems.
Thursday, May 28, 2009
Programming with Canon without an SDK
I've been looking at a photobooth software called Photoboof upon the recommendation of a friend. It sells for something like USD600 with a fully-functional trial version that just displays some watermark on the printout. I've been thinking on-and-off of writing a photobooth software myself. In fact, that was the main impetus why I looked into programming for my Canon EOS using the EOS Development Kit (EDK).
Photoboof claims it can work with Canon Powershots, EOS DSLR's, Nikon DSLR's, and even regular webcams. I've been wondering how Photoboof can pull off supporting all these cameras. Did it have to link the libraries specific to each camera model? Well, as it turns out, it doesn't really talk directly to the camera's firmware. Instead, it works with the camera's existing bundled software to handle the actual remote photo-shooting. Then it just picks up the jpg files from some local folder.
I have to admit its an ingenious solution. For Canon EOS DSLR's, it uses the bundled EOS Utility software to handle actual communication with the camera and the remote shooting part. The EOS Utility even support "tethered" shooting, or shooting from the camera and having the image sent directly to the PC via USB, without saving a copy first on the CF Card inside the camera.
Photoboof uses the popular Irfanview image viewer software to handle the actual rendering of the image to the printer. Again, very ingenious. The author didn't have to do the dirty work of communicating with the printer.
Sunday, May 24, 2009
Top Mobile Phone Manufacturers
According to ABI Research, Apple is now the 8th largest mobile phone maker. Pretty impressive for a company that did not have a mobile phone in its portfolio a couple of years ago. Also surprising (to me, at least), LG is now the 3rd largest mobile manufacturer with Motorola losing its no. 2 spot from long time ago.
- Nokia
- Samsung
- LG Electronics
- Motorola
- Sony Ericsson
- BlackBerry (Research In Motion)
- ZTE
- Apple
- Kyocera
- TCL/Alcatel Mobile Phones
- Huawei
I still have yet to buy a GSM phone other than Nokia. Having started with the 5110, I have been a Nokia loyalist all this time.
Subscribe to:
Posts (Atom)
