Плоский буфер из фрагментов.
От: imh0  
Дата: 13.01.21 10:27
Оценка:
1)По сети фрагментами приходят сжатые H.264 данные. (те кто не знаком с H.264 можно представить что это просто сжатые данные)
2)Фрагментация не коррелирует с прикладным форматом. То есть нарезка может быть в любом месте.
3)Мой декодер H.264 читает данные порциями в соотвествии с этим форматом.

Требуется реализаци функционала READ и SEEK FORWARD по этим данным. Считается что после READ данные можно освобождать.
Требуется избежать копирования.

Получение/обработка данных выглядит предположительно так:

1) Ставится буффер размером 100 чунков на получение. Один чунк предположим равен грануляции выделения памяти.
2) Происходит получение 20К данных.
3) Буффер освобождается/реаллоцируется без копирования до размера полученных данных.
4) Буффер добавляется в очередь
5) Разблокируется ждущая до этого функция чтения декодера.
6) После чтения из очереди буффера освобождаются.

Как реализовать в лоб понятно... Но вот чего-то готового найти не смог.

Как это лучше сделать на базе чего-то готового или как переделать процесс обработки потока?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.