Форум / Рецепты / Оптимальная кодировка файлов avi to flv (для кино сайтов)
Всем привет, решил закинуть оптимальную кодировку файлов с формата avi to flv. Знаю, что многие ищут.
Конвертирую через командую строку, все файлы оптом. Удобно для онлайн кинотеатров.

1) создаем файл с расширением (.sh) Пример: kod.sh
2) закидываем туда код ниже

#!/bin/bash
in_folder=/home/site/www/download/
out_folder=/home/site/www/converted/
files='ls $in_folder'
k=k
flv=.flv
for src in $files
do
# total='ffmpeg -i $in_folder$src 2>&1 | grep "Duration:" | egrep -o '<[0-9]{3}>''
# audio='ffmpeg -i $in_folder$src 2>&1 | grep "Audio:" | egrep -o '<[0-9]{3}>''
# hertz='ffmpeg -i $in_folder$src 2>&1 | grep "Audio:" | egrep -o '<[0-9]{5}>''
# let video=$total-$audio
base=$(basename $src .avi)

# ffmpeg -i $in_folder$src -vcodec h264 -threads 0 -r 25 -g 50 -b 500k -bt 500k -acodec mp3 -ar 44100 -ab 64k $out_folder$base$flv
# ffmpeg -i $in_folder$src -b:v $video$k -acodec ac3 -b:a $audio$k -ar 44100 -f flv $out_folder$base$flv

# ffmpeg -i $in_folder$src -vb $video$k -acodec ac3 -b:a $audio$k -ar $hertz -f flv $out_folder$base$flv
ffmpeg -i $in_folder$src -c:v libx264 -b:v 500k -c:a libfdk_aac -b:a 64k -ac 2 -f flv $out_folder$base$flv
# ffmpeg -i $in_folder$src -vcodec h264 -threads 2 -r 25 -g 50 -b 500k -bt 500k -acodec mp3 -ar 44100 -ab 64k $out_folder$base$flv
yamdi -i $out_folder$base$flv -o $in_folder$base$flv -w -k -s -c "ссылка на сайт"
done

3) подключаемся к серверу через putty, вводим, полный адрес к файлу. Пример: /home/site/www/kod.sh

И он начинает конвертировать файлы, все в папке download в папку converted.

Не забудьте установить на сервер: ffmpeg, yamdi, libx264

Кто может улучшить код, или найдет ошибки в студию. Может у кого есть варианты как улучшить качество видео?
kz-videoСсылка на пост (Смотрели 36379)07.04.15 16:07     Ответить
Ваше имя*
 E-mail* (не публикуется)
 
 
Если пишете о проблеме, то приложите, пожалуйста, ссылку на свой плеер отсюда — Плеер: Файл > Код > Ссылка
Вставка кода — [code][/code] дублировать ответы на e-mail
1
PHPSID 09.04.15 - 14:09
Конечно есть. Конвертить в mp4.
2
kz-video 10.04.15 - 01:16
А есть такой же вариант с форматом mp4? там вроде в два прохода нужно!
3
zurkevich 11.04.15 - 01:49
только если нужен постоянный средний битрэйт, а так в один проход в режиме crf, быстрее и меньший объем файлов на выходе.
4
zurkevich 11.04.15 - 02:48
Автор, я наверное с тобой не соглашусь. Возможно я не прав, но имею несколько замечаний. Что если оригинал 23,976 24, или меньше кадров в секунду — это может стать причиной рассинхронизациии звука и видео ряда, я бы оставил оригинальную частоту кадров. GOP 50 — тоже не очень хорошее решение, увеличивается количество I фрэймов, но если в оригинале был GOP 250 или 350 это значит что P или B станут I кадрами, в итоге количество I кадров увеличится в 5 — 7 раз, а их качество будет плохое, кроме того в видео ряде они хранятся в несжатом состоянии, что в свою очередь уменьшит степень сжатия видео. Из плюсов более гладкая перемотка. Еще все видео не зависимо от размеров кадра кодируется в один битрэйт, что тоже не есть хорошо. В случае если мои доводы не верны, принимаю аргументированные ответы.
5
kz-video 15.04.15 - 19:21
Здравствуйте, почему я написал оптимальный, я пробовал оставлять оригинал, но результаты бывали очень разные. А мне нужна стабильность.
Почему я выбрал g50
6
kz-video 16.04.15 - 21:38
Блин я столько написал, в прошлом посте, но он срезался почему-то. Вообщем итог в том, что вариантов пробовал много, это самый нормальный. Насчет g50, да вы правы, но в основном видео получаются неплохие, видите я хочу хорошее качество, и не сильно большой размер файла. Гладкая перемотка это да! Плюс я думаю битрейт поставить 700 будет лучше. Вообще я не спорю, если есть предложения, можно оптимизировать, выкладывайте. Могу скинуть ссылку на свой сайт, посмотрите какой результат.
7
zurkevich 16.04.15 - 21:58
Охотно взгляну, взамен кину ссылку на свой okfilm.net Я просматривал различные методы по оптимизации кодирования видео многие из них опираются на показатели Bits/(Pixel*Frame) и SSIM
8
kz-video 17.04.15 - 19:38
Посмотрел Ваш сайт, плеер поддерживает моб.устройства, файлы в мп4 формате, очень не удобны для десткопных версий, сперва идет предзагрузка файла, примерно 2 процента, потом начинается серия или фильм.
Вообще я думаю, если кто-то хочет иметь моб.версию. Выводить два типа плееров. Первую для компьютеров, вторую для моб. И сделать на сайте автоматическое определение, через какое устройство зашел пользователь, и в итоге выводить плеер для него. Хоть и очень накладно, но зато…
Ссылка: zombiz.net
И да сделайте защиту ссылок, сейчас воришек очень много)
9
zurkevich 18.04.15 - 15:41
На этом сайте я только видео контент наполняю, чисто технически он не мой. Вообще была идея использовать только HTML версию плеера и мп4 для совместимости как с десктопами так и с мобильными устройствами. Небольшая предзагрузка особенность мп4 контейнера. В режимах ABR и VBR (я использую однопроходный CRF) можно поэкспереметировать с буфером и уменьшить время начала воспроизведения, а можно использовать те параметры которые рекомендует ютуб. И мы не много по разному оцениваем оптимальные показатели, я как соотношение визуальное качество к объему и совместимость, а ты как визуальное качество и удобство для стриминга. Загрузил ради интереса с твоего ресурса Stanovlenie.legendy.2014.HDRip.flv — его размер в среднем в 3–4 раза больше чем с теми параметрами которыми кодирую я при размере кадра 720х304 (я за базу использую ширину 720, а высота вычисляется автоматически согласно пропорций кадра). В моём варианте фильмы генерируют меньший объем трафика, что крайне выгодно как для мобильных устройств, так и для хостинга и CDN. Защиту делать не зачем — на плеере есть кнопка загрузить.
10
ralf75 19.06.15 - 15:15
Защита нужна, к топовым фильмам подключат ваши фильмы на других сайтах и сервер ваш ляжет и не встанет.
11
ApeJIsiN 27.04.16 - 01:08
Zdrastvuj kz-video, mozno vash skype ? Xotel paru sovetov sprositj po povodu svojego online kinoteatra, ochenj nuzen vash sovet. Sposibo
12
CAB 26.09.15 - 01:32
ИМХО, опираться на показатели Bits/(Pixel*Frame) стоит только при сжатии в MPEG1 или MPEG2, т.к. они менее зависимы от конкретного видеоряда. На кодеках H263 и H264 зависимость от видеоряда намного больше, поэтому при одном и том же битрейте разные видео могут сжаться с разным качеством, какие-то пережаться, а какие-то с излишком остаться. Оптимальным, по соотношению качество-размер файла, является сжатие по методу "Constant Quantiser". При этом для каждого кодека оптимальная цифра своя. Зато не зависит от размера кадра. Разные видео с разными размерами кадра визуально смотрятся с одинаковым качеством сжатия. По крайней мере для хранения этот метод лучше. При онлайн просмотре, как мне кажется, он сопоставим с двухпроходным переменным битрейтом.
13
pornorub 27.04.15 - 07:39
Всем привет! кто-нить подскажите новичку как вставлять видео в ряд (так сказать — *окна многоэтажки*))), и зависит ли такая расстановка от шаблона?? заранее спасибо.. p*s: сайт локальный, на dle))
14
Desserro 03.07.15 - 19:51
Подскажите пожалуйста новичку как тут сделать так, чтоб не было предзагрузки, а то сначала ждешь пока весь фильм загрузится и только потом смотришь его!
15
zurkevich 06.07.15 - 12:37
При кодировании видео метаданные должны располагаться в начале файла, на сервере должен быть настроен псевдостримминг. Для nginx это плагины flv и mp4. Как настроить и перенести метаданные подробно написано в FAQ
Сообщить об ошибке на сайте
 Uppod © 2008–2020
Сообщить об ошибке на сайте
Если ошибка относится к плееру, а не сайту, либо Вы хотите получить ответ на вопрос —
лучше написать на форуме