Удаление видео с использованием сценария

Как я могу изменить свое видео?

Я пытаюсь использовать транскод:

transcode  -J stabilize --mplayer_probe -i "input.MTS"

Но это вызывает ошибку segfault.

Попытка использовать фильтры ffmpeg:

ffmpeg -i "input.MTS" -vf vidstabdetect=shakiness=5:show=1 out.avi
ffmpeg -i "input.MTS" -vf deshake out.avi

Но всегда появляется ошибка «Нет такого фильтра».

Я хочу создать для этого простой скрипт наутилуса.

11
задан 8 June 2015 в 17:55

3 ответа

В настоящее время ffmpeg из репозитория поддерживает только более простой фильтр deshake , но не поддерживает лучшие фильтры vidstab .

У вас есть несколько вариантов получения поддержки vidstab: скомпилируйте или используйте PPA.


Компиляция

Это лучший вариант, если вы также хотите настроить ffmpeg или использовать последнюю версию.

Сначала вам нужно будет скомпилировать libvidstab или использовать пакет libvidstab-dev . В настоящее время этот пакет предоставляется только 19.04 Disco Dingo и новее. Кроме того, 16.04 пользователи Xenial Xerus могут использовать пакет libvidstab-dev из mc3man PPA ).

Чтобы скомпилировать libvidstab:

$ sudo apt-get install build-essential cmake
$ mkdir ~/ffmpeg_sources ~/ffmpeg_build
$ cd ~/ffmpeg_sources
$ wget -O https://github.com/georgmartius/vid.stab/archive/master.zip
$ unzip master.zip
$ cd vid.stab-master
$ cmake -DCMAKE_INSTALL_PREFIX:PATH=~/ffmpeg_build .
$ make
$ make install

Теперь следуйте Как скомпилировать FFmpeg в Ubuntu . Когда вы перейдете к шагу, на котором настроено ffmpeg, добавьте --enable-libvidstab в список параметров конфигурации.


mc3man PPA

FFmpeg текущий выпуск плюс git PPA для 16.04 Xenial Xerus:

sudo add-apt-repository ppa:mc3man/ffmpeg-test
sudo apt-get update
sudo apt-get install ffmpeg-static

Теперь запустите ffmpeg2 (примечание "2").


Использование

См. инструкции по использованию vid.stab .


Также см.

0
ответ дан 8 June 2015 в 17:55

Как уже упоминалось выше, PPA Дуга не поддерживает Zesty (17.04) - по состоянию на 19.08.2017. Поскольку 17.10 выйдет в октябре, 16.04 решения будут все более и более устаревшими. Два возможных решения для пользователей Zesty:

  1. Проще: просто используйте статическую сборку https://www.johnvansickle.com/ffmpeg/
  2. Дополнительная работа: установите vid.stab из github ( https://github.com/georgmartius/vid.stab прочитайте инструкции по компиляции, очень просто), а затем скомпилируйте ffmpeg https: // trac .ffmpeg.org / wiki / CompilationGuide / Ubuntu

Поскольку у меня не так много времени, мне нравится первое решение, работавшее безупречно.

Первый проход vidstab работает только на 1 ядре, но, поскольку мои кадры GoPro состоят из множества блоков, я мог бы обрабатывать 4 видео одновременно, если бы я хотел 100% загрузки системы. Второй проход использует все 4 ядра.

Мой ноутбук i7-6820HK, но оба пропускают только прогресс со скоростью примерно 0,12x. Так что это довольно медленно, но мне все равно, будет ли хороший результат.


Обновление: мои кадры крепления шлема кажутся настолько шаткими, что шаткости 10 недостаточно. Я не знаю, что делать, это максимум ...

0
ответ дан 8 June 2015 в 17:55

Я предполагаю, что многие люди (меня включенный) нашли этот вопрос, пытаясь только использовать ffmpeg с фильтром.

Те ответы о компиляции являются большими, но это является трудоемким и может быть трудным для некоторых людей.

В наше время существует простая опция использовать изображение Докера, которое уже создается со многими фильтрами, кодеками и т.д.

Лично, я использовал это изображение https://, Демонстрационное использование github.com/jrottenberg/ffmpeg

очень просто для фильтра deshake:

docker run -v $PWD:/temp/ \
    jrottenberg/ffmpeg \
    -i /temp/input.MTS \
    -vf deshake \
    /temp/out.avi

Также для фильтра vidstab:

# create vectors from input file
docker run -v $PWD:/temp/ jrottenberg/ffmpeg \
    -i /temp/input.MTS \
    -vf vidstabdetect=stepsize=6:shakiness=8:accuracy=9:result=/temp/transform_vectors.trf -f null -

# process file using vectors from step 1
docker run -v $PWD:/temp/ jrottenberg/ffmpeg \
    -i /temp/input.MTS \
    -vf vidstabtransform=input=/temp/transform_vectors.trf:zoom=1:smoothing=30,unsharp=5:5:0.8:3:3:0.4 \
    /temp/out.avi

Просто ум, который создал файл "out.avi", будет иметь root владелец, и это должно быть изменено.

1
ответ дан 8 October 2019 в 17:59

Другие вопросы по тегам:

Похожие вопросы: