Archive for the 'Software' Category

Recompress PDF 1.0 (aka 17.1)

Wednesday, February 1st, 2017

We just released a new application we were working on: re/compress 1.0 (or by our new versioning schema 17.1).

As I mentioned some years ago we have written a new PDF library from scratch for our portable port of OCRKit.

While we always simply wrote PDF ourselves, for reading PDF files we initially used macOS’ PDF framework. Until we ported OCRKit and ExactScan to Windows and Linux, too.

We could have simply find some open source code for that, but we ultimately decided against this. One benefit of knowing your own code is, that you can usually fix issues in a matter of minutes, instead of searching thru other people’s code for days or weeks. Customers are always amazed about our turn around time for bug reports, or on-site support ;-)

In the meantime we know PDFs inside out, and thru our involvement in the TWAIN Working Group even work with the PDF Association on some PDF standards. After having seen so many defect, non standard conforming, or simply not that compressed files in the wild at customers, we though: Why not factor out PDF optimization, recompression and error recovery into an own affordable App and started to work on re/compress.

Re/compress will go thru all the file’s objects, and re-writes them in the most compact and compressed way. If any recovery methods were needed to read defect or broken files, the new file will be written with all this corrections applied for other, regular PDF applications to be abel to read the file, too.

Additionally, for the big space savings, the images can be re-compressed, and optionally down-sampled to really reduce huge files to very lightweight ones for sharing, and mailing.

And best of all: Since we created our own cross-platform UI, re/compress is immediately available for Mac, Windows, and theoretically Linux, too (if you are interested in the later just drop us a note).

re/compress PDF.

TEAC HR Audio Player for iOS

Thursday, January 5th, 2017

This thing, when you buy a Teac HA-P50 for some Hi-Res Audio testing, and the matching iOS app (you know, for hi-res, FLAC and such, …, sigh) produces extremely audible clicks and pops that sounds like buffer under run / overflow / whatever - on a recent iPhone 6s no less.

What the heck are the vendor’s thinking to ship such crap to their premium paying customers?

Funny thing, other apps, such Apple’s own do not have this clicks and pops, … ???!!!

Judging from the App review an at least one year old problem:

PS: And why the heck do they sell the Teac HA-P50 for US$199 in the states, and for 299€ in Europe?

[self note:@”u-boot”];

Saturday, December 17th, 2016

ah, this bare to the bits uboot CLI, sigh:

ext2ls mmc 0
ext2load mmc 0:1 0×10400000 /uImage; bootm

fsload 0×10400000 boot/uImage
set bootargs ‘console=ttyS0 root=/dev/mtdblock1 rootfstype=jffs2′


Synthesizing audio with sox on Linux

Tuesday, December 6th, 2016

Recently I spent some time finally finishing my DIY DAC and needed some signal generator for digital AES/EBU, coax / spdif audio to test and evaluate it. Turns out sox is pretty handy for that:

sox -r 48000 -n -t alsa spdif synth sine 1000 # square, triangle, sawtooth

Random cloud changes

Friday, October 21st, 2016

For a while I already watched some other business struggling with workflow inefficiency by using cloud services that randomly (like monthly) change some user interface, options etc. and thus waste hours and hours of the time of workers to actually get their work done.

While we protect our data and investment by not using cloud services for anything productive (exception like Google Adwords, …) today we hit a similar issue. I automated invoice generation from our online store PayPal email notifications. Some days ago on October the 15th PayPal deviced out of the blue sky that it would probably be nice if they modernized their email templates.

Well, great for them, no so for our nicely script automated invoice generation. But even for the users:

Before the PayPal notifications where: Content-Type: multipart/alternative; with a Content-Type: text/plain; charset=UTF-8 and a Content-Type: text/html; charset=UTF-8 and about 20 kB in size.

Unix veterans could still nicely read the text/plain part in pine, mutt or wherever. The new emails did away with the text/plain part, and only send a Content-Type: text/html; charset=UTF-8 and the designers even blew that up to now consume a whooping 90kB.

Worst of all as of today they still send us a mix of old a new template based emails. Obviously awesome for some reliable processing, …

So this is what the silicon valley companies call progress? :-/

Update: Most of the size increase is actually mobile optimization CSS. WTF optimization is that? I rather have a smaller, plain text email than a 80kB CSS monster when I’m on the go :-/

Can the tech industry please stop messing with everything and thereby actually making things worse? :-/!

Samplerate: 192000Hz

Tuesday, October 4th, 2016

All the FLAC and high bitrate hi-fi testing? Right now I’m listening to a 192000Hz FLAC:

# play *flac

Alanis Morissette - 01. Eight Easy Steps.flac:

File Size: 106M Bit Rate: 4.92M
Encoding: FLAC Info: Purchased from
Channels: 2 @ 24-bit Track: 1 of 10
Samplerate: 192000Hz Album: So-Called Chaos
Replaygain: off Artist: Alanis Morissette
Duration: 00:02:52.37 Title: Eight Easy Steps

In:100% 00:02:52.37 [00:00:00.00] Out:33.1M [ | ] Hd:1.7 Clip:0

on a last-gen Retina MacBook Pro 15″ under (you guessed it from the quote above, right?) (T2) Linux.

This legacy PC BIOS USB boot problems

Friday, September 30th, 2016

Believe it or not in 2016 I came across updating some aging x86 hardware, and it did not want to boot from our usual T2 USB pen drive disk images. After some research and debugging it turned out syslinux has the answer:

On these BIOSes, you’re generally stuck booting them in USB-ZIP mode.

A standard zipdrive (both the 100 MB and the 250 MB varieties) have a “geometry” of 64 heads, 32 sectors, and are partitioned devices with a single partition 4 (unlike most other media of this type which uses partition 1.) The 100 MB variety has 96 cylinders, and the 250 MB variety has 239 cylinders;

And this stupid hack indeed works, sigh. PC BIOS programmers, a very special kind of bread, … :-/

Dell XPS 15 and Linux - a developer’s dream

Friday, September 16th, 2016

This is one of the few and longer review articles I write on this site, for two reasons. First of all I am pretty dissatisfied with Apple’s laptops (and workstations) for a decade, and second Dell provided me with XPS 15 to try for a few weeks.


Getting tired of permanent MacBook battery failure

Friday, August 26th, 2016

So this stupidly smart Apple MacBook batteries set a permanent failure bit once they are simply discharged by sitting on a shelf for a month or two. With this permanent failure bit the controller will not charge them again, even when the cells are brand new and otherwise perfectly fine. Another day I need to try sending a reset sequence or otherwise rewriting some flash cells, sigh:

Some notes for now:

Battery Firmware Hacking

MacBook battery (Rom) cycle reset

BootCamp driver download

Sunday, January 10th, 2016

So Apple does not publish nice Windows driver downloads, you need the for that, sigh. You need to download hundreds of megabytes even if you only need a driver, or two, sigh.

And where does it store it? /Library/Application\ Support/BootCamp/