diff options
Diffstat (limited to 'TODO')
| -rw-r--r-- | TODO | 40 |
1 files changed, 38 insertions, 2 deletions
@@ -41,9 +41,27 @@ - [x] al_atomic_* -> atomic_* - [x] Test pause -> cmv-clear -> add audio only - [x] libnaunet zlib wrap - - [ ] Remove entry->ended from sink. + - [x] Runtime and simpler SINK_LOCAL. + - [x] Is there any race condition around entry->paused? + - [x] Audio buffer local pause. + - [ ] fade-out on seek? fade-in on any full cut-out? + - [ ] win32 -municode -mwindows build fixes. + - win32 resize stuff + - https://stackoverflow.com/questions/50898990/reduce-flickering-when-using-setwindowpos-to-change-the-left-edge-of-a-window + - https://stackoverflow.com/questions/53000291/how-to-smooth-ugly-jitter-flicker-jumping-when-resizing-windows-especially-drag + - https://www.gamedev.net/forums/topic/708865-dxgi-flip-model-flickering-during-live-resize/ + - https://github.com/Blinue/Magpie/pull/1071 + - https://gist.github.com/apkipa/20cae438aef2a8633f99e10e0b90b11e + - [ ] Why does harfbuz use a different ar than what I define. + - [ ] Implement resize to buffer. + - [ ] Windows test: Have second client do input simulation while causing Select pause on windows cmd. + - [ ] PTS gets cooked at some point (u64)-1. + - [ ] Log overall bitrate from FFmpeg. + - [ ] Is it possibly to cleanly fold DIRECT_MODE more into nn_multiplex/nn_rpc/nn_packet_stream. - [ ] Pass over logging. + - [ ] TCP throughput testing. - [ ] list_remove(). + - [ ] Remove entry->ended from sink. - [ ] Do ntp like latency evaluation. - [ ] packet_cache_v2. - [ ] Implement queued. @@ -51,7 +69,8 @@ - [ ] Header cleanup. - [ ] https://github.com/JuliaStrings/utf8proc/blob/master/utf8proc.h - [ ] ustr for ui elements. - - [ ] remove wstr. + - [ ] Remove wstr. + - [ ] Consider usage in win32 sections. - [ ] Packet benchmark. - Create packet, write bunch of ints, send to another thread, thread adds everything. - [ ] Startup timing information. @@ -105,6 +124,21 @@ - [ ] Mark entries for removal rather than remove in-place. - [ ] More optimal command queue. +// @TODO: Could entry->ended be redundant? What about entry->held? +// - The catalyst for this is having to check entry->ended in CLIENT_REMOVE_BUFFERS breaking the ability +// to maintain the same state if called consecutively. +// - As long as end_entry_and_advance_queue() evaluates target, what is the point of +// ended except to say all of an entry's buffers are ended. +// (except to guess what the server thinks, which was it's original purpose). +// - Knowing if the outputs are paused is clearly necessary but what about it's relationship to held? +// - entry->paused basically means preempt any queued skip action. +// - On video or audio paused, check if SINK_EMPTY or PAUSED and run target (currently not handled at all). +// - Fix SINK_LOCAL relying on entry->paused hint from server (rely on clock state?). +// entry->paused reduced to nothing but a hint about if the entry is paused when skipping. +// Only consideration is for the sink outputs to never stay paused when playing and vise versa +// - Then entry->paused actually doesn't matter (sink state is above entry anyway and we should be able to +// rely on the clock per-entry). + === Cache - See cache/entry.h. - [ ] Don't use file_mapped for large files. @@ -125,6 +159,8 @@ - [ ] Internalize "packet cache" logic. === Codecs + - [ ] Cleanup hwaccel stuff. + - [ ] Separate ff_decoder from hwaccel specific stuff. - [ ] Negotiate codec with sinks. - [ ] Better wuffs support. - [ ] https://snisurset.net/code/abydos |