vrecord icon indicating copy to clipboard operation
vrecord copied to clipboard

Start and stop recording at specified timecodes

Open YohannLYD opened this issue 5 years ago • 3 comments

Being a very lazy technician, I wonder if there would be a way to start and stop a capture the same way Media Express does when we specify the timecode in/timecode out ?

At the moment I see two things that could make it difficult at the moment :

  • The low level RS422 commands to control a deck don't seem very well documented by decks manufacturers
  • vrecord is single threaded, which would prevent the recording and real-time TC reading being done at the same time

Regarding the deck control the decklink API could be used but vrecord being a bash script, it might be better if we could control it directly sending low level commands to the /dev/tty.RS422 Deck Control interface.

For the single thread issue, maybe a side script could read the TC from the serial port and start and stop the recording when the values are reached ?

Just mixed ideas there... :)

Side note if it can be useful, I found the link for an unofficial Sony 9-Pin protocol specs which I was looking for to control our JD30 deck.
ftp://ftp.jurassic.nl/mirrors/ftp.sgi.com/sgi/video/rld/vidpage/s9pinnt.html

YohannLYD avatar Feb 07 '20 17:02 YohannLYD

cc'ing @bturkus on this idea, but we were thinking of merging the functions of https://github.com/bavc/deckcontrol into vrecord. Also the features you're suggesting seem doable. We could have a background process watch the tail of the timecode file as it writes and send a kill command to ffmpeg when a timecode out is found. That would be close but not frame accurate.

dericed avatar Feb 10 '20 14:02 dericed

Hi @YohannLYD this is great idea, and as Dave kinda alluded, we've been planning on some deck control-related work sometime soon. If you have any additional ideas, please share them here (or in separate issues), and we'll try to incorporate them into future plans. Thanks!

bturkus avatar Feb 10 '20 16:02 bturkus

I didn't know about deckcontrol. It's a pretty neat utility! Tailing the timecode file sounds like a good solution as perfect frame accuracy is not a requirement in my case.

Is there a basic ffmpeg command line to output the vitc2 timecode value on the stout?
I am going to give a try to see if I can tweak something between a ffmpeg process and deckcontrol.

YohannLYD avatar Feb 13 '20 09:02 YohannLYD