some context for my previous post:
I smuggled Jack (my other laptop) to my boarding house so I can set up dual PC recording (after getting a subpar recording of my playthrough of the secret level in beatblock). I don’t have a capture card, but I can connect Jack and John through Ethernet, so my cunning plan is I would have John stream the screen using FFmpeg (since x11grab is cheap, or at least cheaper than encoding), and have Jack encode it to its hard drive.
Ideally I would just stream the raw video to Jack, but the Ethernet adapter I bought for John is only fast (100 Mbps), and I would need at least a 1 Gbps connection to stream raw video (and that’s with 8-bit color, if I want 24-bit that would raise it to 2.5 Gbps). Even if I got that sorted, I still have to put it on some container, and finding the right one is tricky (which is why I posted that post)
With Matroska, I’m getting EBML header parsing failed; this seems to be a common problem with corrupted Matroska streams, which makes sense for a video stream that starts whenever John is transmitting right now.
With NUT, the receiving end hangs, waiting for a “main startcode”, which I think is the NUT terminology of the ultimate file header.
I could use MPEG-TS, but not all codecs are supported by that container. FFmpeg does still stream them as data streams, but good luck telling the receiving end what those data streams actually mean.
There was a time once when I concatenated Ogg files and noticed that they join together. I thought that means Ogg files has no (ultimate) file header, but after some testing that turned out not to be the case.
In the end, I ended up having to use hardware-accelerated H.264 encoding (figuring that out is “fun”) with a ludicrous bitrate (to hopefully minimize the compression overhead) which I stream to Jack to re-encode. Now I really wish there’s something like NUT that you can stream.
no comments