mirror of
https://github.com/zotanmew/nginx-rtmp-module.git
synced 2024-06-27 23:58:58 +02:00
added type casts to hls
This commit is contained in:
parent
c752e0696c
commit
9389670657
|
@ -378,7 +378,7 @@ retry:
|
||||||
for (i = 0; i < ctx->nfrags; i++) {
|
for (i = 0; i < ctx->nfrags; i++) {
|
||||||
f = ngx_rtmp_hls_get_frag(s, i);
|
f = ngx_rtmp_hls_get_frag(s, i);
|
||||||
if (f->duration > max_frag) {
|
if (f->duration > max_frag) {
|
||||||
max_frag = f->duration + .5;
|
max_frag = (ngx_uint_t) (f->duration + .5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -812,7 +812,8 @@ ngx_rtmp_hls_restore_stream(ngx_rtmp_session_t *s)
|
||||||
|
|
||||||
if (ngx_memcmp(p, NGX_RTMP_MSEQ, NGX_RTMP_MSEQ_LEN) == 0) {
|
if (ngx_memcmp(p, NGX_RTMP_MSEQ, NGX_RTMP_MSEQ_LEN) == 0) {
|
||||||
|
|
||||||
ctx->frag = strtod((const char *) &p[NGX_RTMP_MSEQ_LEN], NULL);
|
ctx->frag = (uint64_t) strtod((const char *)
|
||||||
|
&p[NGX_RTMP_MSEQ_LEN], NULL);
|
||||||
|
|
||||||
ngx_log_debug1(NGX_LOG_DEBUG_RTMP, s->connection->log, 0,
|
ngx_log_debug1(NGX_LOG_DEBUG_RTMP, s->connection->log, 0,
|
||||||
"hls: restore sequence frag=%uL", ctx->frag);
|
"hls: restore sequence frag=%uL", ctx->frag);
|
||||||
|
@ -1328,10 +1329,11 @@ ngx_rtmp_hls_audio(ngx_rtmp_session_t *s, ngx_rtmp_header_t *h,
|
||||||
|
|
||||||
p[0] = 0xff;
|
p[0] = 0xff;
|
||||||
p[1] = 0xf1;
|
p[1] = 0xf1;
|
||||||
p[2] = ((objtype - 1) << 6) | (srindex << 2) | ((chconf & 0x04) >> 2);
|
p[2] = (u_char) (((objtype - 1) << 6) | (srindex << 2) |
|
||||||
p[3] = ((chconf & 0x03) << 6) | ((size >> 11) & 0x03);
|
((chconf & 0x04) >> 2));
|
||||||
p[4] = (size >> 3);
|
p[3] = (u_char) (((chconf & 0x03) << 6) | ((size >> 11) & 0x03));
|
||||||
p[5] = (size << 5) | 0x1f;
|
p[4] = (u_char) (size >> 3);
|
||||||
|
p[5] = (u_char) ((size << 5) | 0x1f);
|
||||||
p[6] = 0xfc;
|
p[6] = 0xfc;
|
||||||
|
|
||||||
if (p != b->start) {
|
if (p != b->start) {
|
||||||
|
|
|
@ -89,11 +89,11 @@ ngx_rtmp_mpegts_write_header(ngx_file_t *file)
|
||||||
static u_char *
|
static u_char *
|
||||||
ngx_rtmp_mpegts_write_pcr(u_char *p, uint64_t pcr)
|
ngx_rtmp_mpegts_write_pcr(u_char *p, uint64_t pcr)
|
||||||
{
|
{
|
||||||
*p++ = pcr >> 25;
|
*p++ = (u_char) (pcr >> 25);
|
||||||
*p++ = pcr >> 17;
|
*p++ = (u_char) (pcr >> 17);
|
||||||
*p++ = pcr >> 9;
|
*p++ = (u_char) (pcr >> 9);
|
||||||
*p++ = pcr >> 1;
|
*p++ = (u_char) (pcr >> 1);
|
||||||
*p++ = pcr << 7 | 0x7e;
|
*p++ = (u_char) (pcr << 7 | 0x7e);
|
||||||
*p++ = 0;
|
*p++ = 0;
|
||||||
|
|
||||||
return p;
|
return p;
|
||||||
|
@ -106,15 +106,15 @@ ngx_rtmp_mpegts_write_pts(u_char *p, ngx_uint_t fb, uint64_t pts)
|
||||||
ngx_uint_t val;
|
ngx_uint_t val;
|
||||||
|
|
||||||
val = fb << 4 | (((pts >> 30) & 0x07) << 1) | 1;
|
val = fb << 4 | (((pts >> 30) & 0x07) << 1) | 1;
|
||||||
*p++ = val;
|
*p++ = (u_char) val;
|
||||||
|
|
||||||
val = (((pts >> 15) & 0x7fff) << 1) | 1;
|
val = (((pts >> 15) & 0x7fff) << 1) | 1;
|
||||||
*p++ = val >> 8;
|
*p++ = (u_char) (val >> 8);
|
||||||
*p++ = val;
|
*p++ = (u_char) val;
|
||||||
|
|
||||||
val = (((pts) & 0x7fff) << 1) | 1;
|
val = (((pts) & 0x7fff) << 1) | 1;
|
||||||
*p++ = val >> 8;
|
*p++ = (u_char) (val >> 8);
|
||||||
*p++ = val;
|
*p++ = (u_char) val;
|
||||||
|
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -142,13 +142,13 @@ ngx_rtmp_mpegts_write_frame(ngx_file_t *file, ngx_rtmp_mpegts_frame_t *f,
|
||||||
f->cc++;
|
f->cc++;
|
||||||
|
|
||||||
*p++ = 0x47;
|
*p++ = 0x47;
|
||||||
*p++ = (f->pid >> 8);
|
*p++ = (u_char) (f->pid >> 8);
|
||||||
|
|
||||||
if (first) {
|
if (first) {
|
||||||
p[-1] |= 0x40;
|
p[-1] |= 0x40;
|
||||||
}
|
}
|
||||||
|
|
||||||
*p++ = f->pid;
|
*p++ = (u_char) f->pid;
|
||||||
*p++ = 0x10 | (f->cc & 0x0f); /* payload */
|
*p++ = 0x10 | (f->cc & 0x0f); /* payload */
|
||||||
|
|
||||||
if (first) {
|
if (first) {
|
||||||
|
@ -167,7 +167,7 @@ ngx_rtmp_mpegts_write_frame(ngx_file_t *file, ngx_rtmp_mpegts_frame_t *f,
|
||||||
*p++ = 0x00;
|
*p++ = 0x00;
|
||||||
*p++ = 0x00;
|
*p++ = 0x00;
|
||||||
*p++ = 0x01;
|
*p++ = 0x01;
|
||||||
*p++ = f->sid;
|
*p++ = (u_char) f->sid;
|
||||||
|
|
||||||
header_size = 5;
|
header_size = 5;
|
||||||
flags = 0x80; /* PTS */
|
flags = 0x80; /* PTS */
|
||||||
|
@ -182,11 +182,11 @@ ngx_rtmp_mpegts_write_frame(ngx_file_t *file, ngx_rtmp_mpegts_frame_t *f,
|
||||||
pes_size = 0;
|
pes_size = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
*p++ = (pes_size >> 8);
|
*p++ = (u_char) (pes_size >> 8);
|
||||||
*p++ = pes_size;
|
*p++ = (u_char) pes_size;
|
||||||
*p++ = 0x80; /* H222 */
|
*p++ = 0x80; /* H222 */
|
||||||
*p++ = flags;
|
*p++ = (u_char) flags;
|
||||||
*p++ = header_size;
|
*p++ = (u_char) header_size;
|
||||||
|
|
||||||
p = ngx_rtmp_mpegts_write_pts(p, flags >> 6, f->pts +
|
p = ngx_rtmp_mpegts_write_pts(p, flags >> 6, f->pts +
|
||||||
NGX_RTMP_HLS_DELAY);
|
NGX_RTMP_HLS_DELAY);
|
||||||
|
@ -216,7 +216,7 @@ ngx_rtmp_mpegts_write_frame(ngx_file_t *file, ngx_rtmp_mpegts_frame_t *f,
|
||||||
base = &packet[5] + packet[4];
|
base = &packet[5] + packet[4];
|
||||||
p = ngx_movemem(base + stuff_size, base, p - base);
|
p = ngx_movemem(base + stuff_size, base, p - base);
|
||||||
ngx_memset(base, 0xff, stuff_size);
|
ngx_memset(base, 0xff, stuff_size);
|
||||||
packet[4] += stuff_size;
|
packet[4] += (u_char) stuff_size;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
@ -226,7 +226,7 @@ ngx_rtmp_mpegts_write_frame(ngx_file_t *file, ngx_rtmp_mpegts_frame_t *f,
|
||||||
p = ngx_movemem(&packet[4] + stuff_size, &packet[4],
|
p = ngx_movemem(&packet[4] + stuff_size, &packet[4],
|
||||||
p - &packet[4]);
|
p - &packet[4]);
|
||||||
|
|
||||||
packet[4] = stuff_size - 1;
|
packet[4] = (u_char) (stuff_size - 1);
|
||||||
if (stuff_size >= 2) {
|
if (stuff_size >= 2) {
|
||||||
packet[5] = 0;
|
packet[5] = 0;
|
||||||
ngx_memset(&packet[6], 0xff, stuff_size - 2);
|
ngx_memset(&packet[6], 0xff, stuff_size - 2);
|
||||||
|
|
Loading…
Reference in a new issue