Advertisement
Guest User

webm thread

a guest
May 3rd, 2014
401
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Тред без анимублядства:
  2. Тред техподдержки: http://2ch.hk/s/res/978430.html
  3. Бугурт анимухейтеров: http://2ch.hk/d/res/144620.html
  4.  
  5. Для поиска соуса видео сохраняем кадр (правый клик по видео) и ищем его на http://images.google.com.
  6.  
  7. Доступные кодеки — VP8 (видео) и Vorbis или Opus (звук), размер файла — 6144КБ.
  8. VP9 не поддерживается.
  9. Внимание: если сделать звук моно, то в firefox он будет слышен только слева. Параметр ffmpeg для конвертации в стерео — `-ac 2`.
  10.  
  11. В двух словах о кодировании WebM:
  12. Есть два метода контроля ширины потока: фиксированное качество (1) и подгонка под объём (2).
  13. **1.** В случае с небольшими фрагментами, для которых лимит 6МБ не страшен, следует использовать фиксированное качество (crf). Отрезаем фрагмент 20 секунд начиная с 10 минут:
  14. `ffmpeg -ss 10:00 -i video.mkv -t 20 -crf 30 -b:v 5m out.webm`
  15. Параметр -b:v (битрейт видео) при указании crf используется в роли максимального пикового битрейта. Значение crf может быть от 0 (лосслесс, в vp8 не поддерживается) до 60 (говно).
  16.  
  17. **2.** Допустим, нужно сконвертировать в WebM 2 минуты файла video.mkv начиная с 10 минут.
  18. Рекомендуемый метод кодирования для достижения максимального качества при ограниченном объёме — два прохода с указанием среднего битрейта. Первым делом вычисляем битрейт по формуле `bitrate = filesize * 8bit / time - audio_bitrate`. По умолчанию битрейт аудио получается около 128кбит/с. Для фрагмента 2 минуты это будет `6144KiB * 8bit / 120sec - 128kbit/s = 281kbit/s`.
  19. Далее прикидываем разрешение видео, оценивая битрейт и насыщенность фрагмента движением. В битрейт 281кбит/с в среднем влазит широкоэкранное видео шириной 500 пикселей.
  20. Первый проход (без звука, проход нужен только для оценки сложности кодирования видео для оптимального распределения битрейта):
  21. `ffmpeg -ss 10:00 -i video.mkv -t 2:00 -vf scale=500:-1 -b:v 281k -an -pass 1 out.webm`
  22. Второй проход (максимальное качество):
  23. `ffmpeg -ss 10:00 -i video.mkv -t 2:00 -vf scale=500:-1 -b:v 281k -quality best -pass 2 out.webm`
  24. Если размер вышел больше 6144КБ — уменьшаем разрешение и/или битрейт и повторяем второй проход.
  25. Многопоточность (параметр -threads) использовать не рекомендуется — она увеличивает размер видео.
  26.  
  27. Наложение субтитров:
  28. `ffmpeg -i animu.mkv -ss 10:01 -t 30 -vf scale=500:-1,subtitles=animu.mkv -b:v 300k out.webm`
  29. или
  30. `mpv animu.mkv --start 10:01 --length 30 --vf scale=500:-2,sub --sub-pos 90 --sub-scale 1.3 --ovcopts b=300k -o out.webm`
  31. Как видно из параметров, mpv позволяет увеличивать субтитры (--sub-scale) и сдвигать их вверх (--sub-pos). Также mpv берёт сабы автоматически из контейнера или из файла с совпадающем с видео именем, а для ffmpeg требуется указание файла. При этом mpv пока не пригоден для двухпроходного кодирования с указанием среднего битрейта, а для ffmpeg в щиндовсе нужно настраивать fontconfig: http://pastebin.com/BvfMSBXn. Внимание: параметр -ss ffmpeg'а следует указывать после входного файла — иначе тайминг субтитров будет считаться от начала фрагмента.
  32. В git-версии фильтр subtitles ffmpeg'а научился брать шрифты из контейнера и понимать параметр si (номер потока с нужными сабами), коммиты 7e6b3ad и 7a0e689.
  33.  
  34. Скачать программы: http://ffmpeg.org/download.html, http://mpv.io/installation/.
  35. Документация: http://ffmpeg.org/documentation.html, https://github.com/mpv-player/mpv/blob/master/DOCS/man/en/.
  36. Скрипт для удобного вырезания фрагментов в mpv (выводит заготовки команд с временем с точностью до кадра и битрейтом, скриншот: http://tau.rghost.ru/54683540/image.png): http://pastebin.com/q6MTsKQ4.
  37. Гуй с минимумом кнопок для ретардов (сперма-only): https://github.com/WebMBro/WebMConverter/releases.
  38.  
  39. Шаблон оп-пика (GIMP): http://rghost.ru/54684885
  40. Текст поста: !!!ссылка на этот текст!!!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement