Due the the COVID19 pandemic I am currently working from home, using Putty + ssh + Remote Desktop to log into and work on my office PC. For this to work, the office PC must be turned on and booted. So far I have let it running 24h which is really a waste of energy … Continue reading Automatically make your PC wake up at a given time
Month: March 2020
Extract jpeg files from mjpeg video on Linux
Just in case I ever need it again: Extracting all frames from an mjpeg video as jpegs is easy and very fast with ffmpeg, because it does not need to decode and encode the pictures, just prepend the DHT to each one: [bash] ffmpeg -i inputmpeg.avi -c:v copy -bsf:v mjpeg2jpeg frame_%d.jpg [/bash] Source ffmpeg documentation.
Skipping the UTF-8 BOM with TMemIniFile in Delphi 2007
Recently I came across a problem with INI files: Some editors (including recent versions of Windows Notepad) add a byte order mark (BOM) to the files they save. In particular the BOM for UTF-8 kept appearing in INI files which then were read incorrectly by the Delphi 2007 implementation of TMemIniFile (I guess the same … Continue reading Skipping the UTF-8 BOM with TMemIniFile in Delphi 2007
Delphi’s TStream.Read returns the number of bytes read
Note to self: TStream.Read in the Delphi RTL returns the number of bytes read. It does not check whether the intended number of bytes could actually be read. So if you do not check it yourself, call TStream.ReadBuffer instead. So, it's either: [delphi] var st: TFileStream; Buffer: array[0..7] of Byte; BytesRead: Integer; begin st := … Continue reading Delphi’s TStream.Read returns the number of bytes read
dzBdsLauncher 1.0.3 released
The latest version of dzBdsLauncher can now also handle some .dproj files with invalid ProjectVersion entries (e.g. those generated by project JEDI which apparently uses ProjectVersion 17.3 for all Delphi versions >XE8). It does this by evaluating the DllSuffix entry, if one exists. This can also help solving conflicts if the ProjectVersion is not unique. … Continue reading dzBdsLauncher 1.0.3 released