Results 275 issues of Victor Gaydov

*Last revised: Jun 2024* [core::SlabPool](https://github.com/roc-streaming/roc-toolkit/blob/develop/src/internal_modules/roc_core/slab_pool.h) implements [slab pool](https://en.wikipedia.org/wiki/Slab_allocation). (Actual implementation is in [core::SlabPoolImpl](https://github.com/roc-streaming/roc-toolkit/blob/develop/src/internal_modules/roc_core/slab_pool_impl.h)). When an object is allocated, there are two main paths: * hot path - object is available...

performance
help wanted
algorithms

Follow-up for #14 and #675. - [x] Refine packet counter calculation. On receiver, derive it from packet_count in SR, and handle 32-bit wraps. On sender, derive it from ext_first_sn and...

enhancement

### Implementation - [x] in LinkMeter, compute jitter, total_packets, lost_packets - [x] teach fec::Reader and fec::Writer to compute FEC block duration - [x] teach LatencyMonitor to compute target latency continuously...

enhancement

- [x] Compute e2e latency and clock_shift - [ ] Implement #674 - [ ] Apply clock_shift to adjust timestamps - [x] Deliver e2e latency from receiver to sender -...

enhancement

This is a small follow-up issue for #576. In roc-recv and roc-send, we have special syntax `-o file:-` and `-i file:-` which means read or write from/to stdin. See details...

enhancement
help wanted
easy hacks
sound io

## Problem [Depacketizer](https://github.com/roc-streaming/roc-toolkit/blob/develop/src/internal_modules/roc_audio/depacketizer.h) class converts sequence of network packets into stream of audio frames. Among other things, it detects and logs late packets. If packet is missing when it's needed,...

enhancement
help wanted
easy hacks
networking

In [SoxSink](https://github.com/roc-streaming/roc-toolkit/blob/develop/src/internal_modules/roc_sndio/target_sox/roc_sndio/sox_sink.h), implement pause()/resume() methods same way as it's done in [SoxSource](https://github.com/roc-streaming/roc-toolkit/blob/develop/src/internal_modules/roc_sndio/target_sox/roc_sndio/sox_source.h) (i.e.: if device is not file, close it in pause, and reopen in resume; for files, do nothing).

enhancement
help wanted
easy hacks
sound io

Requires these tasks to be completed first: * #677 * #678 * #679 * #706 In sndio::Pump, we need to do the following: * [ ] if source becomes idle:...

enhancement
sound io

- [ ] Add pipeline::StateTracker::wait_state() that allows to block (from any thread) until state is changed to one in the specified mask. It should support timeout argument (with an option...

enhancement
c api

Needed changes in PulseaudioDevice: * pause/resume should use `pa_stream_cork()` * we should listen to `PA_STREAM_EVENT_REQUEST_CORK` and `PA_STREAM_EVENT_REQUEST_UNCORK` events and accordingly cork/uncork the stream and report idle state

enhancement
sound io