Cameron Gutman
|
b0d138b7f2
|
Rewrite the NAL depacketizer to run in O(1) time by parsing the proprietary header rather than the H264 bytestream
|
2013-11-28 14:22:12 -05:00 |
|
Cameron Gutman
|
dd82573d08
|
Switch from ArrayBlockingQueues to LinkedBlockingQueues for increased throughput. Set thread priorities for the decoder and ping threads.
|
2013-11-24 19:31:50 -05:00 |
|
Cameron Gutman
|
7d39ac2a45
|
Reuse a single AvByteBufferDescriptor when depacketizing H264 instead of allocating many of them per packet
|
2013-11-24 21:51:09 -05:00 |
|
Cameron Gutman
|
125bcb370f
|
Limit the size of queues. Switch to a blacklist instead of a whitelist for hardware decoding. Currently, Nvidia, TI, and Google H264 codecs are on the blacklist. Reenable large heap since we're allocating more objects now.
|
2013-11-23 02:44:10 -05:00 |
|
Cameron Gutman
|
80fdae3673
|
Request an IDR frame if a previous frame was lost or
|
2013-11-21 19:55:40 -05:00 |
|
Cameron Gutman
|
6bb215eddf
|
Remove pooling code due to higher concurrency latency that resulted in a net loss of performance.
|
2013-11-21 16:40:27 -05:00 |
|
Cameron Gutman
|
1d7460e8b3
|
Revert "WIP optimization of object allocation and pools. There's currently a double free on the AvByteBufferDescriptor that I'm trying to track down."
This reverts commit 6600329580aace81321220d2e4000099ad27f4f7.
|
2013-11-21 16:25:10 -05:00 |
|
Cameron Gutman
|
45120e79e4
|
Revert "Fix the double-free bug and disable double free debugging."
This reverts commit 9bb395501172f754baacc1efe6f09af55627fa15.
|
2013-11-21 16:24:52 -05:00 |
|
Cameron Gutman
|
ff50b5fdab
|
Revert "Fix memory leaks of special NAL sequences"
This reverts commit d9987105d0d9c27e920b4113875e82b315d050a4.
|
2013-11-21 16:24:47 -05:00 |
|
Cameron Gutman
|
e6959e66e4
|
Fix memory leaks of special NAL sequences
|
2013-11-21 14:36:17 -05:00 |
|
Cameron Gutman
|
9e4364f672
|
Fix the double-free bug and disable double free debugging.
|
2013-11-21 13:05:01 -05:00 |
|
Cameron Gutman
|
7951c0fa13
|
WIP optimization of object allocation and pools. There's currently a double free on the AvByteBufferDescriptor that I'm trying to track down.
|
2013-11-21 12:24:45 -05:00 |
|
Cameron Gutman
|
cca7df6c25
|
Reassemble AVC NALs when padding is reached, rather than waiting through several packets until the next AVC frame start NAL. Improves video latency and vulnerability to packet loss.
|
2013-11-17 16:50:45 -05:00 |
|
Cameron Gutman
|
524cab4115
|
Drop audio frames if the backlog becomes too large. Trim buffer pools when memory runs low. Optimize AVC decoding a bit more.
|
2013-11-10 15:25:00 -05:00 |
|
Cameron Gutman
|
fc66caf567
|
Revert unintended change
|
2013-11-10 15:21:58 -05:00 |
|
Cameron Gutman
|
e507f4abfb
|
Remove some unneccessary checks and repurpose an old method.
|
2013-11-10 14:45:28 -05:00 |
|
Cameron Gutman
|
54e365a304
|
Fix video buffer pool usage.
|
2013-11-10 03:29:44 -05:00 |
|
Cameron Gutman
|
d5665ac318
|
Fix decoding of misaligned start sequences.
|
2013-11-10 02:53:51 -05:00 |
|
Cameron Gutman
|
34e87ca899
|
Rename AvBufferX -> AvByteBufferX and create AvShortBufferX
|
2013-11-10 03:42:29 -05:00 |
|
Cameron Gutman
|
62a9040cb8
|
Add a Opus decoder JNI library. Write an audio depacketizer. Audio works!
|
2013-11-10 03:27:21 -05:00 |
|
Cameron Gutman
|
d3b9387c37
|
Refactor AV code
|
2013-11-09 19:20:49 -05:00 |
|