Обединяване на хоризонтално и вертикално позиционирано видео с ffmpeg

Понякога правя върховната глупост да снимам видео с телефона, като го държа вертикално. После се усещам и го завъртам както си трябва и правя още едно видео. А накрая ми се иска да ги обединя. Намирането на безплатен софтуер, който да слива подобен тип вертикално и хоризонтално разположени видео файлове ме затрудни. За това се върнах отново към класиката ffmpeg.

Стъпките за обединяване на 2 подобни видео файла са следните:

  • двата файла трябва да са с едни и същи кодеци
  • конвертиране на 2-та файла до TS-формат
  • напасване на двата файла по широчина и височина, като се добавя padding (отстояния) в картината на файла, сниман вертикално
  • обединяване на двата файла

Ще си помогна с един пример:

ffmpeg video join - vertical and horisontal

video1.mp4 – хоризонтално разположено с размери на картината 1920×1080.
video2.mp4 – вертикално разположено с размери на картината 1080×1920.
out_full.mp4 – изходния файл, след обединяването на двата

Използвам по-долните команди за ffmpeg са тествани под Win7, но вероятно ще работят и под Linux.

1
2
3
4
ffmpeg -i video1.mp4 -q 1 -f mpegts out1.ts
ffmpeg -i video2.mp4 -q 1 -vf "scale=iw*min(1920/iw\,1080/ih):ih*min(1920/iw\,1080/ih),pad=1920:1080:(1920-iw)/2:(1080-ih)/2" -f mpegts out2.ts
 
ffmpeg -i "concat:out1.ts|out2.ts"  -c:a aac -b:a 128k -vcodec libx264 -preset slow out_full.mp4

Snowman – Blender 3D

Тъй като тази Коледа няма сняг и на мен и дъщеря ми ужасно ни липсва, решихме да си нарисуваме поне снежен човек.
Весели празници на всички!
Blender 3D - snowman

Сорс файл: Snejen_chovek-blender.zip
Рендер: GPU, Cycles render

Безжично сваляне и качване на файлове от и към телефона – видео урок

Тъй като локалната мрежа в къщи е малко сложно изградена, ще споделя каква техника ползвам, за да запазвам снимки, клипчета и други файлове от телефоните, а и за да си качвам музика, филмчета, карти за GPS и т.н. Мрежата ми е изградена от един кабелен рутер към който са вързани директно PC и Wi-Fi рутер. Ако PC-то ми беше вързано към Wi-Fi рутера, почти нямаше да има смисъл от тази статия, защото можех да обменям файлове директно с IE. В случая се налага да ползвам FTP-сървар, който осигурява достъпа. За пример ще кача на телефона музикална класация top 100 на Billboard за 2017 – свалял съм я от някакъв торент.

Необходими инструменти:

  • Baby FTP Server за Windows. Може да се ползва и друг FTP-сървар, но този е толкова прост и стабилен, че няма да отварям дума за други варианти. Дори не се инсталира, а само се накликва едно exe.
  • ES File Explorer File Manager – файлов експлорер за Android, набъкан яко с всякакви инструменти, включително текстов редактор и простички медиа-плеъри. Но най-вече защото има една каруца варианта за връзка с други устройства, като аз ще ползвам FTP-клиента. Това се вижда и на видеото по-долу.

Стартира се exe-то на Baby FTP Server от компютъра, след това виждате кое ви е локалното IP за вътрешната мрежа – през него излъчва FTP-сървъра и ще е необходимо при настройването на FTP-клиента от телефона. FTP-протокола обикновено слуша на порт 21.
След това се инсталира Es File Explorer на телефона (таблета, телевизора или каквато там пущина ползвате) и си стартирате FTP-клиента. Не забелязах някаква разлика в пасивния и активния режим за ftp, така че може би няма значение. Избира се опцията Anonymous, защото BabyFTP е доволно прост, той просто дава достъп до всякакви анонимници и лентяи в локалната мрежа.

Това е видео урока, за това как безжично да си обменяте файлове между телефона и компютъра:

ПС: Shift + RMB – означава да натиснете SHIFT на клавиатурата и след това десния бутон на мишката, така се вика command prompt на Winblows в текущата директория.