Hello,
I've completed a prototype for an NTSC decoder blockset for gnu radio. It's not very sophisticated but it lets you see video on the screen using gr-video-sdl. My development platform is Ubuntu 6.10 x86.
The signal starts out by using a custom AGC which simply scales the samples by dividing all samples by a local maximum. This puts most of the samples in the 0 to 1.0 range. Then the frame detector uses a simple threshold method to determine when pulses begin and end. The length of time between pulses is used to determine the type of pulse. A simple state machine keeps the output buffered correctly so the screen doesn't get out of whack.
Current features:
* Black/White reception (vertical and horizontal sync)
* Contrast/Brightness adjustment (still a little
buggy)
Planned features:
* automatic black level
* color
* stereo audio
* better sync detection
* documentation
Any feedback would be appreciated.
http://www.danielgarcia.info/thesis/http://www.danielgarcia.info/thesis/files/gr-video-analog.tgz-Daniel