Я работаю с чужим кодом на устройстве, которое может поместить изображение в /dev/fb/0
и показать его на видео или отправить его по сети клиентскому приложению.
У меня нет доступа к старому источнику для клиентского приложения, но я знаю следующее о данных:
- 720x480
- 16-бит
- RGB (я не уверен, что это 5,5,5 или 5,6,5)
- RAW (без заголовков)
cat
- возможно /dev/fb/0
- 675kb
Как мне придать этому заголовку или преобразовать его в JPEG, BMP или RAW-тип, который я затем смогу просмотреть в настольном приложении?
В конечном счете, я хочу, чтобы он был в формате jpeg и просматривался в браузере, но все, что я вижу своими глазами, пока будет работать.
Успех
(см. Комментарии ниже)
ffmpeg \
-vcodec rawvideo \
-f rawvideo \
-pix_fmt rgb565 \
-s 720x480 \
-i in-buffer.raw \
\
-f image2 \
-vcodec mjpeg \
out-buffer.jpg
Неудачные попытки
Показывает изображение три раза по ширине почти без цвета и сдавливает по вертикали:
rawtoppm -rgb -interpixel 720 480 fb.raw > fb.ppm
Показывает изображение, но с полосами и сдавленными по вертикали и плохим цветом:
rawtoppm -rgb -interrow 720 480 fb.raw > fb.ppm
аналогично вышеуказанному
convert -depth 16 -size 720x480 frame_buffer.rgb fb.jpeg