20 Commits

Author SHA1 Message Date
Cameron Gutman
9ffdc79b6f Add log messages to troubleshoot problems with missing video/audio 2020-04-29 20:17:55 -07:00
Cameron Gutman
f4dad9ae8b Add presentation timestamp to video frame metadata 2019-11-10 18:07:11 -08:00
Cameron Gutman
31aa893acd Name our threads on Linux 2019-05-03 18:54:40 -07:00
Cameron Gutman
e01617cd17 Remove unused variable 2019-05-02 19:41:59 -07:00
Cameron Gutman
fe7cb006da Improve FEC queue packet submission and retrieval from O(n) to O(1) 2019-04-25 23:02:01 -07:00
Cameron Gutman
f395d3056a Eliminate a copy and allocation for each incoming video packet 2019-04-25 22:07:03 -07:00
Cameron Gutman
d6971983aa Use an interruptible sleep to allow our threads to exit sooner 2019-04-06 15:26:59 -07:00
Cameron Gutman
40fa4ef3c8 Reduce NAT keepalive packet rate after connection is established 2019-03-24 12:54:41 -07:00
Cameron Gutman
aa9610847e Ensure termination error code is propagated properly 2019-02-09 21:30:16 -08:00
Cameron Gutman
12eebe0039 Wait for first IDR frame before enabling RFI 2019-01-19 14:44:48 -08:00
Cameron Gutman
6e7965f013 Use SO_RCVTIMEO to avoid the overhead of an extra syscall per packet 2018-07-16 00:46:40 -07:00
Cameron Gutman
4134ea3c23 Prevent the depacketizer from receiving parity packets 2017-06-10 15:42:51 -07:00
Cameron Gutman
c386569754 Remove length prefix on video buffers 2017-06-10 12:55:50 -07:00
Cameron Gutman
86447399a9 Add start and stop callbacks for audio and video renderers 2017-05-21 12:50:53 -07:00
Cameron Gutman
2d7bf5be82 Fix state cleanup if LiStartConnection() fails 2017-05-18 09:52:50 -07:00
Iwan Timmer
9bf8d361a1 Forward Error Correction (#24)
* Preperation for FEC by adding new queue which buffers whole frames

* Add code for creating recovered RTP packet

* Add checks before repair missing packets

* Initial implementation for single FEC packet

* Implement FEC for multiple packets
2017-05-04 21:22:30 -07:00
Cameron Gutman
f57bd745b4 API update to provide enough information to support GFE 3.0.7 2016-10-05 17:23:59 -07:00
Sunguk Lee
ba27e97698 Add vita environment (#22)
* vita: initial port

* vita: implement events, enable input thread

* vita: gethostbyname

* vita: Enable audio

* vita: Fix thread crash on discoonect process

* vita: Handle cannot create thread

* vita: now use newlib's socket apis

* vita: Refactoring for moonlight-stream/moonlight-common-c

* Fix review things

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2436093

- vita may not support IPv6; so add LC_ASSERT them.
- define inet_ntop to sceNetInetNtop
- guard about failure of sceKernelCreateMutex or sceKernelCreateCond
- remove meanless macros

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2444677

- !*mutex to *mutex
- remove useless LC_ASSERT then change to use inet_ntop
  in vita system not defined `sockaddr_in6`, so just use `sockaddr_in` instead this.

https://github.com/moonlight-stream/moonlight-common-c/pull/22#pullrequestreview-2445642

- define sin6_addr
2016-10-05 16:43:33 -07:00
Cameron Gutman
7e5e2cebe2 Increase recv buffer of video stream from 64K to 512K for improved 4K performance 2016-05-06 14:44:16 -04:00
Cameron Gutman
48a5d63045 Reorganize the folder structure and delete the Xcode build files 2016-03-31 07:22:03 -04:00