# Analog video modulation

**URL:** <https://www.ruby-forum.com/t/analog-video-modulation/231003>\
**Category:** GNU Radio\
**Created:** [July 17, 2014, 3:51am UTC](https://www.ruby-forum.com/t/analog-video-modulation/231003 "2014-07-17T03:51:25Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![addis\_a](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c4cdca/32.png) [@addis\_a](https://www.ruby-forum.com/u/addis_a)\
**Post date:** [July 17, 2014, 3:51am UTC](https://www.ruby-forum.com/t/analog-video-modulation/231003/1 "2014-07-17T03:51:25Z")

</div>

After finishing my AM Stereo transmitter, I have decided to build an  
NTSC  
modulator. I think I have the actually modulation and filter blocks  
down, I  
just need to firgure out how to get the right signals from a digital  
video  
file. The file source wouldn’t work; I would probably have to use  
gstreamer. Anyone know exactly what I’m looking for and how to get it? I  
need brightness, hue, saturation, and I believe that is it.

Thanks.

- Jordan

---

<div class="post-metadata">

**Author:** ![jowijo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e95f7d/32.png) [@jowijo](https://www.ruby-forum.com/u/jowijo)\
**Post date:** [July 17, 2014, 5:28am UTC](https://www.ruby-forum.com/t/analog-video-modulation/231003/2 "2014-07-17T05:28:24Z")

</div>

On 7/16/14 9:50 PM, Jordan J. wrote:

> After finishing my AM Stereo transmitter, I have decided to build an  
> NTSC modulator. I think I have the actually modulation and filter blocks  
> down, I just need to firgure out how to get the right signals from a  
> digital video file. The file source wouldn’t work; I would probably have  
> to use gstreamer. Anyone know exactly what I’m looking for and how to  
> get it? I need brightness, hue, saturation, and I believe that is it.
> 
> Thanks.
> 
> - Jordan

Try ffmpeg:

> **[FFmpeg](https://www.ffmpeg.org/)**

It’s sort of the swiss army knife of video file processing.

@(^.^)@ Ed

---

<div class="post-metadata">

**Author:** ![jowijo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e95f7d/32.png) [@jowijo](https://www.ruby-forum.com/u/jowijo)\
**Post date:** [July 17, 2014, 7:09am UTC](https://www.ruby-forum.com/t/analog-video-modulation/231003/3 "2014-07-17T07:09:41Z")

</div>

All video decoders use the YCbCr colorspace. You’ll need  
to convert that to YIQ for NTSC.

You can create a YCbCr file with vlc.

vlc -I rc -V yuv --yuv-file=  
–yuv=chroma=UYVY

This will create a YCbCr file with 4:2:2 chroma in the format  
Cb Y Cr Y Cb Y Cr Y …

vlc does put a header and frame markers in the file. I don’t know  
if that can be disabled.

YCbCr files only contain the active video (720x480 for NTSC). You’ll  
have to create and insert the vertical and horizontal blanking.

Ron

---

<div class="post-metadata">

**Author:** ![jowijo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e95f7d/32.png) [@jowijo](https://www.ruby-forum.com/u/jowijo)\
**Post date:** [July 17, 2014, 7:15am UTC](https://www.ruby-forum.com/t/analog-video-modulation/231003/4 "2014-07-17T07:15:23Z")

</div>

Made a typo. --yuv=chroma=UYVY should be --yuv-chroma=UYVY

Ron
