Video Player (for scoring)?

I may have been snoozing and missed it, but is there a video player in Rack?

I know it can be done loading the Rack VST in a DAW that can play videos but I would like to avoid that.

For a module that does this, it would be nice to be able to extract (and playback) the audio too (even if this has to be rendered first) for further processing, so that everything syncs perfectly.

I am guessing that there is significant processor cost to this and there are maybe reasons why it can’t be done?

Non existent in Rack, and honestly that is not something you’lld want to be doing in Rack.

As getting all to line up and play and stop, continue, rewind etc, will bring you so much problems in getting it going right, just not worth the effort.

If it is just for rough playback and estimating, then there are several video-players in VST format that you could load in VCV Host.

For real scoring, → Linear DAW environment.

2 Likes

As getting all to line up and play and stop, continue, rewind etc, will bring you so much problems in getting it going right, just not worth the effort

This would be trivial to do with the Entrian modules, which include a comprehensive timeline and so on, right inside VCV: Entrian Sequencers: VCV Rack Plugin - Entrian Audio

@Richie

@Richie

Hmm? :slightly_smiling_face:

While it’s true that Entrian Sequencers have a timeline, with a playhead that can be scrubbed back and forth, there’s no standard for communicating that playhead position to other modules (and therefore no output for it!)

Some of us did discuss the possibility of creating such a standard a while ago, but it didn’t come to any conclusion.

@Nik, I’d be interested to know whether you’ve thought about how you’d expect to sync up the music with the video, or vice versa? Would you expect to be using a Rack sequencer to play your song, and to have the video keep in sync? If so, do you have a feel for how that should work?

Or is it the opposite, and you’d want the video player to have the usual playhead controls and for the music to somehow sync up with it?

2 Likes

[Things that could be done in Rack inserted.]

I just finished this today: Flow - YouTube. To do it I extracted the audio from the iPhone video in QT to get it into Rack. [1] video player in Rack with audio out would remove this step.

Once in Rack I used Unfiltered Audio Sunder to extract envelopes and gates spilt on amplitude. [2] I am now working with audio only so I can’t see the video of the waves to judge visually what might be good waves to focus on.

I toyed for a while using Nysthi’s Big Timer to trigger events a specific points, but it was a faff to go and watch the video, write down times, then trigger them in Rack, and I decided that the piece didn’t really need it ;). [3] Much easier if there was a video player that you could insert markers (say 16?) with gates out via jacks.

When I’d built my patch I recorded it in the VCV Recorder and then the .wav had a little Presswerk and Satin and I then had to merge it back with the .mp4 in Live. [4] That merge could be done in Rack too?

So, basic as anything. I take your point @Eurikon that Rack isn’t the place for doing serious scoring. I will look into a VST video player as I had not thought of that. It would have solved some of my problems today. D’oh!

@Richie CV controlled transport would be great, along with the gates that I mentioned.

1 Like

Wow, OK, I’m glad I asked. :slight_smile: You’re effectively using the video itself as the sequencer, by deriving envelopes and gates from the video’s audio track. Scrubbing the video would (almost) scrub through the music automatically.

A plain old video player module, that worked like a sample player, would do this.

The next level is to have the ability to insert triggers into the video “sequence”. So that could be a video player with some trigger outputs and an editable timeline of triggers. Next step is an editable CV sequence…

…and now that’s sounding much more like Entrian Timeline with support for video. Either it has a track type of “video” and shows the video on its own panel, or it has a “Playhead” output that can drive a separate video player module.

I don’t think the video player piece of this is something I want to tackle, but I’d happily support a Playhead standard, which I guess would be a cable that carried encoded Start / Stop / Jump commands. (I expect that might be easy to get 95% right and then a nightmare to get 100% right, in terms of avoiding jitter.)

One thought for anyone considering tackling the video player idea - maybe it would be both easier and better to have the module remote-control an external video player like VLC, rather than embedding the video into Rack itself. You’d have the video in its own window, at its own size, on its own monitor if you have two. The Rack module would “just” take the Playhead and send it to VLC, and pull the audio from the video file into Rack to play it, again obeying the Playhead. VLC has an HTTP API that ought to do everything needed, but I’ve never used it: VLC HTTP requests.

1 Like

Thank you for clarifying my meaning :slight_smile:

Yes! Exactly what i was thinking of. A hybrid solution with VLC might well be a profitable area to explore if I have piqued any dev interest in this! Thanks for reiterating the need for a standard and for offering a potential means of integrating it with your Timeline.

there’s no standard for communicating that playhead position to other modules (and therefore no output for it!)

Thank you for the correction and clarification! For what it’s worth, I didn’t have direct communication of playhead position in mind :slightly_smiling_face: , and just meant that these modules are ideal when wanting to keep everything in sync in the modular context, i.e. utilizing CV and gate events and so on. They are a big help in doing synced “more traditionally linear” projects this way, making it trivial to line up multiple elements in a controlled traditional sequencer fashion, right inside VCV, a vibe that isn’t necessarily readily associated with VCV and modular that often.

The possibility of actual playhead position standardizing and eventual use of video player etc. modules is very interesting, and opens up potential uses for VJ and such cases as well, not just for doing audio to-picture inside VCV :+1:

1 Like

I’d use a video player like a sampler.

for instance if you could define the start and stop locations along with the playback speed/direction and trigger it to loop or one-shot. Would make for some interesting looking boom boxes lol

Next thing you know, you’ve got “when doves cry” made entirely out of buttox and the video title is named “when butts cry”

I’d be inclined to either send cv output over adat to a second machine running Isadora (and chuck a master delay on the Vcv machine to match Isadora machine’s input latency), or via Blackhole/Midi to Isadora on same machine (if enough grunt)

Could also sniff what Mastah/Slaveh throw about over UDP and haul that into Isadora, or use Trowasoft’s OSC modules…