Is there a tool that can play multiple videos while displaying a histogram of each video simultaneously?

  • Is there a tool that can do that for one video? If so, run it twice, right? – Peter Cordes Feb 1 '15 at 11:32
  • That would work, but I haven't found one to do it live. I want to be able to seek and pause while the histogram is updated near-realtime(within a frame or two, ideally realtime). – rsaxvc Feb 4 '15 at 14:46
  • I've started trying to port camstudio to VS2013Community, if that works, I'll use the pixel-ripping frontend and generate my histograms that way. – rsaxvc Feb 5 '15 at 6:58
  • Just came across this idea: interleave two streams, so you get frame1a, frame1b, frame2a, frame2b, etc. forum.doom9.org/showthread.php?p=1475311#post1475311. Sounds like a good way to do some kinds of comparisons. Esp. if you have something that can framestep backwards, to flip between the same frame. – Peter Cordes Feb 5 '15 at 16:04
  • Blackmagic smartscope duo will do 2, if you're looking for a hardware solution. – Jason Conrad Feb 5 '15 at 17:20

IDK how well this would work. Prob. not at all for vids with differing GOPs, but you could try using something to mirror your keystrokes to multiple windows.

Autohotkey can do that on Windows. On GNU/Linux, Terminator can send keystrokes to multiple gnome-terminal tabs at once, so you could control mplayer that way (since it reads the tty as well as accepting keystrokes to its windows.) I'm sure there's a way to dual-box games on GNU/Linux by mirroring keystrokes to arbitrary windows, I've just never had occasion to go looking.

If any open-source player has the kind of histogram you're looking for, and an existing API for writing GUI frontends, then in theory it shouldn't be too hard to (pay a coder to) hack something up that sends seek-to-a-position commands to multiple instances of a player. This could solve loss of sync problems after seeking, if you get that with blindly driving multiple players.

ffmpeg has a histogram filter. From an example in the ffmpeg docs: play a vid with a filtered version side-by-side: -vf 'split[a][b]; [a]pad=iw*2:ih[src]; [b]histogram[filt]; [src][filt]overlay=w'. I just changed deshake to histogram.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.