#include "rtmppkt.h"
#include "flv.h"
+#include "url.h"
void ff_amf_write_bool(uint8_t **dst, int val)
{
enum RTMPPacketType type;
int size = 0;
- if (url_read(h, &hdr, 1) != 1)
+ if (ffurl_read(h, &hdr, 1) != 1)
return AVERROR(EIO);
size++;
channel_id = hdr & 0x3F;
if (channel_id < 2) { //special case for channel number >= 64
buf[1] = 0;
- if (url_read_complete(h, buf, channel_id + 1) != channel_id + 1)
+ if (ffurl_read_complete(h, buf, channel_id + 1) != channel_id + 1)
return AVERROR(EIO);
size += channel_id + 1;
channel_id = AV_RL16(buf) + 64;
if (hdr == RTMP_PS_ONEBYTE) {
timestamp = prev_pkt[channel_id].ts_delta;
} else {
- if (url_read_complete(h, buf, 3) != 3)
+ if (ffurl_read_complete(h, buf, 3) != 3)
return AVERROR(EIO);
size += 3;
timestamp = AV_RB24(buf);
if (hdr != RTMP_PS_FOURBYTES) {
- if (url_read_complete(h, buf, 3) != 3)
+ if (ffurl_read_complete(h, buf, 3) != 3)
return AVERROR(EIO);
size += 3;
data_size = AV_RB24(buf);
- if (url_read_complete(h, buf, 1) != 1)
+ if (ffurl_read_complete(h, buf, 1) != 1)
return AVERROR(EIO);
size++;
type = buf[0];
if (hdr == RTMP_PS_TWELVEBYTES) {
- if (url_read_complete(h, buf, 4) != 4)
+ if (ffurl_read_complete(h, buf, 4) != 4)
return AVERROR(EIO);
size += 4;
extra = AV_RL32(buf);
}
}
if (timestamp == 0xFFFFFF) {
- if (url_read_complete(h, buf, 4) != 4)
+ if (ffurl_read_complete(h, buf, 4) != 4)
return AVERROR(EIO);
timestamp = AV_RB32(buf);
}
prev_pkt[channel_id].extra = extra;
while (data_size > 0) {
int toread = FFMIN(data_size, chunk_size);
- if (url_read_complete(h, p->data + offset, toread) != toread) {
+ if (ffurl_read_complete(h, p->data + offset, toread) != toread) {
ff_rtmp_packet_destroy(p);
return AVERROR(EIO);
}
offset += chunk_size;
size += chunk_size;
if (data_size > 0) {
- url_read_complete(h, &t, 1); //marker
+ ffurl_read_complete(h, &t, 1); //marker
size++;
if (t != (0xC0 + channel_id))
return -1;
}
prev_pkt[pkt->channel_id].extra = pkt->extra;
- url_write(h, pkt_hdr, p-pkt_hdr);
+ ffurl_write(h, pkt_hdr, p-pkt_hdr);
size = p - pkt_hdr + pkt->data_size;
while (off < pkt->data_size) {
int towrite = FFMIN(chunk_size, pkt->data_size - off);
- url_write(h, pkt->data + off, towrite);
+ ffurl_write(h, pkt->data + off, towrite);
off += towrite;
if (off < pkt->data_size) {
uint8_t marker = 0xC0 | pkt->channel_id;
- url_write(h, &marker, 1);
+ ffurl_write(h, &marker, 1);
size++;
}
}