VideoHelp Forum
+ Reply to Thread
Results 1 to 10 of 10
Thread
  1. After not having any success with the Timing settings, and despite having 0 dropped/inserted frames and having slow/fast pitch sound (Sync audio to video) or audio synchronization issues (other 2 options, combination of the below two checkboxes), I've tried ffmpeg for the video capture. It's a command line program (cli) so it's a very lightweight and can do many things, with capturing video one of them.
    Download the program from here
    https://ffmpeg.zeranoe.com/builds/
    select your Windows architecture 32 or 64 bit and click Download Build below the options.
    I suggest that you make a new folder to have the program there and have it available just by opening the command line. I suggest making a new "tools" folder in C: drive and then "bin" inside tools, where you put the program. After having the folder structure C:\tools\bin, from the zip file you downloaded above, extract only the 3 exe files from folder bin inside the zip file to the above directory. You must then add that folder to the PATH variable, check how to do it here
    https://www.architectryan.com/2018/03/17/add-to-the-path-on-windows-10/
    and add C:\tools\bin to it. Now you can open a command line window, type ffmpeg simply and the program will be available.

    First you need to get your capture card's device name. Open a command line window and type
    Code:
    ffmpeg -list_devices true -f dshow -i dummy
    you will see something like
    Code:
    [dshow @ 0000018af4c9d980] DirectShow video devices (some may be both video and audio devices)
    [dshow @ 0000018af4c9d980]  "ATI TV Wonder 600 USB 2.0"
    [dshow @ 0000018af4c9d980]     Alternative name "@device_pnp_\\?\usb#vid_0438&pid_b002#660749000687#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{54353d15-e717-4d94-b574-685ce1a209e9}"
    [dshow @ 0000018af4c9d980] DirectShow audio devices
    [dshow @ 0000018af4c9d980]  "WDM 2883 Audio"
    [dshow @ 0000018af4c9d980]     Alternative name "@device_pnp_\\?\usb#vid_0438&pid_b002#660749000687#{33d9a762-90c8-11d0-bd43-00a0c911ce86}\{8dbf1283-572e-4b01-bfcc-14cfeb772501}"
    You need just the name, "ATI TV Wonder 600 USB 2.0".

    The capture command is like this
    Code:
    ffmpeg -f dshow -rtbufsize 1G -show_video_device_dialog true -show_video_crossbar_connection_dialog true -i video="ATI TV Wonder 600 USB 2.0":audio="ATI TV Wonder 600 USB 2.0" -t 02:00:00 -video_size 720x576 -framerate 25 -pixel_format yuyv422 -c:v huffyuv -c:a flac "D:\vhs_captures\capture.mkv"
    you need to change the card's name if it's not an ATI 600 USB like mine, the resolution and the framerate if you aren't on PAL region and the stop condition if you don't want to stop it yourself with Ctrl+C, in which case remove the whole "-t 02:00:00". The available capture resolutions for your card can be found with
    Code:
    ffmpeg -list_options true -f dshow -i video="ATI TV Wonder 600 USB 2.0"
    and this results in something like

    Code:
    [dshow @ 00000149a786d980] DirectShow video device options (from video devices)
    [dshow @ 00000149a786d980]  Pin "Capture" (alternative pin name "0")
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=720x576 fps=25 max s=720x576 fps=25
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=176x144 fps=25 max s=352x288 fps=25
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=160x120 fps=25 max s=640x480 fps=25
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=352x576 fps=25 max s=352x576 fps=25
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=480x576 fps=25 max s=480x576 fps=25
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=720x480 fps=29.97 max s=720x480 fps=29.97
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=160x120 fps=29.97 max s=640x480 fps=29.97
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=176x144 fps=14.985 max s=176x144 fps=29.97
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=352x480 fps=29.97 max s=352x480 fps=29.97
    [dshow @ 00000149a786d980]   pixel_format=yuyv422  min s=480x480 fps=29.97 max s=480x480 fps=29.97
    [dshow @ 00000149a786d980]  Pin "Audio" (alternative pin name "3")
    [dshow @ 00000149a786d980] Crossbar Switching Information for ATI TV Wonder 600 USB 2.0:
    [dshow @ 00000149a786d980]   Crossbar Output pin 0: "Video Decoder" related output pin: 1 current input pin: 2 compatible input pins: 0 1 2
    [dshow @ 00000149a786d980]   Crossbar Output pin 1: "Audio Decoder" related output pin: 0 current input pin: -1 compatible input pins: 3 4
    [dshow @ 00000149a786d980]   Crossbar Input pin 0 - "Video Tuner" related input pin: 3
    [dshow @ 00000149a786d980]   Crossbar Input pin 1 - "Video Composite" related input pin: 4
    [dshow @ 00000149a786d980]   Crossbar Input pin 2 - "S-Video" related input pin: 4
    [dshow @ 00000149a786d980]   Crossbar Input pin 3 - "Audio Tuner" related input pin: 0
    [dshow @ 00000149a786d980]   Crossbar Input pin 4 - "Audio Line" related input pin: 1
    for NTSC it's
    Code:
    -video_size 720x480 -framerate 29.97
    Lastly you need to enter the directory and the file name of the capture.

    Upon entering the command, you will see the familiar Video=>Capture filter dialog from VirtualDub where you need to select your region, PAL_B if you are on PAL region or NTSC_M if you are on NTSC



    and then the dialog (Video => Crossbar in VirtualDub) where you select which connection do you use to capture, Composite or S-Video



    after that the capture will start



    the resulting file is HuffYUV lossless video and FLAC lossless audio (to reduce the size over uncompressed audio), packaged in matroska MKV. If you don't like the MKV and want the VirtualDub like AVI, just change the extension on the capture command to avi. If you don't like the FLAC audio, change the flac in the command line to copy and ffmpeg will simply copy the uncompressed audio to the file like VirtualDub does without compressing it to FLAC.

    To actually see the picture to set up the VCR for the capture, I suggest

    https://www.videohelp.com/software/AmaRecTV

    that doesn't have the Overlay/Preview problems that VirtualDub may have on Windows 10.

    What do you think? Is ffmpeg a viable alternative for VirtualDub capturing?
    Quote Quote  
  2. Capturing Memories dellsam34's Avatar
    Join Date
    Jan 2016
    Location
    Member Since 2005, Re-joined in 2016
    Search PM
    Good write up, But if someone has a good VCR with line TBC and a capture device/card with built in full frame TBC or an external full frame TBC in the workflow any capture software should work as it suppose to, But if the VCR is low end, the capture device is mediocre then this might solve the problem with a trade off of not seeing what's being captured.
    Quote Quote  
  3. Can be used on linux, and possibly macos as well. The command line options are a bit different though. I know on linux you can pipe the output to a video player (like VLC or ffplay) to get a live preview, I think the same should be possible on windows. Ffmpeg has some some extra options for audio/video sync, haven't tested them though.
    Quote Quote  
  4. Originally Posted by Hackerpcs View Post
    Is ffmpeg a viable alternative for VirtualDub capturing?
    Of course. Whatever works and gets quality you find acceptable. Some people here just can't accept that not everybody wants to spend $1000 to get the ultimate in quality.
    Quote Quote  
  5. Originally Posted by jagabo View Post
    Originally Posted by Hackerpcs View Post
    Is ffmpeg a viable alternative for VirtualDub capturing?
    Of course. Whatever works and gets quality you find acceptable. Some people here just can't accept that not everybody wants to spend $1000 to get the ultimate in quality.
    This is more about replacing VirtualDub for all use cases, I do have a high quality JVC HR-7600EK (no external TBC by choice) and VirtualDub seems to mess up even on good conditions without a reason
    Quote Quote  
  6. The good thing about VirtualDub is that is has a million settings that can be adjusted to work with just about any raw video capture device. The bad thing about VirtualDub is it has a million settings that need to be adjust to work with any particular raw capture device.

    In any case, as long as you're capturing YUY2 video and saving as HuffYUV with ffmpeg, what you have is exactly the same quality you would get with VirtualDub if you could get it working properly.
    Quote Quote  
  7. Wow, thank you Hackerpcs! After weeks of struggling with sync issues I switched from VirtualDub to ffmpeg. I have no TBC and no desire to fork out thousands for one. All I have is an AverMedia C038 (€40) and a Sony VCR I got from ebay €70.

    VirtualDub is very unforgiving to irregularities. My capture card or VCR sends a reduced number of frames during empty parts and some of my tapes have small damaged sections. VirtualDub would end up doing some extreme re-sync to compensate for these little defects and completely destroy the audio with pitch shifting.

    My ffmpeg outputs look indistinguishable to me compared to VirtualDub. Maybe there are a few dropped frames in there if I go through it frame by frame, but my goal is not to reach the holy grail of digitization, but to capture memories that my family can enjoy. In the end I didn't need a big rack of rare expensive equipment to do it despite what the videophiles said.
    Last edited by bcoughlan; 26th Jan 2022 at 04:18. Reason: Remove auto URL
    Quote Quote  
  8. Originally Posted by Hackerpcs View Post
    To actually see the picture to set up the VCR for the capture, I suggest

    https://www.videohelp.com/software/AmaRecTV

    that doesn't have the Overlay/Preview problems that VirtualDub may have on Windows 10.
    Alternatively ffplay can be used to preview input video.
    Quote Quote  
  9. Member
    Join Date
    Jan 2022
    Location
    Hawaii
    Search Comp PM
    Originally Posted by bcoughlan View Post
    Wow, thank you Hackerpcs! After weeks of struggling with sync issues I switched from VirtualDub to ffmpeg. I have no TBC and no desire to fork out thousands for one. All I have is an AverMedia C038 (€40) and a Sony VCR I got from ebay €70.

    VirtualDub is very unforgiving to irregularities. My capture card or VCR sends a reduced number of frames during empty parts and some of my tapes have small damaged sections. VirtualDub would end up doing some extreme re-sync to compensate for these little defects and completely destroy the audio with pitch shifting.

    My ffmpeg outputs look indistinguishable to me compared to VirtualDub. Maybe there are a few dropped frames in there if I go through it frame by frame, but my goal is not to reach the holy grail of digitization, but to capture memories that my family can enjoy. In the end I didn't need a big rack of rare expensive equipment to do it despite what the videophiles said.
    I haven't captured videotape yet but I'm curious if you can record the audio separately and then add it using AVIDemux or a similar program
    Quote Quote  
  10. Originally Posted by pandy View Post
    ffplay can be used to preview input video.
    ffmpeg capture with a live preview to ffplay:

    Code:
    "G:\Program Files\ffmpeg64\bin\ffmpeg.exe" -y -f dshow -rtbufsize 1G -r 30 -i video="USB Video":audio="Digital Audio Interface (USB Digital Audio)" ^
    -c:v h264_qsv -c:a pcm_s16le output.mkv ^
    -c:v rawvideo -c:a pcm_s16le -f nut - | "G:\Program Files\ffmpeg64\bin\ffplay" -
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!