gcc: Solving “undefined reference” even when the required library is listed with -l

It worked all so nicely on my Fedora 12 machine, and then on Ubuntu 14.04.1 it failed colossally: $ make gcc -Wall  -O3 -g -lusb-1.0 -c  -o bulkread.o bulkread.c gcc -Wall  -O3 -g -lusb-1.0 -c  -o usberrors.o usberrors.c gcc -Wall  -O3 -g -lusb-1.0 bulkread.o usberrors.o -o bulkread bulkread.o: In function `main’: bulkread.c:39: undefined reference to [...]

Live TV / DVB on Linux demystified

Introduction This is a not-so-short tutorial which is intended to make the setup of a Live TV media center on Linux a bit easier, walking through the processing chain from the digital transmission signal to the picture on the screen. Quite naturally, things go from “general knowledge” to a bit more hands-on. The approach here [...]

Brix media center Linux installation notes

Intro These are my jots as I installed Linux Mint 18.1 on a Gigabyte GB-BACE-3160 Compact PC with a 240 GB SSD hard disk and 8 GB RAM, for the purpose of driving my TV in the living room. Not all issues are solved yet. General notes Use ssh -X. It allows X-windows to open [...]

tvheadend jots

This is a lot of random jots as I set up Tvheadend. As it was a bit of a battle, things may not be consistent below. There are some details below specific to my own environment (e.g. LAN addresses). Environment: Linux Mint 18.1 running a 4.4.0-53-generic kernel, receiving DVB-T in Haifa, Israel with a HD-901T2 [...]

EDID info from mini HDMI2AV module (HDMI to RCA CVBS)

This is the information obtained with xrandr from the HDMI to AV converter  (Composite Video + Audio on RCA plugs) shown above: Screen 0: minimum 8 x 8, current 1280 x 720, maximum 32767 x 32767 DP1 disconnected (normal left inverted right x axis y axis) DP2 disconnected (normal left inverted right x axis y [...]

Tvheadend starting slowly with a HD-901T2 DVB-T2 USB stick: The udev solution

The problem Having A HD-901T2 DVB-T2 stick on a Linux Mint 18.1 running a 4.4.0-53-generic kernel, Tvheadend started painfully slow. It took more than a minute before the web interface was available. And here’s why: Mar 11 10:22:35 tv systemd[1]: Starting tvheadend.service… Mar 11 10:22:35 tv tvheadend[6019]: * Starting Tvheadend tvheadend Mar 11 10:22:35 tv [...]

Linux / DVB / Command line: Watching multiple channels with single DVB adapter

Some (or all?) DVB adapters can be set to submit the entire MPEG-TS stream to the host, without filtering specific channels (actually, PIDs). This allows viewing more channel at a time. This is demonstrated below with ffplay, even though ffplay tends to get stuck when it goes to a live stream. It’s also not possible [...]

Linux / DVB: Playing with a HD-901T2 (“Astrometa”) DVB-T2 USB stick

This is the successful version of a previous post, using a DVB USB stick that works, for a change. Fix this, or it will wobble Literally. The USB plug of this device is poorly designed, so the metal frame doesn’t attach well to female connector. As a result, every little vibration makes the USB stick [...]

Linux kernel: /proc/iomem-like output to kernel log during boot

In order to have something similar to /proc/iomem printed out to the console (and dmesg), this piece of code can be implanted somewhere in the kernel code (in my case it was arch/arm/mach-zynq/common.c). It may be required to add #include headers, depending on the file it’s added to. The original code that produces /proc/iomem is [...]

Linux: How to read through all files (checking a backup)

After finishing a backup to a USB stick, I like to verify that all is in place by reading through all files. Using the “tar” utility with verbose file output seemed to be a good idea. But… Don’t $ tar -cv . > /dev/null For whatever reason, the files aren’t really read. Only the names [...]