Make ff_url_split() public
[ffmpeg.git] / libavformat / avformat.h
index 6b19e7425e3334a8a1bc524ec53e4cbd58edb373..283b5b943ad0736b676264b86955f810ec58c429 100644 (file)
@@ -1184,6 +1184,32 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index,
 /** media file output */
 int av_set_parameters(AVFormatContext *s, AVFormatParameters *ap);
 
+/**
+ * Split a URL string into components.
+ *
+ * The pointers to buffers for storing individual components may be null,
+ * in order to ignore that component. Buffers for components not found are
+ * set to empty strings. If the port is not found, it is set to a negative
+ * value.
+ *
+ * @param proto the buffer for the protocol
+ * @param proto_size the size of the proto buffer
+ * @param authorization the buffer for the authorization
+ * @param authorization_size the size of the authorization buffer
+ * @param hostname the buffer for the host name
+ * @param hostname_size the size of the hostname buffer
+ * @param port_ptr a pointer to store the port number in
+ * @param path the buffer for the path
+ * @param path_size the size of the path buffer
+ * @param url the URL to split
+ */
+void av_url_split(char *proto,         int proto_size,
+                  char *authorization, int authorization_size,
+                  char *hostname,      int hostname_size,
+                  int *port_ptr,
+                  char *path,          int path_size,
+                  const char *url);
+
 /**
  * Allocates the stream private data and writes the stream header to an
  * output media file.