[FFmpeg-devel] [PATCH] Limited timecode support for lavd/decklink

Marton Balint cus at passwd.hu
Fri Jun 8 00:01:28 EEST 2018


On Thu, 7 Jun 2018, Dave Rice wrote:


[...]

>
> Before I only tested with vitc but now have a serial cable connected as 
> well and found a source tape that has distinct values for LTC and VITC 
> timecodes. The LTC values are from 1:00:00 to 2:00:00 and the VITC 
> values are from 07:00:00 - 08:00:00.
>
> With the deckcontrol utility at https://github.com/bavc/deckcontrol 
> <https://github.com/bavc/deckcontrol>, I can use the command gettimecode 
> to grab the LTC value:
>
> deckcontrol gettimecode
> Issued command 'gettimecode'
> TC=07:37:56:21
> Command sucessfully issued
> Error sending command (No error)
>
> With these patches, I can only grab the vitc values:
>
> for i in rp188vitc rp188vitc2 rp188ltc rp188any vitc vitc2 serial ; do echo -n "${i}: " ; ./ffprobe -v quiet -timecode_format "$i" -f decklink -draw_bars 0 -audio_input embedded -video_input sdi -format_code ntsc -channels 8 -raw_format yuv422p10 -i "UltraStudio Express" -select_streams v -show_entries stream_tags=timecode -of default=nw=1:nk=1 ; echo ; done
> rp188vitc: 
> rp188vitc2: 
> rp188ltc: 
> rp188any: 
> vitc: 01:41:44;06
> vitc2: 01:41:44;21
> serial:
>
> Also it may be interesting in cases like this to support accepting 
> multiple timecode inputs at once, such as "-timecode_format 
> vitc+rp188ltc” though it would need to be contextualized more in 
> metadata.
>
> With a serial cable connected, I can access LTC via the deckcontrol 
> utility but not with this patch.

Well, the way I understand it, deckcontrol is using a totally different 
timecode source: the RS422 deck control interface. In contrast, the
timecode capture in the patch is using the SDI (video) source.

If the deck does not put the LTC timecode into SDI line 10, then the 
driver won't be able to capture it if you specify 'rp188ltc'. I am not 
sure however why 'serial' does not work, but from a quick look at the 
SDK maybe that only works if you use the deck control capture functions...

Regards,
Marton


More information about the ffmpeg-devel mailing list