
Собственно, вот сам ролик, продолжительностью чуть более 10-ти минут. Поскольку вряд ли вам будут интересны мои семейные записи, в этом видео я оставил только улицы Воронежа.
Просматривая эту старую запись с удивлением обнаружил обилие общественного транспорта в городе. Это сейчас весь город захвачен маршрутками, трамвайная сеть уничтожена, больших автобусов ("гармошкой") тоже нет. А вот 20 лет назад здесь можно было встретить, например, Татру Т4.

Или, скажем, КТМ-5.

С автобусами большой вместимости ("гармошкой") тоже всё в порядке.

До января 2008 года трамваи ходили по уникальному двухэтажному Северному мосту! Вот он.

Вот как это выглядело (фото взято с http://www.wikella.ru/post126900371/).

Вообще, очень сложно поверить, что когда-то пятая трамвайная сеть в Союзе ныне уничтожена и Воронеж стал единственным в Европе миллионником без трамвая! Но к сожалению, это случилось. Вот такая грусть.
Хорошо, переходим ко второй части поста, а именно к склеиванию видео файлов. Мой способ бесплатный, но требует некоторых усилий в первый раз. Зато потом всё можно делать быстро по шаблону. Итак, для работы нам понадобится установить:
1) Древний видеоредактор VirtualDub
http://www.virtualdub.org/download.html
2) K-Lite Codec Pack Full (возможно он у вас и так стоит)
https://www.codecguide.com/download_k-lite_codec_pack_full.htm
3) Движок для редактирования видеофайлов AviSynth
http://avisynth.nl/index.php/Main_Page
Теперь, допустим, у вас есть два видео файла MOVI0000.avi и MOVI0001.avi и вы хотите их склеить. Тогда:
1. В той же папке, где находятся эти видеофайлы создаём файл с расширением *.avs. Например, out.avs. Открываем этот файл Блокнотом и вставляем туда следующий текст:
src1=DirectShowSource("MOVI0000.avi")
src2=DirectShowSource("MOVI0001.avi")
src1+src2
2. Сохраняем файл out.avs и открываем его с помощью VirtualDub. Если не возникло никаких ошибок, то в VirtualDub уже можно будет проигрывать "склеенную" версию. Осталось лишь сохранить готовый ролик. Для этого в VirtualDub заходим в меню Video->Compression. Появится окошко со списком кодеков (окошко слева). Выбираем x.264 и нажимаем OK. Если нужно, можно настроить качество сжатия (Configure->RateFactor). Вместо x264 можно использовать и XVid - Ютуб его тоже понимает.

3. Заходим в File->Save as avi и сохраняем результирующий файл. Собственно, на этом все премудрости заканчиваются.
У AviSynth много возможностей:
1. Например, если нам нужно обрезать склеенное видео, то наш out.avs будет таким:
2. Сохраняем файл out.avs и открываем его с помощью VirtualDub. Если не возникло никаких ошибок, то в VirtualDub уже можно будет проигрывать "склеенную" версию. Осталось лишь сохранить готовый ролик. Для этого в VirtualDub заходим в меню Video->Compression. Появится окошко со списком кодеков (окошко слева). Выбираем x.264 и нажимаем OK. Если нужно, можно настроить качество сжатия (Configure->RateFactor). Вместо x264 можно использовать и XVid - Ютуб его тоже понимает.

3. Заходим в File->Save as avi и сохраняем результирующий файл. Собственно, на этом все премудрости заканчиваются.
У AviSynth много возможностей:
1. Например, если нам нужно обрезать склеенное видео, то наш out.avs будет таким:
src1=DirectShowSource("MOVI0000.avi")
src2=DirectShowSource("MOVI0001.avi")
src3=src1+src2
src3.Crop(100,100,320,240)
В последней строчке написаны координаты левого/верхнего и правого/нижнего углов нового обрезанного кадра внутри исходного.
2. Если нужно изменить разрешение склеенного видео, то пишем так:
Если возникнут вопросы - пишите комментарии.
В последней строчке написаны координаты левого/верхнего и правого/нижнего углов нового обрезанного кадра внутри исходного.
2. Если нужно изменить разрешение склеенного видео, то пишем так:
src1=DirectShowSource("MOVI0000.avi")
src2=DirectShowSource("MOVI0001.avi")
src3=src1+src2
src3.LanczosResize(1280,720)
В последней строчке в скобках указываются ширина и высота нового кадра.
3.Если нужно и обрезать и потом изменить разрешение, то пишем так:
Надеюсь, идея понятна. Тут всё довольно интуитивно (по крайней мере мне). Вообще, AviSynth может много всего делать. Вот список его возможностей: http://avisynth.nl/index.php/Internal_filters
В последней строчке в скобках указываются ширина и высота нового кадра.
3.Если нужно и обрезать и потом изменить разрешение, то пишем так:
src1=DirectShowSource("MOVI0000.avi")
src2=DirectShowSource("MOVI0001.avi")
src3=src1+src2
src3=src3.Crop(100,100,320,240)
src3.LanczosResize(1280,720)Надеюсь, идея понятна. Тут всё довольно интуитивно (по крайней мере мне). Вообще, AviSynth может много всего делать. Вот список его возможностей: http://avisynth.nl/index.php/Internal_filters
Если возникнут вопросы - пишите комментарии.