diff --git a/libavdevice/decklink_common.cpp b/libavdevice/decklink_common.cpp index 659aa9be3f..04c0f99edc 100644 --- a/libavdevice/decklink_common.cpp +++ b/libavdevice/decklink_common.cpp @@ -200,7 +200,7 @@ 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, int num) + decklink_direction_t direction) { struct decklink_cctx *cctx = (struct decklink_cctx *)avctx->priv_data; struct decklink_ctx *ctx = (struct decklink_ctx *)cctx->ctx; @@ -214,8 +214,8 @@ int ff_decklink_set_format(AVFormatContext *avctx, int i = 1; HRESULT res; - av_log(avctx, AV_LOG_DEBUG, "Trying to find mode for frame size %dx%d, frame timing %d/%d, field order %d, direction %d, mode number %d, format code %s\n", - width, height, tb_num, tb_den, field_order, direction, num, (cctx->format_code) ? cctx->format_code : "(unset)"); + av_log(avctx, AV_LOG_DEBUG, "Trying to find mode for frame size %dx%d, frame timing %d/%d, field order %d, direction %d, format code %s\n", + width, height, tb_num, tb_den, field_order, direction, cctx->format_code ? cctx->format_code : "(unset)"); if (direction == DIRECTION_IN) { res = ctx->dli->GetDisplayModeIterator (&itermode); @@ -248,7 +248,6 @@ int ff_decklink_set_format(AVFormatContext *avctx, bmd_height == height && !av_cmp_q(mode_tb, target_tb) && field_order_eq(field_order, bmd_field_dominance)) - || i == num || target_mode == bmd_mode) { ctx->bmd_mode = bmd_mode; ctx->bmd_width = bmd_width; @@ -314,8 +313,8 @@ int ff_decklink_set_format(AVFormatContext *avctx, return -1; } -int ff_decklink_set_format(AVFormatContext *avctx, decklink_direction_t direction, int num) { - return ff_decklink_set_format(avctx, 0, 0, 0, 0, AV_FIELD_UNKNOWN, direction, num); +int ff_decklink_set_format(AVFormatContext *avctx, decklink_direction_t direction) { + return ff_decklink_set_format(avctx, 0, 0, 0, 0, AV_FIELD_UNKNOWN, direction); } int ff_decklink_list_devices(AVFormatContext *avctx, diff --git a/libavdevice/decklink_common.h b/libavdevice/decklink_common.h index 35422a300b..8b3dbce2fb 100644 --- a/libavdevice/decklink_common.h +++ b/libavdevice/decklink_common.h @@ -197,8 +197,8 @@ static const BMDTimecodeFormat decklink_timecode_format_map[] = { }; 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); -int ff_decklink_set_format(AVFormatContext *avctx, decklink_direction_t direction, int num); +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 ff_decklink_set_format(AVFormatContext *avctx, decklink_direction_t direction); int ff_decklink_list_devices(AVFormatContext *avctx, struct AVDeviceInfoList *device_list, int show_inputs, int show_outputs); void ff_decklink_list_devices_legacy(AVFormatContext *avctx, int show_inputs, int show_outputs); int ff_decklink_list_formats(AVFormatContext *avctx, decklink_direction_t direction = DIRECTION_OUT); diff --git a/libavdevice/decklink_dec.cpp b/libavdevice/decklink_dec.cpp index ab7f28112e..19ea1eccad 100644 --- a/libavdevice/decklink_dec.cpp +++ b/libavdevice/decklink_dec.cpp @@ -1005,9 +1005,6 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx) class decklink_input_callback *input_callback; AVStream *st; HRESULT result; - char fname[1024]; - char *tmp; - int mode_num = 0; int ret; ctx = (struct decklink_ctx *) av_mallocz(sizeof(struct decklink_ctx)); @@ -1062,15 +1059,7 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx) cctx->raw_format = MKBETAG('v','2','1','0'); } - av_strlcpy(fname, avctx->url, sizeof(fname)); - tmp=strchr (fname, '@'); - if (tmp != NULL) { - av_log(avctx, AV_LOG_WARNING, "The @mode syntax is deprecated and will be removed. Please use the -format_code option.\n"); - mode_num = atoi (tmp+1); - *tmp = 0; - } - - ret = ff_decklink_init_device(avctx, fname); + ret = ff_decklink_init_device(avctx, avctx->url); if (ret < 0) return ret; @@ -1111,7 +1100,7 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx) goto error; } - if (mode_num == 0 && !cctx->format_code) { + if (!cctx->format_code) { if (decklink_autodetect(cctx) < 0) { av_log(avctx, AV_LOG_ERROR, "Cannot Autodetect input stream or No signal\n"); ret = AVERROR(EIO); @@ -1119,9 +1108,9 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx) } av_log(avctx, AV_LOG_INFO, "Autodetected the input mode\n"); } - if (ff_decklink_set_format(avctx, DIRECTION_IN, mode_num) < 0) { - av_log(avctx, AV_LOG_ERROR, "Could not set mode number %d or format code %s for %s\n", - mode_num, (cctx->format_code) ? cctx->format_code : "(unset)", fname); + if (ff_decklink_set_format(avctx, DIRECTION_IN) < 0) { + av_log(avctx, AV_LOG_ERROR, "Could not set format code %s for %s\n", + cctx->format_code ? cctx->format_code : "(unset)", avctx->url); ret = AVERROR(EIO); goto error; }