Index of /projects/gnuradio/mdvh/OTA/tv
      Name                                                         Last modified       Size  Description

[DIR] Parent Directory 17-Jun-2010 01:28 - [TXT] readme.txt 23-Jan-2007 00:38 4k [DIR] rf/ 09-Sep-2006 01:13 - [   ] tv_BBC1_PAL_10sec_f484.25e6_d32_g30_N20000000_cshort.raw.bz2 23-Jan-2007 00:39 33.8M [   ] tv_BBC1_PAL_10sec_f484.25e6_d64_g30_N10000000_cshort.raw.bz2 23-Jan-2007 00:39 17.8M [   ] tv_BBC1_PAL_10sec_f485.0e6_d16_g30_N40000000_cshort.raw.bz2 23-Jan-2007 00:40 65.7M [   ] tv_BBC1_PAL_1sec_f484.25e6_d32_g30_N2000000_cshort.raw.bz2 23-Jan-2007 00:40 3.4M [   ] tv_BBC1_PAL_1sec_f484.25e6_d64_g30_N1000000_cshort.raw.bz2 23-Jan-2007 00:41 1.8M [   ] tv_BBC1_PAL_1sec_f485.0e6_d16_g30_N4000000_cshort.raw.bz2 23-Jan-2007 00:41 6.7M [   ] tv_BBC1_PAL_1sec_f487.0e6_d8_g30_N8000000_cshort.raw.bz2 23-Jan-2007 00:41 16.6M [   ] tvflevo_d8_f511.25MHz_g90_N3199550_cshort.dat.bz2 09-Sep-2006 02:28 43.0M

These are captured analog PAL TV RF signals.
They were captured on 23 Jan 2006.
The signal is BBC1 which is PAL with video carrier on 484.25 Mhz and audio-carrier on 489.75 Mhz.
The centre of the channel is 487.0 MHz.

You can display them with gnuradio-examples/python/usrp/usrp_tv_rcv_nogui.py

./usrp_tv_rcv_nogui.py -p -d 8 -i filename sdl
adjust the -d parameter to the decimation factor used for capturing (according to the _d8_, _d16_ or _d32_ in the filename)

examples:
./usrp_tv_rcv_nogui.py -p -d 8 -i tv_BBC1_PAL_1sec_f487.0e6_d8_g30_N8000000_cshort.raw sdl

./usrp_tv_rcv_nogui.py -p -d 32 -i tv_BBC1_PAL_10sec_f487.0e6_d32_g30_N20000000_cshort.raw sdl

Don't forget the sdl at the end.

The commandline parameters:
-p says these are PAL tv captures
-d gives the decimation used when capturing
-i gives the input filename
sdl instructs to output to screen in an SDL window, in stead of to a file


The higher the decimation factor the lower the horizontal resolution.
With the lowest decimation factor of 8 you see moire lines through the image. This is the soundcarrier at 5.5 MHz which is not filtered out.
With the higher decimation factors you don't see these because the captured spectrum is less then 5.5 Mhz.


Also notice that the centre frequency for capturing is changed with different decimation factors.
This is because a TV signal has an assymetric spectrum.
The lower sideband is 1.25 Mhz, the upper sideband is max 6.75 Mhz. The complete channel is 6, 7 or 8 Mhz. (In this case 8 Mhz).
So with decimation 8 you get 8 Mhz, which is the whole channel. SO you can use the centrefreq of the channel.
With decimation 16 you get 4 Mhz. For best image quality you want to get the complete lower sideband and as much of the upper sideband as you can get.
So for decimation 16 I used carrierfreq + 0.75 Mhz as the centre freq.
For decimation of 32 and higher you can just use the carrierfreq as centrefreq as the captured signal is narrower then even the lower sideband.


These files where captured with an usrp with TVRX in slot A with usrp_rx_cfile.py

commandline used for capturing:
 ./usrp_rx_cfile.py -R A -d decimation -f freq -g 30 -s -N numberopfsamples filename
Notice the -s to force saving in complex_short format (in stead of the default complex float which is twice as large)
The important parameters are encoded in the filename (d for decimation, f for freq g for gain, N for numberofsamples and cshort for complex_short_format)

example:
 ./usrp_rx_cfile.py -R A -d 16 -f 485.0e6 -g 30 -s -N 4000000 tv_BBC1_PAL_1sec_f485.0e6_d16_g30_N4000000_cshort.raw

 
gnuradio-examples/python/usrp$ ./usrp_tv_rcv_nogui.py --help
usage: usrp_tv_rcv_nogui.py: [options] output_filename.
 Special output_filename "sdl" will use video_sink_sdl as realtime output window. You then need to have gr-video-sdl installed.
Make sure your input capture file containes interleaved shorts not complex floats

options:
  -h, --help            show this help message and exit
  -RRX_SUBDEV_SPEC, --rx-subdev-spec=RX_SUBDEV_SPEC
                        select USRP Rx side A or B (default=A)
  -cCONTRAST, --contrast=CONTRAST
                        set contrast (default is 1.0)
  -bBRIGHTNESS, --brightness=BRIGHTNESS
                        set brightness (default is 0)
  -dDECIM, --decim=DECIM
                        set fgpa decimation rate to DECIM [default=%default]
  -iIN_FILENAME, --in-filename=IN_FILENAME
                        Use input file as source. samples must be interleaved
                        shorts   Use usrp_rx_file.py or usrp_rx_cfile.py
                        --output-shorts.  Special name "usrp"  results in
                        realtime capturing and processing using usrp.  You then
                        probably need a decimation factor of 64 or higher.
  -fFREQ, --freq=FREQ   set frequency to FREQ. Note that the frequency of the
                        video carrier is not at the middle of the TV channel
  -gGAIN, --gain=GAIN   set gain in dB (default is midpoint)
  -p, --pal             PAL video format (this is the default)
  -n, --ntsc            NTSC video format
  -r, --repeat          do not repeat in_file in a loop
  -8, --width-8         Enable 8-bit samples across USB
  -NNFRAMES, --nframes=NFRAMES
                        number of frames to collect [default=+inf]
  --no-hb               don't use halfband filter in usrp

  
  Have Fun,
  
  Martin Dudok van Heel
  23 Jan 2006
  
  For mail adress see:
  http://www.olifantasia.com/gnuradio/contact.gif