Cameron Gutman
|
6459579f15
|
Change decoder failure warning
|
2015-12-13 13:04:07 -08:00 |
|
Cameron Gutman
|
4c67631ea5
|
Add negotiation logic for 4K and H.265
|
2015-12-12 17:18:15 -08:00 |
|
Cameron Gutman
|
920154b4b6
|
Add support for requesting an H265 stream (negotiation TBD)
|
2015-12-12 02:16:05 -08:00 |
|
Cameron Gutman
|
d8c7d10ed6
|
Add H265 support to depacketizer
|
2015-12-12 01:32:07 -08:00 |
|
Cameron Gutman
|
adcffa62d8
|
Refactor depacketizer to avoid H264 and AVC references -- no behavior changes
|
2015-12-12 00:06:37 -08:00 |
|
Cameron Gutman
|
fc1c26b5d7
|
Fix video corruption caused by the first packet in the IDR frame getting chained multiple times, resulting in the reference count of other packets in the I-frame returning to zero prematurely
|
2015-10-31 15:29:52 -07:00 |
|
Cameron Gutman
|
df59c99f80
|
Reference count packets in the RTP queue so they don't get overwritten while queued
|
2015-10-31 15:27:33 -07:00 |
|
Cameron Gutman
|
886ef425e6
|
Finish 5.1 surround sound support
|
2015-10-18 15:25:16 -07:00 |
|
Cameron Gutman
|
fbd61d2a21
|
Transition to the Opus Multistream Decoder API
|
2015-10-17 17:15:22 -07:00 |
|
Cameron Gutman
|
63964ba6a7
|
Use monotonic system time for all timestamps
|
2015-08-17 18:33:05 -07:00 |
|
Cameron Gutman
|
d3a7bba666
|
Fix an RTP queue bug that can cause extended packet delays when the last packet ages out of the queue
|
2015-08-11 22:49:10 -07:00 |
|
Cameron Gutman
|
875089305b
|
Start frame number must be 0 for proper invalidation if the first frame is dropped
|
2015-08-11 21:26:35 -07:00 |
|
Cameron Gutman
|
c19ff71c9a
|
Add experimental reference frame invalidation support
|
2015-08-11 21:12:34 -07:00 |
|
Cameron Gutman
|
36c320a584
|
Fix skipping first video packet
|
2015-08-11 08:42:21 -07:00 |
|
Cameron Gutman
|
7d150e7e89
|
Fix a bug in RTP queue found when porting to moonlight-common-c
|
2015-06-15 09:51:59 -07:00 |
|
Cameron Gutman
|
b3503cdede
|
Reduce GCs and CPU usage by avoiding HashSet and LinkedList usage in the depacketizer. Also avoid atomic ref count operations for direct submit decoders.
|
2015-03-25 00:14:48 -04:00 |
|
Cameron Gutman
|
1ac6439690
|
Use an unsynchronized buffer list to cut down on overhead when using direct submit video renderers
|
2015-03-09 01:38:22 -05:00 |
|
Cameron Gutman
|
c481841ddf
|
Change VideoDecoderRenderer to an abstract class so future interface changes can be made without breaking clients
|
2015-03-09 01:37:08 -05:00 |
|
Cameron Gutman
|
678269c561
|
Create a new UnsynchronizedPopulatedBufferList implementation that can be used for better direct submit performance
|
2015-03-09 01:35:53 -05:00 |
|
Cameron Gutman
|
83e874cdb6
|
Fix off-by-one to make printed buffers nicer
|
2015-03-08 22:21:11 -05:00 |
|
Cameron Gutman
|
2d5328fc24
|
Pass through the correct refresh rate now that people are doing sensible things with it
|
2015-02-13 17:07:14 -05:00 |
|
Cameron Gutman
|
ec39f22ad8
|
Fix packet type for legacy controller packets and privatize some constants to prevent this bug from happening again
|
2015-02-02 18:06:05 -05:00 |
|
Cameron Gutman
|
8235717502
|
Fix streaming from GFE 2.1.x
|
2015-01-25 21:33:24 -05:00 |
|
Cameron Gutman
|
aee255a6ee
|
Backwards compatibility for video and control stream to GFE 2.1.x
|
2015-01-25 17:59:23 -05:00 |
|
Cameron Gutman
|
daf7598774
|
Use a single context object instead of passing around tons of objects. Start of GFE 2.1.x backwards compatibility.
|
2015-01-25 17:34:28 -05:00 |
|
Cameron Gutman
|
79ddfc65d5
|
Remove unused import
|
2015-01-22 14:17:33 -05:00 |
|
Cameron Gutman
|
6acb1fd92a
|
Initial support for GFE 2.2.2+
|
2015-01-22 14:13:02 -05:00 |
|
Cameron Gutman
|
021cfd1737
|
Lower the maximum RTP queuing delay to 10 ms instead of 40 ms to reduce the number of frames dropped when a packet is lost
|
2014-11-27 21:52:03 -06:00 |
|
Cameron Gutman
|
3a3ac83ab5
|
Change timing of video initialization to prevent an ICMP port unreachable message on start that could tear down a NAT hole
|
2014-11-20 19:04:58 -08:00 |
|
Cameron Gutman
|
ff4570abac
|
Reorder video stream initialization to vastly reduce the chance we'd miss the initial IDR frame
|
2014-11-19 10:42:29 -08:00 |
|
Cameron Gutman
|
c819f2f0e3
|
Request a new IDR frame immediately if we've been waiting for one for 120 frames
|
2014-11-19 10:40:39 -08:00 |
|
Cameron Gutman
|
c0e95ea18b
|
Add count methods to PopulatedBufferList
|
2014-11-16 12:04:43 -08:00 |
|
Cameron Gutman
|
67c726a141
|
Lower the rate of UDP pings to 2 per second rather than 10 per second
|
2014-11-15 00:29:00 -08:00 |
|
Cameron Gutman
|
ff5f50e3ec
|
Assign the frame start time when we get a slow path frame
|
2014-11-13 22:17:02 -08:00 |
|
Cameron Gutman
|
35a50209be
|
Revert "Fix waiting for IDR frames"
This reverts commit 37f0abfcd1e1490315e2f321db7d313d91e29cc6.
|
2014-11-11 17:04:48 -08:00 |
|
Cameron Gutman
|
9728c136f5
|
Revert "Also use the slow path for the last packet in each frame because it may be padded"
This reverts commit f2e7995747a5ed195926e88ee494602f6a09d9cf.
|
2014-11-11 16:59:42 -08:00 |
|
Cameron Gutman
|
f36227b506
|
Fix waiting for IDR frames
|
2014-11-11 01:09:15 -08:00 |
|
Cameron Gutman
|
debd840db4
|
Start the video renderer earlier to give it time to warm up
|
2014-11-11 00:49:18 -08:00 |
|
Cameron Gutman
|
1531629fcd
|
Also use the slow path for the last packet in each frame because it may be padded
|
2014-11-10 23:59:23 -08:00 |
|
Cameron Gutman
|
7f587dc389
|
Thread priority tweaks: Ensure renderer threads have higher priorities than the receive threads. Increase the priority of the resync thread to just below the video renderer so the control packet can be emitted ASAP. Lower the priority of the loss stats thread. Increase the priority of the input thread slightly above normal.
|
2014-10-17 17:03:58 -07:00 |
|
Cameron Gutman
|
abc7f135f3
|
Prevent a decoder stall from causing corruption of queued decode units
|
2014-10-10 21:15:50 -07:00 |
|
Cameron Gutman
|
4b93207def
|
Improve ByteBufferDescriptor print functionality
|
2014-10-10 21:13:05 -07:00 |
|
Cameron Gutman
|
f004ae6a41
|
Use the entry's queue time rather than calling currentTimeMillis() again
|
2014-10-10 18:21:41 -07:00 |
|
Cameron Gutman
|
d9c2d58519
|
Don't bind to the RTP ports explicitly. GFE doesn't force us to use these port numbers anymore.
|
2014-10-07 23:14:48 -07:00 |
|
Cameron Gutman
|
bd9c6834b7
|
Add support for adaptive resolution changes
|
2014-09-19 22:04:48 -07:00 |
|
Cameron Gutman
|
1bb9a13c17
|
Generate a better message when a decoder fails to initialize
|
2014-09-03 20:41:21 -07:00 |
|
Cameron Gutman
|
cc92f3829e
|
Fix sequencing errors that lead to drops in audio or video for potentially long periods under the right conditions
|
2014-08-09 03:39:14 -07:00 |
|
Cameron Gutman
|
33ffbe151f
|
Lower the DU limit back to 15 because 30 can exhaust the video ring buffer
|
2014-08-06 15:55:02 -07:00 |
|
Cameron Gutman
|
60db0ff775
|
Wait for an IDR frame after dropping video data due to the decoder being too slow
|
2014-08-06 15:54:35 -07:00 |
|
Cameron Gutman
|
7ecac185ac
|
Remove an old debug message
|
2014-08-06 15:53:38 -07:00 |
|