109 const char *filename,
int flags,
178 #define URL_SCHEME_CHARS \
179 "abcdefghijklmnopqrstuvwxyz" \
180 "ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
187 char proto_str[128], proto_nested[128], *ptr;
190 if (filename[proto_len] !=
':' ||
is_dos_path(filename))
191 strcpy(proto_str,
"file");
194 FFMIN(proto_len + 1,
sizeof(proto_str)));
196 av_strlcpy(proto_nested, proto_str,
sizeof(proto_nested));
197 if ((ptr = strchr(proto_nested,
'+')))
201 if (!strcmp(proto_str, up->
name))
204 !strcmp(proto_nested, up->
name))
214 int ret =
ffurl_alloc(puc, filename, flags, int_cb);
217 if (options && (*puc)->prot->priv_data_class &&
230 int size,
int size_min,
236 int fast_retries = 5;
239 while (len < size_min) {
240 ret = transfer_func(h, buf + len, size - len);
254 fast_retries =
FFMAX(fast_retries, 2);