Thank you Shonky: I will find a bit of time to sort out the crappy-sound issue (I tested a DI-BOX, but nothing changed. As I have a lot of hard-drive noise even with engine turned off, I think I have a grounding problem).

Anyway I'm enjoyning various coding: it's really fun.
hijack.c & c. are REALLY A FANTASTIC PIECE OF WORK.
MARK LORD ROCKS BIG TIME.

To solve the "double pause/play" issue was rather trivial, just something like this:
[..]
if (*s && get_button_code(&s, &button, 1, raw, ".\r")) {
if ((button == (IR_RIO_PLAY_PRESSED|ALT)) && (empeg_statebuf[0xc] == 0x00))
return s; /* Empeg is pausing - no need to issue a pause virtual key again */
if ((button == (IR_RIO_PLAY_PRESSED)) && (empeg_statebuf[0xc] == 0x02))
return s; /* Empeg is playing - no need to issue a play virtual key again */
if (raw) {
[..]
on do_button().

The I-BUS software is under heavy rewriting, preparing it for GPL release; I think I'll need a month or so.

I'm SO amazed about how much I learned by just watching at the code. I would to thank you all!