Запись на диск при предотвращении опустошения буфера в другом процессе - PullRequest
0 голосов
/ 18 февраля 2019

Я работаю над проектом, в котором используется плата Raspberry Pi 2 Model B в сочетании с картами Samsung MicroSD.

Система запускает Raspbian и воспроизводит локальные видеофайлы HD с помощью omxplayer.

Во время воспроизведения он также может загружать дополнительные видеофайлы, если это указано.Для этого он использует библиотеку запросов Python и записывает потоковую загрузку кусками по 1 мегабайту за штуку.

Когда сеть работает достаточно быстро, кажется, что SD-карта (контроллер?) Становится узким местом.Если видео воспроизводится во время загрузки файла, в конечном итоге, omxplayer зависает.Предположительно, потому что буфер заполняется недостаточно быстро, но я открыт для дополнительных теорий, если кто-то может дать предложения о том, как их проверить.

В любом случае, я ищу идеи о том, как предоставить (разумнобыстрая загрузка файлов без сбоев в omxplayer и, тем самым, на систему.

В настоящее время я пытался ограничить скорость загрузки до 200 КБ / с, спя в течение n секунд после записи каждого фрагмента при каждом запуске процесса omxplayer, номожет быть, есть лучший способ сделать это?Что-то, что включает проверку того, какие другие файлы читаются в данный момент и с какой скоростью применяются адаптивные ограничения скорости загрузки.Возможно, особый подход к записи или чтению файлов с SD-карты.Любые идеи будут приветствоваться.

...