Не работает перемотка видео ffmpeg

А
На сайте с 27.08.2013
Offline
110
5132

Всем доброго времени суток. Конвертирую видео с помощью ffmpeg из flv в mp4 . После этого на сервере перестает работать стиминг(перемотка). Поискал по форумам и понял что не передаются мета данные, поэтому якобы и не работает перемотка. Можно ли это решить путем самого ffmpeg?

Конвертирую вот так

ffmpeg -i video.flv video.mp4 -y
N
На сайте с 06.05.2007
Offline
419
#1

Айратиус, да. В современных версиях ffmpeg все намного проще стало - -movflags faststart . В древнем интернете много чего написано, но сейчас вам просто нужен этот ключ.

Кнопка вызова админа ()
А
На сайте с 27.08.2013
Offline
110
#2
netwind:
Айратиус, да. В современных версиях ffmpeg все намного проще стало - -movflags faststart . В древнем интернете много чего написано, но сейчас вам просто нужен этот ключ.

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

ffmpeg -i video.flv -movflags faststart  video.mp4 -y

Есть мысли как можно исправить это?

Joker-jar
На сайте с 26.08.2010
Offline
166
#3

Что за плеер? Нативный HTML5, FLash или обертка под HTML5? В каких браузерах проверяли? Пользуюсь вот такой командой:

ffmpeg -y -threads 0 -i "%s" -c:v libx264 -preset slow -crf 20 -s %dx%d -movflags faststart -vsync 2 -c:a libfaac -ar 44100 -ab 128k "%s"

А
На сайте с 27.08.2013
Offline
110
#4
Joker-jar:
Что за плеер? Нативный HTML5, FLash или обертка под HTML5? В каких браузерах проверяли? Пользуюсь вот такой командой:

ffmpeg -y -threads 0 -i "%s" -c:v libx264 -preset slow -crf 20 -s %dx%d -movflags faststart -vsync 2 -c:a libfaac -ar 44100 -ab 128k "%s"

Kernel player http://www.kernel-scripts.com/ru/player_configure/

А вы для centos пользуетесь этой командой? Я так понимаю что для моего кода помимо -movflags faststart не хватало остальных параметров

upd

Не работает перемотка. Видео сразу начинает проигрывать

N
На сайте с 06.05.2007
Offline
419
#5

Айратиус, ну там еще другие ньюансы есть : плеер должен поддерживать отправку перемотки и сервер должен согласованно понимать эти параметры. Все это надо сверить.

Раз вы задаете вопрос про ffmpeg, я предполагал что вы это все прочитали http://nginx.org/ru/docs/http/ngx_http_mp4_module.html#mp4

Кстати, nginx должен быть версий хотя бы в районе 1.8 из-за нескольких важных исправленных багов в модуле mp4.

А
На сайте с 27.08.2013
Offline
110
#6
netwind:
Айратиус, ну там еще другие ньюансы есть : плеер должен поддерживать отправку перемотки и сервер должен согласованно понимать эти параметры. Все это надо сверить.
Раз вы задаете вопрос про ffmpeg, я предполагал что вы это все прочитали http://nginx.org/ru/docs/http/ngx_http_mp4_module.html#mp4
Кстати, nginx должен быть версий хотя бы в районе 1.8 из-за нескольких важных исправленных багов в модуле mp4.

Есть другие видео .mp4 и все прекрасно работает. Они были скачены из vk.com и лежат на сервере. Вот они и работают отлично. Но есть и flv файлы, которые хочу перекодировать в mp4 и после перекодировки не работает перемотка. Сейчас видео запускается до полного скачивания. Но вот при перемещении ползунка видео начинается сначала.

N
На сайте с 06.05.2007
Offline
419
#7

Айратиус, не вижу в ваших словах понимания .

согласованная работа трех разных компонент обеспечивают перемотку mp4 :

1. перенос moov atom в начало файла и это легко проверить посмотрев на файл - там будут буковки "moov" в начале, а не в конце.

2. поддержка перемотки плеером - отправка именованного параметра или же указание байт через заголовок Range: (как в uppod). Посмотрите что происходит в браузере в отладчике сети (допустим, в firebug)

3. поддержка отдачи с нужного места nginx на основе параметра с тем же именем или же через заголовок Range: . Это тоже видно в отладчике сети.

Все это нужно проверить и заработает.

А
На сайте с 27.08.2013
Offline
110
#8
netwind:
Айратиус, не вижу в ваших словах понимания .
согласованная работа трех разных компонент обеспечивают перемотку mp4 :
1. перенос moov atom в начало файла и это легко проверить посмотрев на файл - там будут буковки "moov" в начале, а не в конце.
2. поддержка перемотки плеером - отправка именованного параметра или же указание байт через заголовок Range: (как в uppod). Посмотрите что происходит в браузере в отладчике сети (допустим, в firebug)
3. поддержка отдачи с нужного места nginx на основе параметра с тем же именем или же через заголовок Range: . Это тоже видно в отладчике сети.

Все это нужно проверить и заработает.

Я очень благодарен за попытку помочь, но что именно не понятно исходя из того что другие .mp4, .flv РАБОТАЮТ на этом сервере? Но я не понимаю в каком месте он ломается. Потому что проблема частично решилась (видео начинает проигрываться сразу). Остается только вопрос перемотки. (а мы знаем что перемотка работает для других .mp4, .flv на этом сервере)

N
На сайте с 06.05.2007
Offline
419
#9

Айратиус, вы не привели достаточно данных чтобы точно указать в чем причина.

Странно что одни файлы работают, а другие с moov atom теперь уже предположительно (! ) перенесенным в начало не работают. C ffmpeg скорее всего все уже правильно. Ошибиться можно где угодно еще.

Надо на конкретных файлах, сайте и плеере смотреть. Я вам подсказываю список того, что нужно проверить и как.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий