pouët.net

Go to bottom

Capturing NTSC analog signal at 60fps ?

category: general [glöplog]
 
Hi,

I'm struggling to capture a video for our last prod shown at @party last week. This is an intellivision demo, not working correctly on emulators.
I bought a relatively cheap USB capture dongle on ebay but, bad surprise, it can only handle one resolution at 30fps so some effects don't show well.

Does anybody knows any not too expensive external (means for laptops) NTSC analog (antenna) capture device, possibly working on linux able to capture a low resolution (320x200 or less) but at 60fps ?

Thanks.... I feel a little stuck...

This is what I bought :
http://www.ebay.com/itm/231060913727?_trksid=p2057872.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

(Yes it was written it can only handle 740x480 pixels @ 30 fps for NTSC... my fault)
I have made good expieriences with this.:

AVerMedia AVerTV Hybrid Volar HX…

Analog anetenna input, ntsc, pal, etc.

Captured AppleII / GS, C64, Atari XL.....

Is an older device, but works in W7/64-bit. Make sure it comes with CD and dongle.
added on the 2017-06-17 15:40:44 by Exin Exin
Note that NTSC isn't 60 frames per second, but 60 fields (well, technically 59.94). Each field contains every other line, and two and two fields are often stored together as one frame, resulting in 30 frames per second. This is called interlaced video, and must be deinterlaced before display on a modern progressive scan screen. I'm not familiar with your device, but it might actually deliver correct video.

Old video game consoles often use a hack to produce 60 frames per second at half the vertical resolution (240 lines). I don't know anything about Intellivision, but if it uses such a hack, you can use a "bob deinterlacer" to convert interlaced 720x480@30 to progressive scan 720x240@60. Just scale the image afterwards (mind that the NTSC pixel aspect ratio isn't 1:1).

For anything that doesn't use the half resolution progressive scan hack, you need proper deinterlacing. Lots of software and hardware claim to do this, but most do a terrible job to be honest. Proper deinterlacing is difficult, because it involves reconstructing the missing lines using edge directed interpolation and motion compensation. If you want quality, look into the QTGMC script for VapourSynth or AviSynth. Also take care to deinterlace BEFORE you resize to a lower than native (480 lines) resolution!
added on the 2017-06-17 16:18:51 by absence absence
Note that it's best not to resize to a lower resolution, as croma subsampling doesn't play nice with the crisp signal from consoles.
added on the 2017-06-17 16:30:05 by absence absence
first... this progressive scan thing is not a "hack". it fits perfectly the definition of the video signal and is perfectly legal - its just the absence of the half-complete line which initiates the half-line shift for interlace</nitpicking>

that said, in deinterlacers you are looking for an option that says "convert fields to frames".

(and yes indeed, pretty much all of the 80s videogame stuff uses this progressive scan stuff)
added on the 2017-06-17 18:52:39 by groepaz groepaz
Ah ! some hope so !

So, I tried the bob deinterlacer without success.
But I wonder if this is not due to the way the dongle's tool is encoding the video recording.

It looks to be :
MPEG-1/2 (mpgv)
Res : 352x288
Displ res: 352x288
frame rate: 25
Decoded format: 4:2:0 YUV

So it is not anymore some 720x480@30

Could it be the reason ?
Moreover, even if my "lost frames" are interlaced I should see something no ? Right now, just black pixels were it should not be black.
Quote:
first... this progressive scan thing is not a "hack". it fits perfectly the definition of the video signal and is perfectly legal - its just the absence of the half-complete line which initiates the half-line shift for interlace</nitpicking>


That's what makes it a hack. :) It's not a legal broadcast signal, and while every CRT supports it, some digital TVs have issues with it.

Quote:
So, I tried the bob deinterlacer without success.
But I wonder if this is not due to the way the dongle's tool is encoding the video recording.


Hard to say, but you're definitely not going to get 60 dps from that file. Can the tool capture in other formats? Can you use a third-party tool? If not, you might need a different dongle. Note that it says "frame rate: 25", which suggests PAL instead of NTSC. Maybe that's why you get black pixels?
added on the 2017-06-18 12:36:48 by absence absence
The broadcast signal is a big pile of hacks, just like the whole analog television system.
added on the 2017-06-18 14:13:58 by yzi yzi
At least it's a standardised pile of hacks. ;) Unfortunately digital SD TV inherited most of the cruft, but it's slowly getting better. HD gave us square pixels, and UHD (4K) removes interlacing. In another 20 years, maybe they'll get rid of chroma subsampling and video levels as well!
added on the 2017-06-18 17:25:51 by absence absence
Absence, thanks ! :)
So I successfully encoded using Amcap a video as raw as possible, then deinterlaced it with Avisynth/Bob and finally reencoded vith VLC and now it looks as it should !

Code: Video = AviSource ("voyage.avi") # Or whatever input # Separates the interlaced images and places them in individual frames Video = SeparateFields (Video) # Recreates the full frame by placing the lines to the original position Video = Bob (Video) return Video


I kept the odd and even frames annd it works :)

Thanks a lot, without your advice, I would never have succeeded !

Irata will post the video soon.
Great, you're on the right track! I want to suggest a change to your script, since "bob deinterlacing" apparently has different meanings. For source material with the progressive scan hack, like your game console output, the lines should not be moved like the Bob filter in AviSynth does. Try this instead:

- SeparateFields (results in 720x240@60)
- crop 8 unused pixels on left and right side (results in 704x240)
- resize to 640x480 using whatever filter you like the look of

There is some debate about exactly how many pixes to crop from the sides. It depends on the characteristics of your capture device, and doesn't matter much in the end. Horizontal and vertical resizing can be done separately, for example if you want unfiltered line doubling.
added on the 2017-06-19 13:01:33 by absence absence
Quote:
In another 20 years, maybe they'll get rid of chroma subsampling and video levels as well!

Don't forget overscan. And Y'CbCr done in gamma space instead of linear.

(I happen to like both interlacing and chroma subsampling, but of course not during processing, and I'm aware I'm strongly outnumbered there.)
added on the 2017-06-19 15:45:50 by Sesse Sesse

login

Go to top