diff options
author | Devin Heitmueller <dheitmueller@ltnglobal.com> | 2017-10-06 08:55:43 -0400 |
---|---|---|
committer | Marton Balint <cus@passwd.hu> | 2017-10-10 20:07:25 +0200 |
commit | 278588cd0bf788df0194f74e62745f68559616f9 (patch) | |
tree | 6b45e4f085055a103d796dbf7dccf938de348579 /libavdevice/decklink_enc.cpp | |
parent | ff6de6b180fd7c931410f81fb404ab3dbf30d40b (diff) | |
download | ffmpeg-278588cd0bf788df0194f74e62745f68559616f9.tar.gz |
libavdevice/decklink: add support for -sources and -sinks arguments
Add support for enumerating the sources/sinks via the ffmpeg
command line options, as opposed to having to create a real pipeline
and use the "-list_devices" option which does exit() after dumping
out the options.
Note that this patch preserves the existing "-list_devices" option,
but now shares common code for the actual enumeration.
Updated to reflect feedback from Marton Balint <cus@passwd.hu>.
Signed-off-by: Devin Heitmueller <dheitmueller@ltnglobal.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavdevice/decklink_enc.cpp')
-rw-r--r-- | libavdevice/decklink_enc.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libavdevice/decklink_enc.cpp b/libavdevice/decklink_enc.cpp index 25ce7d026c..0776741812 100644 --- a/libavdevice/decklink_enc.cpp +++ b/libavdevice/decklink_enc.cpp @@ -33,6 +33,7 @@ extern "C" { extern "C" { #include "libavformat/avformat.h" #include "libavutil/imgutils.h" +#include "avdevice.h" } #include "decklink_common.h" @@ -335,9 +336,9 @@ av_cold int ff_decklink_write_header(AVFormatContext *avctx) ctx->preroll = cctx->preroll; cctx->ctx = ctx; - /* List available devices. */ + /* List available devices and exit. */ if (ctx->list_devices) { - ff_decklink_list_devices(avctx); + ff_decklink_list_devices_legacy(avctx, 0, 1); return AVERROR_EXIT; } @@ -400,4 +401,9 @@ int ff_decklink_write_packet(AVFormatContext *avctx, AVPacket *pkt) return AVERROR(EIO); } +int ff_decklink_list_output_devices(AVFormatContext *avctx, struct AVDeviceInfoList *device_list) +{ + return ff_decklink_list_devices(avctx, device_list, 0, 1); +} + } /* extern "C" */ |