#include "libavutil/avstring.h"
#include "libavcodec/opt.h"
+#include "os_support.h"
#include "avformat.h"
#if LIBAVFORMAT_VERSION_MAJOR >= 53
else return first_protocol;
}
-int register_protocol(URLProtocol *protocol)
+int av_register_protocol(URLProtocol *protocol)
{
URLProtocol **p;
p = &first_protocol;
return 0;
}
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+int register_protocol(URLProtocol *protocol)
+{
+ return av_register_protocol(protocol);
+}
+#endif
+
int url_open_protocol (URLContext **puc, struct URLProtocol *up,
const char *filename, int flags)
{
p++;
}
/* if the protocol has length 1, we consider it is a dos drive */
- if (*p == '\0' || (q - proto_str) <= 1) {
+ if (*p == '\0' || is_dos_path(filename)) {
file_proto:
strcpy(proto_str, "file");
} else {
return ret;
}
+int url_read_complete(URLContext *h, unsigned char *buf, int size)
+{
+ int ret, len;
+
+ len = 0;
+ while (len < size) {
+ ret = url_read(h, buf+len, size-len);
+ if (ret < 1)
+ return ret;
+ len += ret;
+ }
+ return len;
+}
+
int url_write(URLContext *h, unsigned char *buf, int size)
{
int ret;
return size;
}
+int url_get_file_handle(URLContext *h)
+{
+ if (!h->prot->url_get_file_handle)
+ return -1;
+ return h->prot->url_get_file_handle(h);
+}
+
int url_get_max_packet_size(URLContext *h)
{
return h->max_packet_size;