VideoHelp Forum
+ Reply to Thread
Results 1 to 15 of 15
Thread
  1. I want to experiment with converting a video to MP4 using many different settings for things like noise reduction. Is there any special-purpose video player that would let me take two or three converted videos in MP4 format and time-synch those for playback so I could view - for example - the left half of the video from one of the MP4s and the right half of the video from the other MP4? The point is I want to do a side by side comparison during playback, time-synching the two source videos to the same frame.
    Quote Quote  
  2. Banned
    Join Date
    Oct 2014
    Location
    Northern California
    Search PM
    Avisynth is your friend.
    Quote Quote  
  3. The dualview in this looks good but:

    1) Is there a way to force each video to time sync? When I hit the button to go to beginning of video for both videos, they never are in synch.

    2) If there is a synch feature, is there a way to stop and start both videos at the same time, so you can compare the same still image in both windows?

    I find the overall user interface a bit klunky, but if it can synch it would get the job done.
    Quote Quote  
  4. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Newpball suggested best option with avisynth. Most players that play AVS files(avisynth) will do this.

    setup for multiple windows at same time synced:

    For 2 videos:
    ##------------------------------ Two stacked
    clip1 = DirectShowSource("c:\users\bud\desktop\leftVideo.m p4", audio=false).ConvertToYV12()
    clip2 = DirectShowSource("c:\users\bud\desktop\rightVideo. mp4", audio=false).ConvertToYV12()
    StackHorizontal(clip1,clip2 )
    ShowFrameNumber(scroll=true, x=10, y=27, font="Arial", size=24, text_color=$ff0000)
    ShowTime(x=72, y=44, font="Arial", size=24, text_color=$ff0000)
    Subtitle("Frame Rate Invalid for SMPTE", font="Arial", size=24, text_color=$ff0000, align=5)


    For 3 videos: (add subtitle stuff for on screen display)
    ##------------------------------ Three Stacked
    clip1 = DirectShowSource("c:\users\bud\desktop\leftVideo.m p4", audio=false).ConvertToYV12()
    clip2 = DirectShowSource("c:\users\bud\desktop\rightVideo. mp4", audio=false).ConvertToYV12()
    clip3 = AVISource("thirdVideo.avi").AddBorders(360,0,360,0 ).ConvertToYV12() #add borders to match bottom two together
    StackVertical(StackHorizontal(clip1,clip2 ), clip3) ##clip3 bottom
    StackVertical(clip3, StackHorizontal(clip1,clip2 )) ##clip3 top
    For 4 videos: (add subtitle stuff for on screen display)
    ##----------------------------- Four Stacked
    clip1 = DirectShowSource("c:\users\bud\desktop\leftVideo.m p4", audio=false).ConvertToYV12()
    clip2 = DirectShowSource("c:\users\bud\desktop\rightVideo. mp4", audio=false).ConvertToYV12()
    clip3 = AVISource("thirdVideo.avi").ConvertToYV12()
    clip4 = AVISource("forthVideo.avi").ConvertToYV12()
    StackVertical(StackHorizontal(clip1,clip2 ),stackhorizontal(clip3,clip4)) ##clip1/2 top
    Click image for larger version

Name:	ScreenHunter_138 Mar. 06 00.19.jpg
Views:	342
Size:	72.6 KB
ID:	30610
    Quote Quote  
  5. Beware: using AviSynth's StackHorizontal() requires the two videos have the same height. Using StackVertical() requires the two videos have the same width.
    Quote Quote  
  6. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Jagabo,

    Yes thanks. I actually added the addborders to the 3 video sample to correct for this as an example. If he is unfamiliar with Avisynth it could present a problem and I may have made a wrong assumption, but since he said he wanted to compare different filters (like noise filtering) I assumed they would be not only the same video but same size... I may have over assumed... LOL.

    I tried to make the 2 video as complete as possible also since the reason to use more than that would be less likely...

    This would fix his sync problem though unless the frame rates, etc. are altered. Hope your information helps him if he tries to use Avisynth.

    Thanks
    Quote Quote  
  7. I just wanted to make sure the OP understood the frame sizes had to match.

    And here's an example of a batch file that will build the script for you then launch WMP to play it:

    Code:
    echo v1 = DirectShowSource("%1") > "%~dp1_Play2SBS.avs"
    echo v2 = DirectShowSource("%2") >> "%~dp1_Play2SBS.avs"
    echo StackHorizontal(v1,v2) >> "%~dp1_Play2SBS.avs"
    "C:\Program Files (x86)\Windows Media Player\WMPlayer.exe" "%~dp1_Play2SBS.avs"
    del "%~dp1_Play2SBS.avs"
    Put that batch file in your SendTo folder and call it Play2SBS.bat. Then you can select two video files in Explorer, right click on one, and select Send To -> Play2SBS.bat. The script will be built automatically, WMP will play it, then the script will be deleted.

    Alternatively, you can put the batch file anywhere you want, and drag/drop a pair of files to it.
    Last edited by jagabo; 6th Mar 2015 at 08:17.
    Quote Quote  
  8. I tend to create multiple copies of the same Avisynth script, each one using different filtering and/or resizing etc, as I prefer to check how the video is going to look before going to the trouble of encoding it most of the time.
    It's easy enough to open multiple Avisynth scripts in multiple instances of MPC-HC, each running fullscreen on the TV/monitor. You need to sync them up manually but then it's easy to switch between them while they're running full screen or pause on identical frames.... but once again I prefer the full screen option rather than side by side most of the time so I can preview it under the same conditions as I'll generally be watching it after it's encoded.

    If I was going to do the side by side comparing thing using Avisynth though, I'd probably still do the comparing before the video is encoded most of the time. Naturally there'll be times when you might want to compare the encoded versions, but I tend to compare the input video a lot more myself.
    Quote Quote  
  9. Banned
    Join Date
    Oct 2004
    Location
    Freedonia
    Search Comp PM
    Originally Posted by sheppaul View Post
    you can ask to the author directly here: http://forum.doom9.org/showthread.php?t=171765
    And since this is Doom9 we are talking about you can also enjoy the fun possibility that the asshat members there will simply blame you for being an idiot and not help you at all or perhaps for some random reason you'll actually get help this time. If it hasn't happened already the author will soon enough tire of "How do I do _______ ?" questions and only reply when someone finds a new and interesting problem with his software. So if you're going on Doom9 for help, do it quickly and hope that you get lucky.
    Quote Quote  
  10. our brain can play tricks on us looking at videos on screen simultaneously, better is to interleave frames
    Code:
    video1=avisource("a.avi")
    video2=avisource("b.avi")
    interleave(video1,video2)
    return last
    then use a player that can step through video frame by frame like MPC-HC, you try to write some subs in those videos as well to know which is which
    Last edited by _Al_; 6th Mar 2015 at 14:35.
    Quote Quote  
  11. Originally Posted by _Al_ View Post
    our brain can play tricks on us looking at videos on screen simultaneously, better is to interleave frames
    Code:
    video1=avisource("a.avi")
    video2=avisource("b.avi")
    interleave(video1,video2)
    return last
    then use a player that can step through video frame by frame like MPC-HC, you try to write some subs in those videos as well to know which is which
    That is what I do most of the time. I use VirtualDub to view the videos. And a screen magnifier to zoom in. But sometimes you need to see videos side by side and in motion.
    Quote Quote  
  12. Originally Posted by jagabo View Post
    That is what I do most of the time.
    I got that idea from you, some years back. Like most of the stuff anyway ....
    Quote Quote  
  13. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    A while back someone gave this AVISYNTH to check how much noise, blocking, etc. was introduced and I use it a lot as a quick 'enhanced' comparison, no matter what size the video is.

    v1=directshowsource("C:\Users\Bud\desktop\Wedding\ 00166.mts", audio=false).ConvertToYV12()
    v2=directshowsource("C:\Users\Bud\Desktop\Wedding\ 00166.avi", audio=false).ConvertToYV12()
    sub = v1.subtract(v2)
    substrong = sub.levels (122,1,132,0,255)
    return StackVertical (StackHorizontal (v1.subtitle ("original",size=60),v2.subtitle("encoded",size=60 )), StackHorizontal(sub.subtitle("Difference",size=60) ,substrong.subtitle("Difference amplified",size=60)))

    Gives a nice comparison:
    Click image for larger version

Name:	ScreenHunter_138 Mar. 11 08.40.jpg
Views:	404
Size:	120.9 KB
ID:	30675
    Quote Quote  
Visit our sponsor! Try DVDFab and backup Blu-rays!