summaryrefslogtreecommitdiff
path: root/libavdevice/decklink_common.h
diff options
context:
space:
mode:
authorJon Morley <jmorley@pixsystem.com>2018-05-31 02:45:07 -0700
committerMarton Balint <cus@passwd.hu>2018-06-13 00:15:06 +0200
commit0946c0ec177dc48ef0677f890aa42d95e667c417 (patch)
tree877152cd20bc425ee465f55e8afd9e274dd7df26 /libavdevice/decklink_common.h
parentfb480a1f1e0cba88c3c7424655bacff7c465692b (diff)
avdevice/decklink_dec: capture timecode to metadata when requested
If the user provides a valid timecode_format look for timecode of that format in the capture and if found store it on the video avstream's metadata. Slightly modified by Marton Balint to capture per-frame timecode as well. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavdevice/decklink_common.h')
-rw-r--r--libavdevice/decklink_common.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/libavdevice/decklink_common.h b/libavdevice/decklink_common.h
index 8064abdcb9..96b001c2d8 100644
--- a/libavdevice/decklink_common.h
+++ b/libavdevice/decklink_common.h
@@ -93,6 +93,7 @@ struct decklink_ctx {
BMDDisplayMode bmd_mode;
BMDVideoConnection video_input;
BMDAudioConnection audio_input;
+ BMDTimecodeFormat tc_format;
int bmd_width;
int bmd_height;
int bmd_field_dominance;
@@ -169,6 +170,17 @@ static const BMDVideoConnection decklink_video_connection_map[] = {
bmdVideoConnectionSVideo,
};
+static const BMDTimecodeFormat decklink_timecode_format_map[] = {
+ (BMDTimecodeFormat)0,
+ bmdTimecodeRP188VITC1,
+ bmdTimecodeRP188VITC2,
+ bmdTimecodeRP188LTC,
+ bmdTimecodeRP188Any,
+ bmdTimecodeVITC,
+ bmdTimecodeVITCField2,
+ bmdTimecodeSerial,
+};
+
HRESULT ff_decklink_get_display_name(IDeckLink *This, const char **displayName);
int ff_decklink_set_configs(AVFormatContext *avctx, decklink_direction_t direction);
int ff_decklink_set_format(AVFormatContext *avctx, int width, int height, int tb_num, int tb_den, enum AVFieldOrder field_order, decklink_direction_t direction = DIRECTION_OUT, int num = 0);