Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: theshit в Sep 17, 2013, 19:47



Титла: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 17, 2013, 19:47
Здравейте приятели,
от известно време си поддържам видео сайт. Но тези дни реших да го направя и мобилно достъпен след като променя част от сорс кода и бъдещите видеота да се конвертират в достъпен за мобилни устройства формат - mp4. Както и да е - справих се с това, като цяло е php скрипт който използва ffmpeg на сървъра за да конвертира клиповете. Обаче, тука идва и проблема. Клиповете се конвертират без проблем и без грешки в mp4, и тръгват на Apple-ски устройства и изобщо под iOS, само дето под Android не щат да стартират. А иж Android това Android онова ... много странно, уж епълите бяха по претенциозни а на тях всичко си върви.

Та по темата: изчетох доста статии, трябваше да се запознавам с Android и неговите характеристики и разбрах, че  поддържа само някои видове mp4 формати. Та мисълта ми е, къде е грешката: явно някъде в командата за изпълнение за конвертиране. Ето я и нея:

Код:
/usr/bin/ffmpeg -i /home/user/public_html/files/conversion_queue/137940558140573.flv -f mp4 -vcodec libx264 -r 25 -s 854x480 -aspect 1.7791666666667 -vf "movie=/home/user/public_html/logo.png [watermark]; [in][watermark] overlay=10:10 [out]" -acodec libfaac -ab 128000 -ar 22050 /home/user/public_html/files/videos/137940558140573.mp4

Пробвах какво ли не?! Намалях разделителни, фреймове, сменях кодеци (разбрах, че андроида поддържа само някои видове кодеци) - нищо и пак нищо, никакъв резултат. Писах във форумите на Андроид, но мисля, че те няма да могат да ми отговорят конкретно, защото определено трябва нещо да се "барне" по опциите в командата за конвертирането с ffmpeg.
Съжалявам, че Ви притеснявам, но много главоблъсканици с тези работи наистина вече ми писна и пускам темата ...


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: jet в Sep 17, 2013, 20:38
Опитай:

Код:
ffmpeg -i vhodenfile.avi -vcodec mpeg4 -s 320x240 -b 300k -r 23.98 -acodec libmp3lame -ar 48000 -ab 112k izhodenfile.mp4


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: User13 в Sep 17, 2013, 20:40
А няма ли формат, който да е достатъчно добре поддържан от всички устройства, примерно --> http://www.webmproject.org/ ($2)


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 17, 2013, 20:51
Опитай:

Код:
ffmpeg -i vhodenfile.avi -vcodec mpeg4 -s 320x240 -b 300k -r 23.98 -acodec libmp3lame -ar 48000 -ab 112k izhodenfile.mp4

А по-голяма разделителна не мога ли да сетна ?


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: appmaster в Sep 17, 2013, 21:05
Може, написаното от колегата jet е само примерна команда :)
Параметъра за разделителната способност може да се променя.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 17, 2013, 23:13
 >:D


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: n00b в Sep 18, 2013, 02:31
Пробвай да намалиш бит-рейта - average bitrate. По-принцип iOS на по-стари устройства зарежда видеа ДО 1.5MBps.

Експериментално можеш да използваш HandBrake - http://handbrake.fr/downloads.php и да видиш при какви настройки ще тръгне. Веднъж уцелиш ли вярната комбинация по-нататък е лесно.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 18, 2013, 09:15
Ами не става с намаляне на битрейта, а с мпег4 както и с libxvid, който ми казаха, че е подобен - след конверта имам черен екран  със звук на всяка платформа.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: n00b в Sep 19, 2013, 01:39
Добре - дай ми някакво видео да ти го конвертирам и да видим дали и ти ще можеш да го пускаш вместо да ръкоблудстваме тук повече. ИЛИ да вземам някакво и да го пуснем експериментално?


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 19, 2013, 18:48
http://drag.bg/op всички видеота освен YouTube.mp4 (което е свалено директно от там) не тръгват. Пробвай да конвертираш някое - избери си произволно. Па да видим какво ще стане. Ако искаш пробвай и експериментално, за мен няма никакво значение. Чудя се по какъв начин и какъв кодек използвад youtube, че всичко им върви, наясно съм, че са про-та и, че никога няма да ги стигна, но не мога да кажа, че не ползват ffmpeg .... все пак ...


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: bvbfan в Sep 19, 2013, 20:12
game1 и game4 тръгват с видео и звук, другите 2 без видео. Кажи кой файл не може да се плейва от Андроид и коя версия е ОС.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 19, 2013, 20:42
game1 и game4 тръгват с видео и звук, другите 2 без видео. Кажи кой файл не може да се плейва от Андроид и коя версия е ОС.

Използваш ли някакъв допълнителен софтуер ? Само пред браузъра с който си върви с Андроида тръгват ли ?
Ще кажа за версия, понеже в момента не е в мен, но мисля, че е последната.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: bvbfan в Sep 19, 2013, 21:10
Ако пробваш да свалиш клипчетата през браузъра на Андроид не е успешно и затова не стартират вероятно има някакъв проблем в протокола. Ако го свалиш през компютър и го сложиш на устройството ще видиш, че клиповете вървят, което означава, че са годни. Има нещо специфично в протокола при стреамване и оттам идва проблема, според мен.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 20, 2013, 09:13
Недоумявам, как ще е от портокола при положение, че видео YouTube.mp4 ще тръгне безпроблемно и от браузъра ...  ::)


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: bvbfan в Sep 22, 2013, 10:45
Според мен причината е moov header ->
Код
GeSHi (Bash):
  1. ffmpeg -i <input> -c:v libx264 -profile:v baseline -c:a libfaac -ar 44100 -ac 2 -b:a 128k -movflags faststart output.mp4
http://stackoverflow.com/questions/14171826/converting-video-for-android-using-ffmpeg


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: theshit в Sep 23, 2013, 17:24
Дотук добре, всичко тръгва успешно, но имам една мааалка спънка: This Video is Not Optimized for Mobile.


Титла: Re: Конвертиране на видео файл в mp4 с помощта на ffmpeg
Публикувано от: bvbfan в Sep 23, 2013, 19:14
https://www.virag.si/2012/01/web-video-encoding-tutorial-with-ffmpeg-0-9/