I pieced this together myself, from Internet searches, in 2013: Since (at that time at least) zvbi-ntsc-cc was ignoring null bytes the time codes ended up being "significantly off," according to my findings and those of the author of the program I've been using, I switched completely to using it: https://github.com/codeman38/zvbi2raw To use it to capture the raw VBI information, here's the command I use: zvbi2raw -d /dev/vbi0 > file.vbi Then, I convert it to a .srt file with ccextractor as you expected: ccextractor -in=raw ./file.vbi -o ./file.srt If you want to change the time offset in the .srt file, you can use a program from the libsubtitles-perl package in debian (I didn't find it in debian back then, so I compiled the source in its "subtitles-1.00" directory). The program is subs, and here's how it can be used to subtract five minutes from every time in the .srt file (with -i, it edits in-place, but keeps a (.bak) backup file of the previous version, but I think repeating the command will lose your initial version): subs -i -b -5:00 file.srt It took me a lot longer to figure out than it probably will with this for you, but I didn't ask the mailing list. ;) I hope that helps, Lucas On Mon, Jul 12, 2021 at 6:21 PM Steven Zakulec <spzakulec@xxxxxxxxx> wrote: > > HI, I am writing to the Linux-media mailing list in hopes that someone > can share how the /dev/vbi device can be captured from under Linux to > disk so it can be processed back into captions. > > I've tried a long list of items (listed below), and the only success > I've had under Linux is using old Hauppauge PVR (150 & 250) PCI cards, > and extracting the embedded VBI data from those captures. > > I can successfully display closed captions on my Hauppauge HVR-950q > USB device with "zvbi-ntsc-cc -d /dev/vbi0 -c" as long as I start a > capture first in one terminal, then run that command in a second > terminal, so I know that card works. > > With my Hauppauge HVR-950q, I've tried the following items: > cat /dev/vbi (both before, during, and after a capture is started on the card > > Trying to use ffmpeg to capture /dev/vbi - unclear if this is even > supposed to work, and if so, what the proper commands are > > I've tried using zvbi to capture the captions- at best, I can get the > text dumped to a file, but no timestamps, or raw/sliced VBI that I > could convert using ccextractor into a subtitle file. > I had thought one of the commands below should work based on the > descriptions from --help. > zvbi-ntsc-cc -d /dev/vbi0 -r -C vbi.bin > zvbi-ntsc-cc -d /dev/vbi0 -r -R -C vbi.bin > > I've tried some of the test tools in the zvbi source code test folder, > but it's not entirely clear if they work with NTSC closed captions. > > I'm on Kubuntu 20.04 with kernel 5.4.0-77-generic. > > If anyone knows an application/device combination (any Linux OS), > please let me know- this seems totally possible, I just can't figure > out how to make it happen. > Thank you in advance for any insights or guidance you can provide here. -- Protect your digital freedom and privacy, eliminate DRM, learn more at http://www.defectivebydesign.org/what_is_drm On a related note, also see https://www.fsf.org/campaigns/surveillance