[FFmpeg-devel] Connection timeout to HTTP resource

Przemysław Sobala przemyslaw.sobala at grupawp.pl
Wed Aug 26 11:35:01 CEST 2015


Hi
I wanted to configure tcp connection timeout while connecting to eg.
http://google.com:81.

ffmpeg -i http://google.com:81?timeout=1000000
doesn't pass "timeout" param to tcp proto, as tcp proto doesn't support
URL query string

ffmpeg -timeout 1000000 -i http://google.com:81
doesn't pass "timeout" param to tcp proto, as tcp proto doestn't support
AVDictionary and url_open2

So I tried to correct the second case, and ended up with patch:

diff --git a/libavformat/tcp.c b/libavformat/tcp.c
index bee349e..2f7726f 100644
--- a/libavformat/tcp.c
+++ b/libavformat/tcp.c
@@ -59,7 +59,8 @@ static const AVClass tcp_class = {
  };

  /* return non zero if error */
-static int tcp_open(URLContext *h, const char *uri, int flags)
+static int tcp_open(URLContext *h, const char *uri, int flags,
+                     AVDictionary **options)
  {
      struct addrinfo hints = { 0 }, *ai, *cur_ai;
      int port, fd = -1;
@@ -244,7 +245,7 @@ static int tcp_get_file_handle(URLContext *h)

  URLProtocol ff_tcp_protocol = {
      .name                = "tcp",
-    .url_open            = tcp_open,
+    .url_open2           = tcp_open,
      .url_accept          = tcp_accept,
      .url_read            = tcp_read,
      .url_write           = tcp_write,

Now it works (ffmpeg -timeout 1000000 -i http://google.com:81). What do
you think about that?

--
Regards
Przemysław Sobala


Główne Spółki Grupy Wirtualna Polska:

Wirtualna Polska Holding Spółka Akcyjna z siedzibą w Warszawie, ul. Jutrzenki 137A, 02-231 Warszawa, wpisana do Krajowego Rejestru Sądowego - Rejestru Przedsiębiorców prowadzonego przez Sąd Rejonowy dla m.st. Warszawy w Warszawie pod nr KRS: 0000407130, kapitał zakładowy: 1 245 651,90 zł (w całości wpłacony), Numer Identyfikacji Podatkowej (NIP): 521-31-11-513

Grupa Wirtualna Polska Spółka z ograniczoną odpowiedzialnością z siedzibą w Warszawie, ul. Jutrzenki 137A, 02-231 Warszawa, wpisana do Krajowego Rejestru Sądowego - Rejestru Przedsiębiorców prowadzonego przez Sąd Rejonowy dla m.st. Warszawy w Warszawie pod nr KRS: 0000373814, kapitał zakładowy: 311.005.050,00 zł, Numer Identyfikacji Podatkowej (NIP): 527-26-45-593

WP Shopping Spółka z ograniczoną odpowiedzialnością z siedzibą w Gdańsku, ul. Romualda Traugutta 115 C, 80-226 Gdańsk, wpisana do Krajowego Rejestru Sądowego - Rejestru Przedsiębiorców prowadzonego przez Sąd Rejonowy Gdańsk - Północ w Gdańsku pod nr KRS: 0000546914, kapitał zakładowy: 170.000,00 złotych (w całości wpłacony), Numer Identyfikacji Podatkowej (NIP): 957-07-51-216


More information about the ffmpeg-devel mailing list