#include <string.h>
#include "libavutil/intreadwrite.h"
#include "libavutil/avstring.h"
-#include "libavformat/internal.h"
+#include "internal.h"
#include "mms.h"
#include "asf.h"
#include "http.h"
MMSHContext *mmsh = (MMSHContext *)h->priv_data;
MMSContext *mms = &mmsh->mms;
if (mms->mms_hd)
- url_close(mms->mms_hd);
+ ffurl_close(mms->mms_hd);
av_free(mms->streams);
av_free(mms->asf_header);
av_freep(&h->priv_data);
ChunkType chunk_type;
int chunk_len, res, ext_header_len;
- res = url_read_complete(mms->mms_hd, chunk_header, CHUNK_HEADER_LENGTH);
+ res = ffurl_read_complete(mms->mms_hd, chunk_header, CHUNK_HEADER_LENGTH);
if (res != CHUNK_HEADER_LENGTH) {
av_log(NULL, AV_LOG_ERROR, "Read data packet header failed!\n");
return AVERROR(EIO);
return AVERROR_INVALIDDATA;
}
- res = url_read_complete(mms->mms_hd, ext_header, ext_header_len);
+ res = ffurl_read_complete(mms->mms_hd, ext_header, ext_header_len);
if (res != ext_header_len) {
av_log(NULL, AV_LOG_ERROR, "Read ext header failed!\n");
return AVERROR(EIO);
len, sizeof(mms->in_buffer));
return AVERROR(EIO);
}
- res = url_read_complete(mms->mms_hd, mms->in_buffer, len);
+ res = ffurl_read_complete(mms->mms_hd, mms->in_buffer, len);
av_dlog(NULL, "Data packet len = %d\n", len);
if (res != len) {
av_log(NULL, AV_LOG_ERROR, "Read data packet failed!\n");
len, mms->asf_header_size);
return AVERROR(EIO);
}
- res = url_read_complete(mms->mms_hd, mms->asf_header, len);
+ res = ffurl_read_complete(mms->mms_hd, mms->asf_header, len);
if (res != len) {
av_log(NULL, AV_LOG_ERROR,
"Recv asf header data len %d != expected len %d\n", res, len);
len, sizeof(mms->in_buffer));
return AVERROR(EIO);
}
- res = url_read_complete(mms->mms_hd, mms->in_buffer, len);
+ res = ffurl_read_complete(mms->mms_hd, mms->in_buffer, len);
if (res != len) {
av_log(NULL, AV_LOG_ERROR, "Read other chunk type data failed!\n");
return AVERROR(EIO);
}
}
}
- return 0;
}
static int mmsh_open(URLContext *h, const char *uri, int flags)
host, sizeof(host), &port, path, sizeof(path), location);
if (port<0)
port = 80; // default mmsh protocol port
- ff_url_join(httpname, sizeof(httpname), "http", NULL, host, port, path);
+ ff_url_join(httpname, sizeof(httpname), "http", NULL, host, port, "%s", path);
- if (ffurl_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
+ if (ffurl_alloc(&mms->mms_hd, httpname, AVIO_FLAG_READ) < 0) {
return AVERROR(EIO);
}
host, port, mmsh->request_seq++);
ff_http_set_headers(mms->mms_hd, headers);
- err = url_connect(mms->mms_hd);
+ err = ffurl_connect(mms->mms_hd);
if (err) {
goto fail;
}
}
// close the socket and then reopen it for sending the second play request.
- url_close(mms->mms_hd);
+ ffurl_close(mms->mms_hd);
memset(headers, 0, sizeof(headers));
- if (ffurl_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
+ if (ffurl_alloc(&mms->mms_hd, httpname, AVIO_FLAG_READ) < 0) {
return AVERROR(EIO);
}
stream_selection = av_mallocz(mms->stream_num * 19 + 1);
av_dlog(NULL, "out_buffer is %s", headers);
ff_http_set_headers(mms->mms_hd, headers);
- err = url_connect(mms->mms_hd);
+ err = ffurl_connect(mms->mms_hd);
if (err) {
goto fail;
}