I wrote my own decoder in python (nowhere near realtime) because at the time I couldn't find one that handled color. The deep dive on the design tradeoffs and signal processing hacks for NTSC was fascinating.
A few of my exploits below:
Full-frame decode of VHS w/ closed captioning: https://mrgris.com/a/ntsc-cc.mp4
Faithful reproduction of analog artifacts: https://mrgris.com/a/colorbars_slow.gif
Analog scrambling: https://www.youtube.com/watch?v=qceZgxSBHwo
Inject custom captions (it supports color!): https://mrgris.com/a/thanks.mp4
Sad that these signals are gone now... would have loved to play around with SAP/MTS, teletext, C-band...