Back in the good old days of 2019 I was still a naive youngster who looked at the specifications listed alongside the latest Raspberry Pi and similar ARM-based single-board computers (SBCs) and took the video en- and decoding specifications as gospel. Even a lowly single-core ARMv6 SoC like the BCM2835 [1] as featured on the [ ]
Last year I found myself looking at Espressif s ESP32 microcontroller (MCU) in the context of porting the NymphCast receiver (NCS, or NymphCast Server[1]) application to it. This network-based application is responsible for accepting playback requests from clients along with media data to decode using FFmpeg and output to displays and speakers via libSDL. Although the [ ]
Over the past couple of days I have ported the NymphCast network streaming project [1] to Haiku, which was fairly straightforward due to its POSIX-compatibility. In this article I ll describe my experiences with porting to what is effectively BeOS spiritual successor. Haiku as a porting target is attractive for a number of reasons. The first [ ]
During the development of the NymphCast project [1], a core task was to implement a ring buffer that could provide the reliability, latency and throughput required for the needs of the media file decoder during playback of, and seeking actions within high bitrate content. While the general concept of a ring buffer is exceedingly common [ ]
When I originally wrote the code for what became NymphRPC [1], efficiency was not my foremost concern, but rather reliable functionality was. Admittedly, so long as you just send a couple of bytes and short strings to and from client and server, the overhead of network transmission is very likely to mask many inefficiencies. That [ ]
There appears to be a trend in the world of software development where it is assumed that QA departments are an unnecessary expense, and that developers are perfectly capable of testing their own code, as well as that of their colleagues. After all, if you wrote the code, or are in the same development team, [ ]
Many of us will have laughed and scoffed at Google s liberal use of the tag Beta software these past years. Is the label Beta nothing more than an excuse for any bugs and issues that may still exist in code, even when it has been running in what is essentially a production environment for years? [ ]
It s been a solid nine months since I first wrote about the NymphCast project [1] on my personal blog [2]. That particular blog post ended up igniting a lot of media attention [3], as it also began to dawn on me how much work would still be required to truly get it to a release [ ]
In the process of developing an open alternative to ChromeCast called NymphCast [1], I found myself having to deal with DNS-SD (DNS service discovery) and mDNS [2]. This was rather frustrating, if only because one cannot simply add a standard mDNS client to a cross-platform C++ application, nor is setting up an mDNS record for [ ]
Back in the 1950s, the competition was between vacuum tube (valve) based computers and their relay-based brethren. Whereas the former type was theoretically faster, vacuum tubes suffer from reliability issues, which meant that relay-based computers would be used alongside tube-based ones. Not surprisingly, Fujitsu also designed a number of such electro-mechanical computers back then. More [ ]