у нас есть система, которая поддерживает потоковое видео, но мы поддерживаем нескольких игроков. У меня есть несколько систем, которые я мог бы использовать для этого. В настоящее время я использую медиа-сервер, который мы используем для потоковой передачи видео, на котором есть ffmpeg (работает Red Hat 4). В этой системе я использовал:
ffmpeg -i INPUT_FILE.mp4 -c:v libx264 -crf 23 -maxrate 3000k -bufsize 30000k -c:a aac -strict experimental -b:a 192k -filter:v "scale=iw*min($width/iw,$height/ih):ih*min($width/iw,$height/ih), pad=$width:$height:($width-iw*min($width/iw,$height/ih))/2:($height-ih*min($width/iw,$height/ih))/2" -f OUTPUT_FILE.mp4
и я подумал, что это хорошо работает. На одном файле, который я использовал для тестирования, он, казалось, отображался правильно на обоих типах игроков. В другом файле он отображается неправильно. Вход файлы также в различных форматах (в основном mp4, с несколькими файлами m4g)и с различным соотношением сторон.
У нас также есть много настольных/портативных машин, работающих под управлением Ubuntu 13.04 (поставляется с avconv), которые я хотел бы использовать для форматирования видео. Если бы я мог заставить хотя бы одну из этих систем правильно форматировать видео, это было бы здорово, но в идеале я хотел бы выяснить, как это сделать как с avconv, так и с ffmpeg, чтобы я мог использовать любую систему.
проблема в том, что мы пытаемся решить, что один игрок-это устройство Android DMP, которое будет воспроизводить видео разных размеров должным образом, добавляя черные полосы по бокам или сверху/снизу по мере необходимости, чтобы видео было правильно размера. Другим игроком является Samsung Smart TV, который настолько умен, что он может переформатировать видео в соответствии с экраном. Это ужасно отстойно, потому что, если они не будут точно рассчитаны на правильный формат, он растянет их в том или ином направлении, чтобы сделать их правильными. Результирующее видео шоу люди, которые кажутся 8 футов в высоту весом 130 фунтов или 4 фута в высоту и 3 фута в ширину.
Как это исправить?