History

don't flush on every audio/video packet

Sigrid Solveig Haflínudóttir committed 5 years ago

Commit 1471e461 parent daf4e541 file · +12 −12Browse files

Unified · Split

rtmp.c+12−12
@@ -324,7 +324,7 @@ err: · 323 unmodified lines
324324 }
325325
326326 static int
327−rtmpsend(RTMP *r)
327+rtmpsend(RTMP *r, int flush)
328328 {
329329 u8int *p, *h, *e, hdata[24];
330330 int len, n, hsz;
@@ -368,7 +368,7 @@ rtmpsend(RTMP *r) · 37 unmodified lines
368368 }
369369 }
370370
371− if(Bflush(r) < 0)
371+ if(flush && Bflush(r) < 0)
372372 goto err;
373373
374374 if(debug){
@@ -412,7 +412,7 @@ pong(RTMP *r, s32int n) · 37 unmodified lines
412412 puti16(CtlPingResponse);
413413 puti32(n);
414414
415− return rtmpsend(r);
415+ return rtmpsend(r, 1);
416416 }
417417
418418 static int
@@ -422,7 +422,7 @@ setchunksz(RTMP *r, int sz) · 3 unmodified lines
422422
423423 newmsg(r, SetChunkSize, Type0, CSUserCtl);
424424 puti32(sz);
425− n = rtmpsend(r);
425+ n = rtmpsend(r, 1);
426426 r->chunkout = sz;
427427
428428 return n;
@@ -676,7 +676,7 @@ rtmpstream(RTMP *r, ulong *sid) · 247 unmodified lines
676676
677677 r->o.msg.cmd.cb = streamcreated;
678678 r->o.msg.cmd.aux = c;
679− n = rtmpsend(r);
679+ n = rtmpsend(r, 1);
680680
681681 qunlock(r);
682682
@@ -732,7 +732,7 @@ rtmppublish(RTMP *r, ulong sid, int type, char *name) · 49 unmodified lines
732732 r->o.msg.cmd.aux = c;
733733 r->o.msg.cmd.code = "NetStream.Publish.Start";
734734 r->o.msg.sid = sid;
735− n = rtmpsend(r);
735+ n = rtmpsend(r, 1);
736736
737737 qunlock(r);
738738
@@ -777,7 +777,7 @@ rtmpmeta(RTMP *r, ulong sid, int vcodec, int w, int h, int acodec) · 38 unmodified lines
777777 putend();
778778 r->o.msg.sid = sid;
779779
780− res = rtmpsend(r);
780+ res = rtmpsend(r, 1);
781781
782782 qunlock(r);
783783
@@ -872,7 +872,7 @@ h264data(RTMP *r, ulong sid, u32int ts, u8int *p, int sz) · 88 unmodified lines
872872
873873 putdata(ps, p-ps);
874874
875− if(rtmpsend(r) < 0)
875+ if(rtmpsend(r, 0) < 0)
876876 return -1;
877877
878878 r->sps = 1;
@@ -898,7 +898,7 @@ h264data(RTMP *r, ulong sid, u32int ts, u8int *p, int sz) · 19 unmodified lines
898898 putdata(p, nsz);
899899 }
900900
901− return rtmpsend(r);
901+ return rtmpsend(r, 0);
902902 }
903903
904904 static int
@@ -944,7 +944,7 @@ aacdata(RTMP *r, ulong sid, u32int ts, u8int *p, int sz) · 39 unmodified lines
944944 putbyte(0xe5);
945945 putbyte(0x00);
946946
947− if(rtmpsend(r) < 0)
947+ if(rtmpsend(r, 0) < 0)
948948 return -1;
949949
950950 r->aacpd = 1;
@@ -961,7 +961,7 @@ aacdata(RTMP *r, ulong sid, u32int ts, u8int *p, int sz) · 10 unmodified lines
961961
962962 putdata(p+7, sz-7);
963963
964− return rtmpsend(r);
964+ return rtmpsend(r, 0);
965965 }
966966
967967 int
@@ -1011,7 +1011,7 @@ connect(RTMP *r) · 43 unmodified lines
10111011 putkvnum("objectEncoding", 0); /* AMF0 */
10121012 putend();
10131013
1014− return rtmpsend(r);
1014+ return rtmpsend(r, 1);
10151015 }
10161016
10171017 static int

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t