2016-12-09 3 views
1

Возможно ли получить webm (или другой формат) патроны из http post (upload) на моем сервере (я знаю, как это сделать) .... затем подать их как патроны (куски, полученные из браузера), в gstreamer или ffmpeg для преобразования в mp4 с пониженным качеством без загрузки всего файла в памяти или на диск перед сохранением преобразованного mp4? Почему я не хочу, чтобы они полностью загружались в память или диск? масштабируемостьПреобразование webm (или любых других) фрагментов формата в mp4

+0

Возможно, вы имеете в виду «http get». –

+0

Нет, спасибо за ваш комментарий, это заставило меня понять, что мне нужно обновить вопрос, давая понять, что это сервер, получающий куски из браузера. –

ответ

1

Да, вы можете подавать ffmpeg по одному кадру за раз, не сохраняя весь видеофайл локально. Вы можете читать фрагменты данных из потока http и передавать их библиотеке ffmpeg для декодирования. Вот официальный example.

+0

Я обновил вопрос, давая понять, что это сервер, получающий куски из браузера, Ваш ответ по-прежнему применяется? –

+0

Да, мой ответ по-прежнему применяется. Вы можете перекодировать многие форматы восходящего потока «на лету». Общая технология потоковой передачи видео на основе HTTP, [HLS] (http://www.streamingmedia.com/Articles/Editorial/What-Is-.../What-is-HLS- (HTTP-Live-Streaming) -78221 .aspx) включает в себя многокадровые фрагменты закодированных данных, которые могут потребовать промежуточного хранения. Но эти куски относительно невелики и не вызывают проблем, если вы не обеспокоены задержкой ретрансляции. –