#include <string.h>
#include "libavutil/intreadwrite.h"
#include "libavutil/avstring.h"
#include "libavutil/opt.h"
#include "internal.h"
#include "mms.h"
#include "asf.h"
#include "http.h"
#include "url.h"
Go to the source code of this file.
Data Structures | |
struct | MMSHContext |
Defines | |
#define | CHUNK_HEADER_LENGTH 4 |
#define | EXT_HEADER_LENGTH 8 |
#define | USERAGENT "User-Agent: NSPlayer/4.1.0.3856\r\n" |
#define | CLIENTGUID "Pragma: xClientGUID={c77e7400-738a-11d2-9add-0020af0a3278}\r\n" |
Enumerations | |
enum | ChunkType { CHUNK_TYPE_DATA = 0x4424, CHUNK_TYPE_ASF_HEADER = 0x4824, CHUNK_TYPE_END = 0x4524, CHUNK_TYPE_STREAM_CHANGE = 0x4324 } |
Functions | |
static int | mmsh_close (URLContext *h) |
static ChunkType | get_chunk_header (MMSHContext *mmsh, int *len) |
static int | read_data_packet (MMSHContext *mmsh, const int len) |
static int | get_http_header_data (MMSHContext *mmsh) |
static int | mmsh_open (URLContext *h, const char *uri, int flags) |
static int | handle_chunk_type (MMSHContext *mmsh) |
static int | mmsh_read (URLContext *h, uint8_t *buf, int size) |
Variables | |
URLProtocol | ff_mmsh_protocol |
#define CHUNK_HEADER_LENGTH 4 |
Definition at line 38 of file mmsh.c.
Referenced by get_chunk_header().
#define CLIENTGUID "Pragma: xClientGUID={c77e7400-738a-11d2-9add-0020af0a3278}\r\n" |
Definition at line 45 of file mmsh.c.
Referenced by mmsh_open().
#define EXT_HEADER_LENGTH 8 |
Definition at line 39 of file mmsh.c.
Referenced by get_chunk_header().
Definition at line 42 of file mmsh.c.
Referenced by mmsh_open().
enum ChunkType |
static ChunkType get_chunk_header | ( | MMSHContext * | mmsh, |
int * | len | ||
) | [static] |
Definition at line 74 of file mmsh.c.
Referenced by get_http_header_data(), and handle_chunk_type().
static int get_http_header_data | ( | MMSHContext * | mmsh | ) | [static] |
Definition at line 143 of file mmsh.c.
Referenced by handle_chunk_type(), and mmsh_open().
static int handle_chunk_type | ( | MMSHContext * | mmsh | ) | [static] |
Definition at line 315 of file mmsh.c.
Referenced by mmsh_read().
static int mmsh_close | ( | URLContext * | h | ) | [static] |
Definition at line 63 of file mmsh.c.
Referenced by mmsh_open().
static int mmsh_open | ( | URLContext * | h, |
const char * | uri, | ||
int | flags | ||
) | [static] |
static int mmsh_read | ( | URLContext * | h, |
uint8_t * | buf, | ||
int | size | ||
) | [static] |
static int read_data_packet | ( | MMSHContext * | mmsh, |
const int | len | ||
) | [static] |
Definition at line 115 of file mmsh.c.
Referenced by get_http_header_data(), and handle_chunk_type().
{ .name = "mmsh", .url_open = mmsh_open, .url_read = mmsh_read, .url_close = mmsh_close, .priv_data_size = sizeof(MMSHContext), .flags = URL_PROTOCOL_FLAG_NETWORK, }