Бывает хочется выложить очередной breakbeat боевик на youtube и поделиться со всем миром, но натыкаешься на нежелание youtube принимать mp3. Выход тут один – скормить ему небольшой ролик с статичной картинкой, полученный путем склеивания собственно картинки и mp3.
О том, как это сделать и пойдет речь.
Для начала надо подготовиться:
- выберите картинку или картинки
- затрите тэги у музыкальной композиции. По тэгам гугл определит правообладателя и добавит музыкальный паттерн в черный список. Если вы после загрузки ролика получили сообщения типа “Ваше видео может содержать материалы, права или лицензия на которые принадлежат следующим владельцам контента” рыпаться уже поздно. Изменение битрейта, частоты и даже превращение стерео в моно эффекта не дает.
- скачайте ffmpeg (если у вас Linux – поищите в репах или собирите сами, скачав сорцы с сайта http://ffmpeg.org/, если у вас Windows - можно скачать готовые бинарники с сайта http://ffmpeg.arrozcru.org/builds/).
- Ну и наконец с помощью ffmpeg конвертируйте видео:
ffmpeg -loop_input -r 1 -f image2 -i d:\source.png -r 1 -t 300 -i d:\source.mp3 -acodec copy d:\out.avi
Где:
- -loop_input – зациклит вывод картинки. Если не указать этот ключ Youtube увидит только первый фрейм и сделает длину видео равной 1 секунде.
- source.png – исходная картинка. Может быть в любом формате – jpg, png – без разницы.
- -r 1 – fps
- -t 300 – длина трека mp3 в секундах.
- source.mp3 – исходный трэк
- -acodec copy – способ кодирования стрима в видео. Вместо copy можно указать ac3.
- out.avi – полученный файл