[FFmpeg-devel] Deprecation of visual output devices

Josh de Kock josh at itanimul.li
Wed Sep 27 16:18:13 EEST 2017


Hi,

There is no point of having these output devices as all the
functionality is contained in the 'ffplay' tool. If people wanted to
integrate these devices in their own programs instead of using the
ffmpeg tool then they are far too constrained for proper control, not to
mention output devices have been quick hacky in libavdevice for a long
time. There are three patches attached to deprecate the SDL2, OpenGL,
and libcaca devices.

-- 
Josh
-------------- next part --------------
From f950674e8893da8438ade6cee1050062d2bfb86c Mon Sep 17 00:00:00 2001
From: Josh de Kock <josh at itanimul.li>
Date: Wed, 27 Sep 2017 13:26:19 +0100
Subject: [PATCH 1/3] lavd: deprecate libcaca output device

Signed-off-by: Josh de Kock <josh at itanimul.li>
---
 libavdevice/caca.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavdevice/caca.c b/libavdevice/caca.c
index 93cc0ffd25..31cb94eda9 100644
--- a/libavdevice/caca.c
+++ b/libavdevice/caca.c
@@ -95,6 +95,8 @@ static int caca_write_header(AVFormatContext *s)
     AVCodecParameters *encctx = st->codecpar;
     int ret, bpp;
 
+    av_log(s, AV_LOG_WARNING, "The libcaca output device is DEPRECATED and will be removed in a future version.\n");
+
     c->ctx = s;
     if (c->list_drivers) {
         list_drivers(c);
-- 
2.11.0 (Apple Git-81)

-------------- next part --------------
From da4aba837ff0effe873ea16d17100397843db464 Mon Sep 17 00:00:00 2001
From: Josh de Kock <josh at itanimul.li>
Date: Wed, 27 Sep 2017 13:27:53 +0100
Subject: [PATCH 2/3] lavd: deprecate opengl output device

Signed-off-by: Josh de Kock <josh at itanimul.li>
---
 libavdevice/opengl_enc.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavdevice/opengl_enc.c b/libavdevice/opengl_enc.c
index bb6787c6f1..046383066f 100644
--- a/libavdevice/opengl_enc.c
+++ b/libavdevice/opengl_enc.c
@@ -1054,6 +1054,8 @@ static av_cold int opengl_write_header(AVFormatContext *h)
     AVStream *st;
     int ret;
 
+    av_log(h, AV_LOG_WARNING, "The OpenGL output device is DEPRECATED and will be removed in a future version.\n");
+
     if (h->nb_streams != 1 ||
         h->streams[0]->codecpar->codec_type != AVMEDIA_TYPE_VIDEO ||
         h->streams[0]->codecpar->codec_id != AV_CODEC_ID_RAWVIDEO) {
-- 
2.11.0 (Apple Git-81)

-------------- next part --------------
From 7c576e6acfa04cec6df9f8a59d98bacf43a44938 Mon Sep 17 00:00:00 2001
From: Josh de Kock <josh at itanimul.li>
Date: Wed, 27 Sep 2017 13:28:47 +0100
Subject: [PATCH 3/3] lavd: deprecate SDL2 output device

Signed-off-by: Josh de Kock <josh at itanimul.li>
---
 libavdevice/sdl2.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavdevice/sdl2.c b/libavdevice/sdl2.c
index 5d9e91ec21..e53637eb42 100644
--- a/libavdevice/sdl2.c
+++ b/libavdevice/sdl2.c
@@ -164,6 +164,8 @@ static int sdl2_write_header(AVFormatContext *s)
     int i, ret = 0;
     int flags  = 0;
 
+    av_log(s, AV_LOG_WARNING, "The SDL2 output device is DEPRECATED and will be removed in a future version.\n");
+
     if (!sdl->window_title)
         sdl->window_title = av_strdup(s->filename);
 
-- 
2.11.0 (Apple Git-81)



More information about the ffmpeg-devel mailing list