mp4 с пиксельным форматом yuvj420p не воспроизводится в Chrome 17, но воспроизводится в Safari, IE и т. д. - PullRequest
7 голосов
/ 07 марта 2012

Файл из Nikon D3s (mov), преобразованный с помощью ffmpeg в mp4.Работает без проблем со всеми другими файлами (avi, flv, mp4 и т. Д.)

Пожалуйста, смотрите файл: http://shootitlive.s3.amazonaws.com/output.mp4 (Тот же самый нерабочий результат в Chrome, когда обслуживается с разных хостов, и всегда работает в Safari исо вспышкой в ​​Firefox, Chromium)

/ usr / local / bin / ffmpeg -i не работает. MOV -acodec libfaac -ab 128k -vcodec libx264 -preset slow -crf 30 -потоков 0 -s 768x576-aspect 1.33333333333 -ar 48000 output.mp4

Не могу найти что-то странное с (но на самом деле не знаю, что искать):

ffmpeg -v 5 -i filename -f null - 2>error.log`

Есть идеи?

Ответы [ 3 ]

17 голосов
/ 10 марта 2012

Я думаю, что ваша проблема в пиксельном формате.

Начиная с вашего отчета об ошибках Chrome , рабочее видео (working.mp4) имеет pix_fmt = yuv420p. Неработающее видео (qt_output.mp4) имеет значение pix_fmt = yuv j 420p. В моем тестировании преобразование проблемного видео в yuv заставляет его играть. Преобразование рабочего видео в yuvj делает его не воспроизводимым.

Я не уверен, почему мой анализ формата пикселей отличается от анализа Алека в отчете об ошибках Chrome, но для меня это имело значение.

Попробуйте добавить -pix_fmt yuv420p к вашей команде ffmpeg.

3 голосов
/ 18 мая 2012

Пожалуйста, прочитайте ошибка хрома # 117368 , из-за которой разработчик объясняет, что yuvj420p не будет поддерживаться в ближайшее время:

Действительно, хром не поддерживает yuvj420p.

Как правило, мы не поддерживаем видеоформаты (или кодеки), которые не очень широко используются, потому что бремя поддержки (поддержание качества кода, исправление ошибок, проверки безопасности и т. Д.) Несопоставимо с преимуществами для пользователя (по сравнению с все остальное, на что мы можем тратить наше время / энергию).

Закрытие как WorkingAsIntended. Если формат станет более популярным, мы можем пересмотреть вопрос о его поддержке. Если есть еще одна проблема, которую я пропускаю, пожалуйста, откройте снова.

0 голосов
/ 07 марта 2012

Здесь ничего нельзя сделать, это проблема браузера, которую вы связываете с необработанным файлом. Вам действительно нужно использовать HTML5 / FLASH / JS или другой видеоплеер внутри документа HTML.

Это будет работать во всех браузерах с поддержкой HTML5 :

<!DOCTYPE html>
<head>
    <meta charset="utf-8" />
</head>
<body>
    <video height="250" width="320">
        <source src="http://shootitlive.s3.amazonaws.com/output.mp4" type="video/mp4" />
    </video>
</body>
...