Банальный массив длины Len
Индекс следующего элемента: Index = (Index + 1) % Len
Индекс предыдущего элемента: Index = (Index + Len - 1) % Len
Добавляем в голову, читаем с хвоста - соответственно, буфер содержит два индекса: Head и Tail.
Если голова догнала хвост - буфер переполнен.
Если хвост догнал голову - буфер пуст.
Создаете массив фиксированного размера.
методы пуш и поп
Пуш инкрементирует указатель, по достижении вершины переходит в начало.
Поп просто возвращает текущий указатель или текущий указатель минус количество отсчетов
Это для значений
Для видео записываете чанками по 2 мб в памяти храните только имя и дату. Если исчерпали лимит карты то удаляете старые файлы пока не станет достаточно места для записи нового чанка.