Ping for merge, again :)
On 28 Jun 2020, at 22:43, Marvin Scholz wrote:
Ping
On 18 Jun 2020, at 23:16, Marvin Scholz wrote:
Ping? Anything else needed to get this merged?
On 14 Jun 2020, at 22:23, Marvin Scholz wrote:
On 14 Jun 2020, at 15:42, Michael Niedermayer wrote:
On Sun, Jun 14, 2020 at 12:52:44AM +0200, Marvin Scholz wrote:
---
doc/protocols.texi | 3 +++
libavformat/icecast.c | 6 +++++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/doc/protocols.texi b/doc/protocols.texi
index 7aa758541c..32c829d2a3 100644
--- a/doc/protocols.texi
+++ b/doc/protocols.texi
@@ -520,6 +520,9 @@ audio/mpeg.
This enables support for Icecast versions < 2.4.0, that do not
support the
HTTP PUT method but the SOURCE method.
+@item tls
+Establish a TLS (HTTPS) connection to Icecast.
+
@end table
@example
diff --git a/libavformat/icecast.c b/libavformat/icecast.c
index 38af16b99e..b06c53cabd 100644
--- a/libavformat/icecast.c
+++ b/libavformat/icecast.c
@@ -43,6 +43,7 @@ typedef struct IcecastContext {
int public;
char *url;
char *user_agent;
+ int tls;
} IcecastContext;
#define DEFAULT_ICE_USER "source"
@@ -62,6 +63,7 @@ static const AVOption options[] = {
{ "password", "set password", OFFSET(pass),
AV_OPT_TYPE_STRING, { .str = NULL }, 0, 0, E },
{ "content_type", "set content-type, MUST be set if not
audio/mpeg", OFFSET(content_type), AV_OPT_TYPE_STRING, { .str =
NULL }, 0, 0, E },
{ "legacy_icecast", "use legacy SOURCE method, for Icecast <
v2.4", OFFSET(legacy_icecast), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0,
1, E },
+ { "tls", "use a TLS connection", OFFSET(tls),
AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, E },
{ NULL }
};
@@ -162,7 +164,9 @@ static int icecast_open(URLContext *h, const
char *uri, int flags)
}
// Build new URI for passing to http protocol
- ff_url_join(h_url, sizeof(h_url), "http", auth, host, port,
"%s", path);
+ ff_url_join(h_url, sizeof(h_url),
+ s->tls ? "https" : "http",
+ auth, host, port, "%s", path);
// Finally open http proto handler
ret = ffurl_open_whitelist(&s->hd, h_url,
AVIO_FLAG_READ_WRITE, NULL,
&opt_dict, h->protocol_whitelist,
h->protocol_blacklist, h);
Is https support common or uncommon for icecast ?
if it is common then changing the default to enabled (in a seperate
patch)
would make sense
the patch should be ok
It's getting more common now but most people are probably still used
to
have http enabled for use with source clients as most of the older
ones do not yet support TLS at all.
Ideally it would default to auto-detect but it seems thats not
easily possible
with how the ffmpeg protocols work.
thx
[...]
--
Michael GnuPG fingerprint:
9FF2128B147EF6730BADF133611EC787040B0FAB
Breaking DRM is a little like attempting to break through a door
even
though the window is wide open and the only thing in the house is a
bunch
of things you dont want and which you would get tomorrow for free
anyway
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".