Komut dosyası kullanarak videoların gizlenmesi


12

Videomdan nasıl vazgeçebilirim?

Transcode kullanmaya çalışıyorum:

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

Ancak bir segfault neden olur.

Ffmpeg filtreleri kullanmaya çalışılıyor:

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

Ama her zaman bir hata var "Böyle bir filtre yok".

Bunun için basit bir nautilus betiği oluşturmak istiyorum.


Kod dönüştürme segfault olmamalı, seçeneklerle oynamalıdır. Öğreticilere bağlantılar ile askubuntu.com/questions/228841/… adresine yanıt verebilir .
Takkat

Yanıtlar:


20

Şu anda, ffmpegdepodan sadece daha basit deshake filtresini desteklemekle birlikte, daha iyi vidstab filtrelerini desteklememektedir .

Vidstab desteği almak için birkaç seçeneğiniz vardır: derleme veya PPA kullanma.


Derleme

Ayrıca ffmpeg, en son sürümünüzü özelleştirmek veya kullanmak istiyorsanız en iyi seçenektir .

İlk olarak libvidstab'ı derlemeniz veya libvidstab-dev paketini kullanmanız gerekecektir . Şu anda sadece 19.04 Disco Dingo ve daha yenisi bu paketi sunmaktadır. Alternatif olarak, 16.04 Xenial xerus kullanıcıların gelen libvidstab-dev paketi kullanabilirsiniz mc3man PPA ).

Libvidstab'ı derlemek için:

$ 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

Şimdi Ubuntu'da FFmpeg Nasıl Derlenir . ffmpegYapılandırılan adıma geldiğinizde --enable-libvidstab, yapılandırma seçenekleri listesine ekleyin .


mc3man PPA

16.04 Xenial Xerus için FFmpeg akım sürümü artı git PPA :

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

Şimdi çalıştırın ffmpeg2 ("2" yi not edin).


kullanım

Vid.stab kullanım talimatlarına bakın .


Ayrıca bakınız


configffmpeg inşası adım benim için başarısız oluyor ERROR: vidstab not found using pkg-config. Neyi kaçırıyorum ?
uzman

Ayrıca Doug'un PPA'sının libvidstab-dev'i yok
uzman

1
@guettli Olmamalı. Bu bir yazım hatasıydı. Gösterdiğiniz için teşekkürler. Cevabı düzenledim.
llogan

Çok hızlı okuyan herkes için (benim gibi): ffmpeg 2'yi
guettli


3

Diğerlerinin de belirttiği gibi, Doug'un PPA'sının Zesty'yi (17.04) desteklemediğini - 19/08/2017 itibariyle. 17.10 Ekim ayında çıkacağı gibi 16.04 çözümleri gittikçe daha eski olacak. Zesty kullanıcıları için iki olası çözüm:

  1. Daha basit: sadece statik bir yapı kullanın https://www.johnvansickle.com/ffmpeg/
  2. Daha fazla çalışma: vid.stabgithub'dan yükleyin ( https://github.com/georgmartius/vid.stab derleme talimatlarını okuyun, çok basit) ve sonra https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu derleyinffmpeg

Fazla zamanım olmadığından, kusursuz bir şekilde çalışan ilk çözümü seviyorum.

Vidstab ilk geçişi yalnızca 1 çekirdek üzerinde çalışır, ancak GoPro çekimlerim birçok parçada olduğundan,% 100 sistem yükü istersem 4 videoyu aynı anda işleyebilirim. İkinci geçiş 4 çekirdeğin tümünü kullanır.

Dizüstü bilgisayarım i7-6820HK ama her ikisi de sadece yaklaşık 0.12x hızda ilerliyor. Bu yüzden oldukça yavaş, ama sonucun güzel olup olmayacağı umurumda değil.


Güncelleme: Kask takma görüntüleri o kadar titrek görünüyor ki titreklik 10 yeterli değil. Ne yapacağımı bilmiyorum, bu maksimum ...


1
deshakeKask monte GoPro bisiklet çekimleri için denedim ama neredeyse hiçbir şey yapmadı gibi görünüyordu. Deshake, resmi Ubuntu versiyonunun bir parçasıdır ffmpeg, belki de daha iyi çalışacak bazı parametre kombinasyonları vardır, ancak net seslerde okumak vid.stabdaha iyi olacaktır.
Csaba Toth

Evet, vidstab daha iyidir, ancak daha karmaşıktır.
llogan

1

Sanırım birçok kişi (ben dahil) bu soruyu buldu, sadece filtreyle ffmpeg kullanmaya çalışıyor.

Derlemeyle ilgili bu cevaplar harika, ama zaman alıcı ve bazı insanlar için zor olabilir.

Günümüzde, birçok filtre, kodek ve daha fazlasıyla oluşturulmuş Docker görüntüsünü kullanmak için basit bir seçenek var.

Şahsen, bu resmi kullandım https://github.com/jrottenberg/ffmpeg

Deshake filtresi için örnek kullanımı çok basittir:

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

Vidstab filtresi için de:

# 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

Sadece oluşturulan "out.avi" dosyasının rootsahibi olacağını unutmayın ve bu değiştirilmesi gerekir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.