Skip to content

This project helps you view and assess videos by displaying sections of the video side by side. Inspired by the Vivict project.

License

Notifications You must be signed in to change notification settings

nav9/splitVideoQualityViewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Compare multiple videos simultaneously by vertically splitting them:
Alt text
Compare videos of varied dimensions:
Alt text
Compare videos by horizontally splitting them and even viewing greyscale videos:
Alt text
You can view many more videos simultaneously.

Purpose

Inspired from the brilliant Vivict project, this program helps you visualize multiple videos side-by-side. It helps compare the quality difference between videos. This project was created because Vivict didn't support some file formats, and supported the display of only two videos simultaneously.

Install

First you need to install some dependent libraries. Execute pip3 install -r requirements.txt. It's not necessary to install the exact versions mentioned in the requirements.txt file, so you can remove the ==versionNumber if you'd like.

Run

python3 main.py -v video1.mkv video2.mp4
You can add more videos if you like:
python3 main.py -v video1.mkv video2.mp4 video3.flv video4.mov video5.ogx
The maximum number of videos supported, is the lowest value of the number of rows or columns of the smallest video, divided by 5 (where 5 is the minimum number of pixels that a video needs to display. You can change this value in the code). Displaying a lot of videos simultaneously requires a fast processor.

Controls

  • Esc to exit.
  • Spacebar to pause for one second. You can press the spacebar multiple times to make it pause longer.
  • A or a to toggle the axis of split (horizontal or vertical). The axis is vertical by default.
  • L or l to toggle the display of the line separating the videos. This is switched on by default. No line will be shown if only one video is being played.
  • N or n to toggle the display of filenames. This is switched off by default.
  • up arrow to switch positions of the videos upward if split horizontally, and backward if split vertically.
  • down arrow to switch positions of videos downward if split horizontally, and forward if split vertically.

More info

  • Videos will dynamically adapt to availability of video frames. So if two videos are played, where one ends after 1 minute and the other continues playing, the display will dynamically adapt to stop showing the first video when it no longer has any frames to display.
  • No audio is played, since multiple videos may be involved. Also, since the focus is on visual quality evaluation.
  • Tested video formats: mkv, avi, mxf, flv, ogx, mp4, hevc, swf, m2ts, ts, m2v, vob, webm, mkv, wmv, mov, wtv, mpeg, 3gp, mpg, asf, mts (theoretically, it should support any video file that Python's OpenCV package supports).

Feature upgrades possible:

  • Videos of two different framerates.

  • Split video depending on mouse pointer position.

  • Add more key and mouse controls.

  • Add more video metadata on-screen.

  • Add support for multiple monitors

  • Options for seeking to a specific point in the video and moving forward and backward.

  • Video speed adjustment.

  • Compare video quality objectively (https://superuser.com/a/338734/55249)

    Donate

About

This project helps you view and assess videos by displaying sections of the video side by side. Inspired by the Vivict project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages