WebM masaüstü kayıtları nasıl yapılır?


13

WebM biçiminde çıktı alabilen bir masaüstü kaydedici / screencast uygulaması ya da oluşturulan .ogv biçimini WebM'ye dönüştürebilen bir program arıyorum gtk-recordmydesktop.

WebM'i ihtiyacım olan format olarak seçtim çünkü bu, kayıtlarımın sona ereceği YouTube tarafından desteklenen tek ücretsiz codec bileşeni gibi görünüyor. Geçmişte bir .ogv yüklemeyi denedim ve sabit yeşil video aldım, bu yüzden benim için çalışmaz.

ABD'de yaşıyorum ve gstreamer0.10-plugins-uglyveya gibi yazılım patent sorunları olabilecek herhangi bir şeyden uzak durmaya çalıştığımın bilincindeyim gstreamer0.10-plugins-bad. Bu nedenle aslında Tibesti ile ilgileniyordum (örneğin), ancak yukarıda belirtilenler gibi paketlerin kurulmasını gerektiriyordu.

Biraz ücretsiz (hem para hem de özgürlük gibi) bir çözüm için arama yaptım, ancak şu ana kadar hiçbir şey bulamadı. Herhangi bir öneri?


konumunuzu söyleyebilir misiniz?
Lincity

@Alaukik, yukarıda ABD'de yaşadığımı belirtmiştim. Hangi eyaleti bilmeniz gerekiyorsa, Michigan'da yaşıyorum. Bundan daha spesifik olmak istemiyorum.
Christopher Kyle Horton

@ Warriorlng64 Hata!
Lincity

Yanıtlar:


6

12.04 LTS

Görünüşe göre ffmpeg artık bu sürümünde recordmydesktop.ogv kayıtlarını WebM'ye dönüştürmek için düzgün çalışmıyor . Artık bakım yapılmadığından avconv, libav-toolspakette ( yerine takıldıysa otomatik olarak yüklenmiş gibi görünüyor) sağlanan yerine kullanılması önerilir ffmpeg.

avconvDönüşümler için kullanılması gereken komut aşağıdakilerden çok farklı değildir ffmpeg:

avconv -i input.ogv output.webm

Bu nedenle, herhangi biri 12.04'te (veya muhtemelen daha sonra) .ogv'den .webm'ye dönüştürmek için yalnızca ücretsiz paketleri kullanmaya çalışırken aynı sorunla karşı karşıya kalırsa, bu şekilde çözdüm. Video kullanarak yeni özellikler veya belge sorunları göstermek için kayıt yapıyorsanız bu yararlı olacaktır.


Son zamanlarda Kazam üzerinde çalışmaya başladım , şimdi VP8 / WebM ve H264 / Matroska formatlarında kayıt yapabiliyorlar. Oneiric ve Precise için PPA yapıları yaptım. Kayıt için gstreamer kullanır ve ffmpeg gerektirmez. Ekstra kodek içermeyen, temiz bir şekilde kurulmuş bir Ubuntu üzerinde çalışmalıdır.
BigWhale

@BigWhale Kodu biraz tararken, yine de bağımlı gibi göründüğünü fark ettimgstreamer0.10-plugins-bad ve gstreamer0.10-plugins-ugly. Bu paketler, yukarıda belirtildiği gibi patent sorunları nedeniyle kaçınmaya çalıştığım codec bileşenlerini içerir. Bu paketlere bağlı olmayan güncellenmiş / alternatif bir yapı mevcutsa, yeni bir yanıtla bana bildirin. Yine de teşekkürler!
Christopher Kyle Horton

Ben alıyorumError while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
jrg

@jrg Bu recordmydesktophata raporunda yayınlanan bir geçici çözüm kullanarak kaydettiğim videoyu dönüştürürken dizüstü bilgisayarımda da benzer bir sorun var . İlginç bir şekilde, aynı videoyu masaüstü makineme götürüp oraya dönüştürdüğümde, sorunsuz bir şekilde çalıştı. Yani ... bu bir hata olabilir, ama henüz bir rapor vermek için yeterli olduğunu bildiğimi sanmıyorum.
Christopher Kyle Horton

1
Bir yan not olarak: FFMpeg hala korunuyor (aslında 1.0 sürümü çıktı), ancak bazı geliştiriciler arasında bir mini savaş oldu ve bu da avconv'a yol açtı. Sadece debian / ubuntu bakıcıları avconv ile yüzleşti. "BU PROGRAM DEPRECATED" mesajı tamamen yanıltıcı. Mevcut durum hakkında buradan bilgi edinin: http://blog.pkh.me/p/13-the-ffmpeg-libav-situation.html .
phoibos

6

Ben böyle şeyler kullanıyorum:

avconv -f x11grab -s 1024x768 -r 24 -i 0:0 -deadline realtime -b 5000000 -minrate 200000 -maxrate 40000000 recording-filename-000.webm

Nerede:

-f x11grab - girişin "yakalama" ekran yakalama zorlar.

-s 1024x768girdi dosyasının çözünürlüğüdür (yakalama alanı olarak da bilinir). Örneğin, masaüstü çözünürlüğüne eşittir. Bundan küçükse, kayıt alanı solda ve üstte olacaktır. Bu örnekte 1024x768 kayıt alanı kullandım.

-r 24- kare hızı. Temel olarak, düzgün bir kayıt görüntüsü vermek için gerçek filmler tarafından kullanılan 23 ila 30 FPS. Ancak screencast için daha düşük bit hızlarında daha iyi görüntü elde etmek için bunu azaltmak uygun olabilir. Oyun ekranı çekimi yapmak için 24 adet kullandım.

-i 0:0kaynak olarak 0: 0 ekranını kullanma ipucudur (cihaz xorg gösterimindedir). Yalnızca 1 monitörünüz ve varsayılan Xorg kurulumunuz varsa, çoğu zaman 0: 0 iyi olur.

-deadline realtime- libvpx için bir ipucudur. Canlı yakalama istiyoruz. Gerçek zamanlı performans istiyoruz. Yani libvpx, VP8'i REALTIME içinde kodlamak için en iyisini yapacaktır. Bunu yapmak için hız kalitesi biraz değişiyor. Verilen bit hızında kalite, gerçek zamanlı olmayan şekilde biraz daha kötü olacaktır. Ancak kodlama hızı hızla yükselirdi. Bu yüzden donanımımda 1024x768 @ 24FPS, yoğun sahneler, herhangi bir kare düşürmeden kırılabilir (güçlü CPU önerilir). Bu örnekte iyi FPS ve oldukça geniş yakalama alanında iyi kalitede canlı yakalama istedim. Bu nedenle, codec bileşeni ile CPU kullanımı bir sorun olabilir. Bu yüzden bu ipucunun iyi sonuçlar için gerçekten ihtiyacı vardı.

-b 5000000- bit / saniye cinsinden hedef bit hızı. Oldukça yoğun sahnelerin az çok iyi resmini elde etmek için 5Mbits kullandım. Codec, videonun ortalama bit hızı hızını bu değere yakın tutmaya çalışacaktır. Bu değer ne kadar düşük olursa, kalite o kadar kötü olur ve dosya küçülür. Belirli kullanımlar için hangi bit hızının iyi olduğu hakkında fikir edinmek için biraz deney yapabilirsiniz. Video paylaşım hizmetleri, aşırsanız videoyu aşağı dönüştürür. Kendi sunucunuzu kullanmak üzereyseniz, trafiğe dikkat etmek size kalmıştır. Eğer aşıyorsanız, resim kalitesi kötü olacaktır. Sizin için en iyisi hakkında fikir edinmek için değeri değiştirmekten çekinmeyin. 5Mbits, görüntünün aşırı sıkıştırıldığını kolayca göremediğiniz oyunlarda yoğun sahnelerin az ya da çok göz alıcı canlı çekimi için tasarlanmıştır. Hareketsiz uygulamaları yakalamak için temelde bundan çok daha azına ihtiyacınız olacaktır.

-minrate200000 - kodek için izin verilen minimum bit hızıdır. Yakalamak istediğiniz şeyin doğasına bağlı olarak, bazen ne olursa olsun makul görünümlü bir kıyafet giymek için minimum bit hızını zorlamak isteyebilirsiniz. Bazen kodek buluşsal yöntemi, bit hızını istediğiniz değerlerin çok altına düşürebilir ve bazı sahnelerde kötü resim verebilir. Bu seçenek, kodek sahnenin basit olduğunu ve bit hızının düşebileceğini düşünse bile kodeklerin minimum bit hızını korumaya zorlar. Bu parametrenin yüksek değeri, codec bileşeninin daha düşük bit hızları kullanmasını engelleyerek dosya boyutunu artırabilir.

-maxrate 40000000- Bu değer yoğun sahnelerde maksimum patlama bit hızını kontrol eder. Bazı sahnelerde daha iyi bir hız elde etmek için daha yüksek hızın zorunlu olduğunu düşünüyorsa, codec bileşeninin istenen ortalamanın çok üzerine çıkmasına izin vermek için gerçekten yüksek bir değer kullandım. Her koşulda iyi görünümlü bir resim elde etmek için bunu yeterince yüksek ayarlamak istenir (40Mbits BlueRay benzeri bir hızdır ve hile yapar). Öte yandan, kendi sunucunuzu kullanarak akış yapmak üzereyseniz, yoğun sahnelerde bazı resim kalitesi pahasına bu değeri düşürmeniz gerekir. Başka bir sunucu istenen patlama bit hızı ile başa çıkamayarak kullanıcılara gerçek zamanlı olarak teslim edemez. Sonra oyuncu arabellek yetersizliği ile karşılaşır (bu sinir bozucu). Video paylaşım hizmetleri kendi başlarına ilgilenecek ve genellikle videoyu resim kalitesi pahasına daha düşük parametrelere indirecektir.

recording-filename-000.webm- çıktının dosya adıdır. .Webm uzantısını kullanırsanız, ffmpeg / avconv, WEBM'yi istediğinizi anlayacak kadar akıllıdır. Bu basit - avconv dosya adından istenen formatı tahmin eder. Yani .WEBM dosyaları WEBM'dir.

İşte bu - bu komut ekran kaydını webm dosyasına yönlendirir. Ekstra dönüşüm gerekmez ve libvpxolabildiğince hızlı olması ima edilir. Ses girişi için spesifikasyon olmadığı için ses yok. İstediğiniz şey olabilir veya olmayabilir. Ses için ses akışı için de giriş kaynağı belirtmeniz gerekir.

Not: Bu biraz fazla karmaşık görünebilir, ancak günün sonunda bir boyutun hepsine uymayacağını anlayabilirsiniz. Bu nedenle, her durumda iyi görünen bir resim elde etmek için, codec bileşeninin bazı tutamaçlarını kullanmak ve bunları ayarlamak isteyebilirsiniz. Ffmpeg, ihtiyacınız olabilecek tüm tutamaçları ve bundan çok daha fazlasını size sunar. Video dönüştürme ve kodlamanın ağır bir silahı. Bu örnek, daha fazla veya daha az gelişmiş kodlama yapmak isteyenler için iyi bir nokta ve gerçekten iyi görünümlü sonuçlar elde etmek için biraz denemeye hazır.


6

Ctrl+ Shift+ Alt+ RTuş bileşimine basarak Ubuntu 11.10 + GNOME Kabuğu'nda WebM kayıtları yapabilirsiniz .

Kombine ilk kez bastığınızda, bildirim alanında kaydın başladığını belirten kırmızı bir daire belirir. 2. kez bastığınızda, kırmızı daire kaybolur ve kaydınız ${HOME}/Videosdizinde olur.

Daha fazla bilgi için buraya tıklayın: Gnome Shell Cheat Sheet: Ekran kaydı


Başlangıçta bunu sorduğum zaman, GNOME Kabuğum yoktu. Ama onu jhbuild10.10'dan derlerdim ve 11.10 sistemlerime kurdum ve bunun da işe yaradığını biliyorum. Bu yanıtı eklediğiniz için teşekkürler!
Christopher Kyle Horton

Geçerli sürümde (16.04 kullanılarak) videolar ~/Videosdosya adı ile saklanır Screencast from {date} {time}.webm.
Kariem

3

Bunu yapmak için transmageddon App kullanın. Gstreamer tabanlı uygulaması

sudo apt-get install transmageddon veya buraya tıklayın transmageddon yükleyin


Transmageddon için bağımlılıkları sudo apt-get install yoluyla inceledim ve yukarıda bahsettiğim gstreamer-plugins-çirkin paket listeye dahil edildi. Yine, bunun benim için tamamen yasal olup olmadığından emin değilim ve bu benim için önemli.
Christopher Kyle Horton

2

Kaydetmek için Kazam kullanın .

Çıktı mkv'dir ve Youtube ile iyi çalışır. Tek sorun Kazam bir süredir güncellenmiyor gibi görünüyor.

BTW Doğru bir şekilde anlarsam Tibesti'yi kullanmak güvende olmalısınız, elbette bazı dev uzaylı uzay gemilerinin sizi kaçırdığı ve bir yazılım parçası kullandığınız için işkence yapmadığınızdan kesinlikle paranoyak değilseniz ...


Kazam, yasal olarak kullanıp kullanamayacağımdan emin olamadığım sudo apt-get kurulumu sırasında ffmpeg kurulumunu ister.
Christopher Kyle Horton

@ Warrioring64, ffmpeg'in yasadışı olduğunu sanmıyorum ...
RolandiXor

Endişelenmem gereken bir şey, çünkü ABD'deyim ve burada yazılım patentleri uygulanıyor. Burada ne aldığımı anlamanıza yardımcı olabilirse lütfen Wikipedia'da bu bölüme bakın .
Christopher Kyle Horton

2
@ Warrioring64 - Ubuntu'da bulunan sürüm bu kodeklerden arındırıldı.
RolandiXor

Tamam ... ama verilen bağımlılıklara baktığımda, biraz daha fazla araştırmadan bana sorun yaratabilecek olan libavcodec-extra-52 ve libavutil-extra-52'yi de buldum. Biraz zor gözükürsem özür dilerim, ancak bu tür bir yazılımı kullanmak için gerçekçi bir şekilde yakalanmasam bile, yine de vicdanımda olmasını istemem.
Christopher Kyle Horton

2

11.10 ve öncesi

ffmpegek codec bileşenlerine gerek kalmadan .ogv dosyasını .webm'ye doğrudan dönüştürmek için kullanılabilir. Başka bir yanıta yapılan bir yorumda belirtildiği gibi , ffmpegUbuntu tarafından sağlanan sürüm, yazılım patent sorunları oluşturabilecek codec'lerle varsayılan olarak gelmez.

Bu bir komut satırı programıdır; kullanmak için bir terminal penceresi açın ve şunu girin:

ffmpeg -i input.ogv output.webm

Evet. Ben sadece medibuntu repo olmadan ffmpeg yükledim ve paketlerin tüm ücretsiz sürümleri çekti ve ffmpeg -i file.wmv -f webm -sameq file.webm
duffydack

1

imo, Videoları WebM'ye dönüştürmenin en iyi yolu Firefogg'dur .

  • Bu bir firefox eklentisidir (yani firefox gibi çoklu platform aracıdır)
  • WebM biçimine sıkıştırır (açık Kaynak - Web uyumlu codec bileşeni)
  • Birden fazla kodlama boyutu sunar (en iyi sıkıştırma oranını bulmak gerçekten uygundur)
  • GERÇEKTEN verimli sıkıştırma oranı (en az H264 kadar)
  • Kullanımı süper kolay

resim açıklamasını buraya girin

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.