SMPTE signals are (one of) the signals used to synchronize video and audio recordings from multiple cameras/recorders.

How does one go about generating such a signal?

I have a GPS-derived clock and 1PPS signal that the time should be based on.


This is not a task for the inexperienced.
You can buy SMPTE generators and if you need one and can afford a commercial one that would be the easiest path.

Next easiest, if PLCC44 and TQFP44 are easy, is probably the ICS2008B from Intergrated Circuit Systems Inc.
ICS2008B SMPTE Time Code Receiver/Generator datasheet

The task itself doesn't look too too difficult. Actual code is "like NRZ but different" (SMPTE = A transition at every bit boundary plus 1 = a transition at bit centre). That's the easy part. You could probably "roll your own" with many microontrollers, but the timing synchronisation is probably the 2nd hardest part and understanding the specification may be hardest. Even using an ICS2008BV would be"interesting".

Wikipedia gives a fair idea of why you don't want to roll your own. Their explanation of drop frame time codes where no frames are dropped but frames 0 and 1 have time code dropped in the first second of every minute except when minutes are divisible by 10, all this to remedy a multiplication by 1.001 that was introduced due to colour NTSC because ... , reminds me of an extremely old poem about Inuits making fur moccasins. "The skin side is the inside but the inside's on the outside and the fur side ...". At least the poem was trying to be confusing*.

Do it with a Mac - SMPTE TO Midi donationware

Useful intro discussion - if you can't follow this, buy a commercial unit.
If you can, buy one anyway :-).

SMPTE / MIDI slideshow. Some value

* A little Gargoyling shows it was, in fact,   

"The Song of Milkanwatha"

| improve this answer | |
  • \$\begingroup\$ Good advice. The only reason I even contemplated tackling it (if I could find an IC that got me most of the way) was because the intended application is synchronizing video from UAVs, and so size and weight are issues. I'll read the ICS2008B datasheet a couple more times, get hopelessly confused, and then give up. :) \$\endgroup\$ – Doug McClean Dec 31 '11 at 2:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.