it-swarm.asia

Apakah ada cara untuk mendistribusikan pekerjaan penyandian x264 di banyak komputer (untuk meningkatkan kecepatan penyandian)?

Adakah yang tahu solusi aktif saat ini untuk menyandikan video x264 di banyak komputer (melalui jaringan) untuk meningkatkan encoding FPS?

Brownie menunjuk untuk cross-platform dan open source, tetapi supaya kalian semua tahu, saya biasanya menggunakan Windows.


Program yang telah saya dengar, dan mengapa saya tidak percaya mereka cocok:

  • x264farm: Tidak dikembangkan secara aktif. Antarmuka yang bagus, tetapi tidak mendukung pengkodean dua-pass, dan gagal dengan versi x264 yang lebih baru.
  • ELDER: Sekali lagi, tidak dikembangkan secara aktif, tetapi masalah saya adalah bahwa itu tidak bekerja dengan build x264 baru, dan itu sangat sulit untuk dikonfigurasikan (baca: berhenti bekerja secara acak).

Walaupun saya tidak benar-benar membutuhkan program yang sedang dikembangkan secara aktif, saya ingin yang mendukung pengodean dua-pass, dan bekerja dengan new (er) x264 builds.


Informasi tambahan: Sejauh ini, saya telah menawarkan (dan menghadiahkan!) Dua hadiah terpisah untuk pertanyaan ini sejak saya pertama kali mempostingnya lebih dari dua tahun yang lalu, dan saya masih belum menemukan solusi untuk masalah ini . Apa yang saya cari pada dasarnya adalah program sederhana yang memungkinkan saya untuk menyandikan video x264 menggunakan kekuatan pemrosesan beberapa komputer yang terhubung melalui LAN. Selain itu, akan lebih baik jika bekerja dengan build (er) x264 yang baru, dan mendukung pengkodean dua-pass.

Jika suatu saat seseorang memiliki jawaban yang diperbarui, atau solusi baru untuk masalah ini, silakan posting dan akan dipertimbangkan.


Pembaruan 2016:

Setelah banyak pengalaman kerja saya dengan visi komputer/mesin, saya menyadari bahwa overhead yang terkait dengan sejumlah besar data/memori bersama, dan potensi kemacetan yang ada, mungkin lebih besar daripada manfaat potensial.

Walaupun saya masih ingin menemukan sesuatu yang akan memungkinkan saya untuk memanfaatkan kekuatan komputasi idle dari beberapa perangkat, untuk saat ini, encoder berbasis GPGPU modern adalah pendekatan yang jauh lebih baik jika Anda memerlukan peningkatan/real-time encoding. Inilah yang disediakan oleh sebagian besar platform encoding video berbasis cloud (yang merupakan alternatif lain jika Anda menyukai SaaS atau komputasi awan), meskipun dalam skala yang lebih besar.

29
Breakthrough

Anda bisa membuat potongan video yang terpisah, dan menggunakan VirtualDub untuk menjahit semuanya bersama-sama dengan mode Salinnya (di mana tidak ada pengkodean). Ini bukan pengkodean terdistribusi nyata atau apa pun, tetapi solusi paling sederhana terkadang bekerja paling baik.

6
Ivan Vučica

Ini beta, tetapi fungsional. Ini tidak sesederhana itu, tetapi berhasil. Itu IS berbasis windows dan gratis.

ELDER dari beberapa orang Doom9

4
Keck

Anda juga dapat mencoba menggunakan ini, ini adalah perangkat lunak pengkodean paralel/terdistribusi untuk windows dan berfungsi dengan baik dan skala juga baik.

Coba googling untuk xcode Parallel encoder.

Tautan ini harus memberikan informasi lebih lanjut.

http://superscalar.pbworks.com/

3
dxblitzx

Untuk Mac OS X 10.5 (saya tidak yakin kompatibilitas untuk 10.6) dulu ada VisualHub , yang akan memungkinkan Anda untuk mengatur peternakan grid di jaringan lokal Anda. Sekarang ini dihentikan dan ReduxEncoder muncul sebagai pengganti, tetapi saya tidak bisa menemukan opsi untuk itu.

2
Tiago Veloso

Untuk pengguna Final Cut Studio (hanya Mac), komponen QuickTime x264 bekerja dengan sangat baik ketika digunakan dengan cluster yang dibuat menggunakan QMaster. Muat film Anda ke dalam Kompresor dan lanjutkan. Dalam tes saya menemukan peningkatan kecepatan yang layak terutama ketika bekerja pada titik penyimpanan bersama.

2
Chealion

Saya penggemar berat Sony Vegas untuk pengeditan video Windows ... dan ada fitur yang disebut Network Render. :) Yums.

Sony Vegas Workflow

EDIT: Tidak terlalu yakin apakah ini merupakan solusi yang layak, tetapi alih-alih mencoba mencari aplikasi pengkodean video yang mendukung render jaringan, saya mencoba mencari sebuah perangkat lunak yang memungkinkan aplikasi apa pun untuk memanfaatkan komputasi terdistribusi. Dan saya menemukan ini - IAIDataShareServer .

Ini terlihat sangat kuat, dan sampel yang diposting hasilnya sangat bagus. Jika Anda akan mencobanya, beri tahu kami cara kerjanya?

EDIT2: IAIDataShareServer tampaknya hanya menginstruksikan mesin untuk menjalankan tugas individu. Sejauh itu, saya telah mencoba mencari sumber untuk solusi komputasi terdistribusi lainnya, dan daftar beberapa yang menjanjikan.

  1. JPPF
  2. XOREAX
  3. DCEZ (Yang ini terlihat bagus)
2
caliban

Anda mungkin melihat Media Encoding Cluster :

Media Encoding Cluster adalah Solusi Encoding Cluster Open Source pertama yang ditulis dalam C/C++ untuk Media (Video dan Audio) yang didistribusikan.

Media Encoding Cluster adalah encoder video yang dapat diperluas, yang menggunakan grid peer-to-peer yang ringan untuk meningkatkan kekuatan pemrosesan PC biasa dengan tujuan mendistribusikan encoding video yang sangat terkompresi, misalnya MPEG4 dan H.264

Ini mendistribusikan Potongan Video melalui Jaringan ke Node Klien dan memparalelkan Tugas Pengkodean untuk satu File bahkan lebih dari satu Komputer untuk mengurangi Waktu Pengodean per File.

Pendekatan lain ditawarkan untuk Nvidia oleh Badaboom ($ 39,99 dengan uji coba), juga ditinjau di sini :

Badaboom Elemental menggunakan antarmuka CUDA Nvidia untuk melakukan banyak pekerjaan kasar DVD ripping dengan menggunakan GPU, bukan CPU lama apak Anda.

Dengan cara yang sama, ada juga Avivo Video Converter untuk ATI Radeon, yang dijelaskan dalam wikipedia , meskipun mungkin perlu beberapa upaya untuk membuatnya berfungsi.

1
harrymc

fakta sederhananya adalah TIDAK ada Pengembang di dunia yang sampai saat ini repot-repot menulis dan mengirimkan TCP yang didistribusikan: tambalan klien/server penyandian IP/UDP generik untuk x264 saat ini, pada hari ini 1745 lihat x264.nl/

model generik klien/server dipahami dengan baik, seperti basis kode x264 yang bersih, dan meminta klarifikasi kode x264 apa pun adalah soal bergabung dengan saluran x264 dev IRC dan bertanya, dalam beberapa menit Anda akan biasanya memiliki satu atau dua kunci x264 menjawab pertanyaan Anda dalam cara kerja bagian kode itu, dan bahkan mendapatkan ide praktis tentang bagaimana Anda dapat menulis ulang kode Anda yang sedang berkembang agar lebih sesuai dengan x264 (dan x262 encoder Mpeg2 baru berdasarkan dunia x264 kerangka kerja kelas sedang dikerjakan sekarang) model.

Jadi jika Pengembang Anda maka hal terbaik yang dapat Anda lakukan untuk masa depan kualitas dan profesi 32/64 bit x264 encoding video terdistribusi adalah benar-benar menulis ini klien dasar/server patch yang diperlukan untuk membuat satu instance x264 atau antarmuka aplikasi web/GUI terpisah dengan kode API x264 klien/server baru yang Anda tulis, untuk secara aktif mencari, dan menetapkan serta meneruskan bagian penyandian terpisah dari satu kode video ke kode klien x264 terkelola baru yang cocok yang juga Anda tulis.

klien/server baru Anda benar-benar didistribusikan, tambalan dasar encode bahkan tidak perlu menjadi yang terbaik, hanya dasar tetapi berfungsi dan kode C berfungsi penuh yang akan diuji dan digunakan Doom10.org/index.php?action=unread

, karena ada satu hal yang tampaknya suka dilakukan oleh pengembang x264, dan itu mengambil kode C yang ada lambat dan menulis versi yang dioptimalkan itu, bagian demi bagian, tetapi Anda harus benar-benar mengirimkan (tambalan selamat datang) kode beta aktual pertama terhadap cabang terbaru OC

itu harus layak dilihat, dan benar-benar membuat upaya untuk mengkodekan server x264 ini ke banyak klien x264 yang ditambal saat ini karena x264 baru saja memiliki kemampuan pengkodean kedalaman 10bit (yang berarti kualitas tinggi Tinggi, Tinggi 10, Tinggi 4: 2: 2 H. 264 profil intensif komputasi sekarang tersedia untuk semua orang secara gratis dengan x264) ditambahkan.

untuk dioptimalkan untuk kecepatan ekstra dengan Majelis segera http://mailman.videolan.org/pipermail/x264-devel/2010-October/007858.html

tetapi bahkan satu mesin 8 inti akan berjuang untuk memberikan output kualitas tertinggi dalam waktu yang wajar dengan 1080P, dan segera 2K dan 4K Def sangat tinggi dll, sangat mudah untuk mengatur dan menggunakan opsi enkode x264/H.264 didistribusikan asli hanya satu atau dua tambalan Jadi.

jika seorang dev, tolong jangan tunggu, lakukan hari ini.

1
distributed x264

Meskipun mungkin sedikit saran berlebihan, Server Karbon Rhozet dapat menggabungkan beberapa contoh Carbon Coder untuk pekerjaan yang telah Anda jelaskan.

Situs web untuk Server Karbon Rhozet

Beberapa node Carbon Coder dapat dikonfigurasi sebagai transcoding farm, dikendalikan oleh satu atau lebih Server Carbon. Carbon Server memungkinkan pemrosesan otomatis tugas transcoding volume tinggi, kegagalan server yang dikendalikan oleh simpul Carbon Coder, serta mengelola distribusi pekerjaan, penentuan prioritas pekerjaan, keseimbangan beban, transfer FTP, pemantauan status, dan pemberitahuan pekerjaan.

1
edusysadmin