Blog
Page: 0 ... 5 ... 10 ... 15 ... 20 ... 25 30 31 32 33 34 35 36 37 38 ... 40 ... 45 ... 50 ... 55 ... 60 ... 65 ... 70 ... 75
Wikipedia Notability
Date: 2/11/2007
So now any trace of i.Scribe and InScribe has disappeared from wikipedia entirely, apparently because it's not "notable" enough.

The comparison page has had all the not notable clients purged from it.

Wikipedia used to be awesome for looking stuff up. But I'm beginning to wonder it's imploding in on itself these days under the notability Nazis. I'm certainly no longer keen on putting any more of my time into editing wikipedia articles.
(5) Comments | Add Comment

Items For Sale
Date: 31/10/2007
Spring clean, some stuff on ebay:
(0) Comments | Add Comment

Scribe Stable Status
Date: 23/10/2007
I've been threatening to make a stable build of Scribe v1.89 for a while now and I'm basically happy with the codebase as it stands. For new users anyway, the situation for v1.88 users is a little grim. Apparently there are a lot of upgrade issues. And because there are a fair few users out there still on v1.88 I am going to focus on cleaning up the upgrade issues so that when v1.89 stable is released they get taken care of.
(0) Comments | Add Comment

PageRank
Date: 17/10/2007
The Scribe page has dropped off Google.

It was listed on the 2nd page of results for "email client" but now it's not in the results at all. Not further down the results, completely not present. There is also a strong correlation between the change in Google ranking and a complete stop in InScribe sales.

Oh well. There goes that business plan.

The page hasn't changed in any significant way, and considering the inbound links to it, should still rank well. So I'm assuming Google is punishing me for some perceived slight, although I have no idea what.

Update: It seems that the wikipedia page on i.Scribe/InScribe has been deleted and I would hazard a guess that it doesn't help your Google ranking when that happens. Are there any wikipedians out there that could create a deletion safe page for i.Scribe/InScribe?

The text that was there for Scribe on wikipedia: 'Scribe' is a small and lightweight Email Program for Windows and Linux which first appeared as Freeware in 1999 and has been updated roughly once a month ever since. Previous versions ran on Beos as well. Scribe now comes in a freeware version: i.Scribe and a commercial version: InScribe. The commercial version adds multiple accounts and multiple user defined filters.

Scribe uses all the standard mail protocols, like POP, SMTP and IMAP and has various plugins that can add SSL, LDAP and spell checking support. It has a built in HTML viewer that is virus safe. Executable attachments are detected and optionally deleted. Scribe can be installed on removable media like USB keys so that you can carry around your mail between computers. Translators have added translations to many popular european and east asian languages. Scribe has very evolved Charset support and can display text correctly even if the Glyphs are not available in the current Font.

While Scribe itself is not open source, it is built on a LGPL porting layer (by the same company) that comprises about half of the final product.
(7) Comments | Add Comment

H.264 + AAC for Quicktime
Date: 16/10/2007
Today I was developing a mp4 encode path for my private stock VidEnc application which takes mpeg2 from Digital TV and re-encodes it. It has for a long time supported mpeg2 to xvid/avi via besweet and mencoder. But mencoder has a problem on longer videos where it drops the first 'n' frames, somewhere between 1 and 6 seconds of video. I could never figure this out so I just print out the "offset" to remux the A/V in VirtualDub. A right pain I can tell you.

So after using Handbrake a lot I decided that the pain of developing a new video pipeline would be offset by the better quality of H.264 and the smaller filesizes. So today I had some time and got into it. Things went fairly smoothly until I got my output mp4 file, and it wouldn't play in Quicktime.

This, as I'm finding out, is not unusual because Quicktime7 doesn't fully support H.264, just a subset of it. Anyway that wasn't what was causing this: "Error -50: An unknown error has occured" when I tried to open the file. My pipeline as it stands is:
  • Mpeg2 -> Pvastrumento -> separate a/v
  • Audio -> besweet to wav -> faac to aac
  • Video -> x264 to mp4
  • Mp4box to mux the A/V back together


I now know that I can do the Audio -> aac in one step using Besweet, but I havn't gotten around to fixing it yet. However there are a few gotchas in creating suitable mp4 files for QT7.
  • The AAC audio must be of the type MPEG4, rather than MPEG2. The faac option is "-w" to do that.
  • x264 should output to .mp4, not .264
  • Don't go higher then "--bframes 2" for x264.
  • Don't use "--b-pyramid" for x264 either.
This should give you a playable mp4.

Should...
(0) Comments | Add Comment

Linux "gethostbyname_r"
Date: 12/10/2007
Ever since v1.87-test21 the linux build of Scribe has used gethostbyname_r to resolve hosts before making a socket connection. This on the most part has worked, but on some machines it fails consistently. And like most weird errors it's very difficult to find a solution when the person experiencing the issue stops responding to your emails. Nevertheless eventually it happens to me and I get a crack at fixing the issue up close and personal. That was today.

I was valgrinding some code in Ubuntu and gethostbyname_r was returning non-zero, with an error code of -1. Which is basically what people have been reporting on and off for years. So I started hunting around on Google and I found this. The example shows how to increase the buffer size until the function returns success. I was passing in a fixed buffer of 256 bytes, and they start with a variable length buffer of 1024 bytes and double it if it fails... so I try tweaking it up to 1024 and magically it starts working. It is curious that the function needs an extra block of application allocated memory to function. You'd think that internally it could just use malloc/free for all it's own memory needs. Or even maybe return a valid error code via the "int *h_errnop" parameter instead of -1, like say ERANGE!

Glibc... what can I say?
(0) Comments | Add Comment