While you can use screencapture to record virtual machines, to real machines it is a different story.
Virtual machines running locally or remote can be accessed with spice/vnc or rdesktop. So you have a window displaying the remote screen, which you can capture using window capture.
There are also emulators which you can window-capture. But i want the real thing when available. Emulators give a too crisp screen output. And you want to have the real SID chip sound.
Hardware capturing:
Recording Virtual machines
I’ve got two capturing usb sticks:
Camlink 4K for hdmi capturing (Which i use mainly for my nikon)
Basetech BR116 RCA and S-Video capture (NTSC 720 x 480 , 30 FPS/PAL 720 x 576 , 25 FPS)
Devices and recording:
C64 – Use Basetech, and the DIN to RCA cable
Vic-20 – same as above
Raspberry – Use a HDMI and Camlink
Amiga – I use the basetech and grab the composite signal from the Scart connector, another solution is to use a A520 Modulator, which has Composite out. (There are schematics on the internet to connect hdmi to your amiga)
C64 DIN RCA cableC64 connectedAdd video capture deviceRaspberry HDMIRaspberry bootingC64 settings
Amiga A520 Modulator
The 520 Modulator connects to the amiga using a DB23 connector, and a Y cable for the 2 rca audio jacks. It outputs a composite video signal, and RF modulated signal to connect to a old Tube/Crt monitor
How i connected my amigaSubD23 to Scart plus audio
When recording video from those screens, i configure my OBS file format to MP4. This makes it easier to embed into websites. Only downside on writing to MP4 instead of mkv is the fact that the file probably isn’t recoverable when something crashes.
Audio capturing :
When capturing your movie don’t forget to add a audio source to your OBS sources. Use Audio input capture, or you can use Audio output capture when sound is playing by your system.
Demo a friend made using a demomaker (Music starts half way)
Flightsim on a Amiga (See more on flightsims)C64 Hellraiser (part 1) no de-comb/de-interlace filter
Note: check your output/cables https://www.youtube.com/watch?v=entQosOLjEI
A few years ago i wrote a photo manager .. again .. ( see post about my first previous photo manager ) It is a web gui to find photos in my huge photo archive. I manually added 190k tags to 120k photos in 20+ years.
I thought wouldn’t it be nice if i can generate additional metadata using Machine Learning. A few years ago i did some testing and followed a podcast and free course about machine learning.
So today i started to implement a addition to my gui. Machine recognition tags!
It already kinda works.
Things to do :
Make it a background job, my fileserver doesn’t run Tensorflow on a GPU, so it is slooow
Embed in existing GUI and stats
Design a editor to remove wrong tags
Below a part of ML images
Command to get a thumbnail sheet with only directory names:
var system = require('system');
var page = require('webpage').create();
var url = system.args[1];
page.open(url, function () {
console.log(page.content);
phantom.exit();
});
Run phantomjs
phantomjs-2.1.1-linux-x86_64/bin/phantomjs printsource.js https://xxxxxxxx/show/xxxx > out
So now i got the rendered page, get mp3’s and titles, for this example
cat out | sed 'N;s/\n/,/' | cut -f2,7 -d\" | while read line ; do
mp3=$( echo $line | cut -f1 -d\")
title=$( echo $line | cut -f3 -d\> | tr -d '/<>[]]\!,;' | tr -d "'" | sed s/CDATA//g | sed s#title##g | sed s/:/-/g )
echo "$mp3 $title"
wget $mp3 -O "$title.mp3"
done
In the past i’ve used a home build Logitech Squeezebox server (as it was called then), Picore player and tried volumio. Picore player has been sitting in my livingroom for ages, but was converted to a Node-Red Dashboard and recently Home Assistant Dashboard. (Has been a dasticz daskboard also)
Today i build another version, smaller and with a screen. Why? .. because of being ‘offline’ or ‘offgrid’ on our holidays. The car we are driving only has a Aux input.
Most of the installation is as mentioned on: https://docs.picoreplayer.org/projects/add-a-display/
I edited /opt/bootsync.sh to get /dev/sda1 mounted persistent use pcp br after editing.
Default user/pass : tc piCore
Controlling the thing is via touch or a app on my phone using wifi hotspot.
Shutting down piCore is done by cutting the power, due to everything being mounted readonly. EXEPT When you are using LMS server installation, which uses a database. But there is a tweak for a shutdown button.
I’m using GPIO 16 because i’ve got a screen connected. Active LOW, means you have to connect a pushbutton/switch between GND and GPIO pin. (nearest Vcc OR Gnd)
Example is using my ledserver, see other post, but i intent to made a easy to configure node red panel where the to be controlled devices are preconfigured.
I’m using ZFS for my main fileserver, this pool was created over 10 years ago. Meanwhile i’ve: Swapped broken disks, switched disks for bigger ones and effectively resized my storage 2 or 3 times. Never had any corruption.
Yesterday i say a warning that one of the disks in the pool was OFFLINE. Today i replaced it using below command’s
Put the disk in OFFLINE mode (if needed, mine was already offline)
zpool offline tank sdb
Remove disk from system
echo 1 | sudo tee /sys/block/sdb/device/delete
Remove the disk physically
Insert the replacement disk. And copy headers/structure from another disk
sgdisk –replicate=/dev/sdb /dev/sda
sgdisk –randomize-guids /dev/sdb
Run the zpool replace command.
zpool replace tank /dev/sdb
Use online command to activate disk (no needed in my case, it already did that)
Tips:
# My labels with serials fell off :(
dd if=/dev/sdb of=/dev/null -> blinky led ..
# What is the serial?
sudo hdparm -i /dev/sdb | grep Serial
Output
root@latex:~# sgdisk --replicate=/dev/sdb /dev/sda
The operation has completed successfully.
root@latex:~# sgdisk --randomize-guids /dev/sdb
The operation has completed successfully.
root@latex:~# zpool replace tank /dev/sdb
root@latex:~# zpool status
pool: tank
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Wed May 18 11:31:21 2022
5.64T scanned out of 14.4T at 331M/s, 7h42m to go
1.88T resilvered, 39.16% done
config:
NAME STATE READ WRITE CKSUM
tank DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
sda ONLINE 0 0 0
replacing-1 REMOVED 0 0 0
old REMOVED 0 0 0
sdb ONLINE 0 0 0 (resilvering)
sdc ONLINE 0 0 0
errors: No known data errors