Czy ktoś wie o obecnym, aktywnym rozwiązaniu do kodowania filmów x264 na wielu komputerach (przez sieć) w celu zwiększenia kodowania FPS?
Punkty Brownie dla platform wieloplatformowych i open source, ale dla pewności wszyscy zwykle używam systemu Windows.
Programy, o których słyszałem i dlaczego nie uważam ich za odpowiednie:
- x264farm : Nie aktywnie rozwijany. Dobry interfejs, ale nie obsługuje kodowania dwuprzebiegowego i kończy się niepowodzeniem w przypadku nowszych wersji x264.
- ELDER : Znów nie aktywnie rozwijany, ale moim problemem było to, że nie działał z nowymi kompilacjami x264 i był bardzo trudny do skonfigurowania (czytaj: losowo przestał działać).
Chociaż absolutnie nie potrzebuję programu, który jest aktywnie rozwijany, chciałbym taki, który obsługuje kodowanie dwuprzebiegowe i działa z nowymi (er) kompilacjami x264 .
Informacje dodatkowe : Do tej pory zaoferowałem (i nagrodziłem!) Dwie osobne nagrody za to pytanie, odkąd po raz pierwszy opublikowałem je ponad dwa lata temu i nadal nie znalazłem rozwiązania tego problemu. W zasadzie szukam prostego programu, który pozwala mi kodować filmy x264 z wykorzystaniem mocy obliczeniowej wielu komputerów podłączonych przez sieć LAN. Ponadto byłoby miło, gdyby działał z nowymi (er) kompilacjami x264 i wspierał kodowanie dwuprzebiegowe.
Jeśli w dowolnym momencie ktoś ma zaktualizowaną odpowiedź lub nowe rozwiązanie tego problemu, proszę opublikować ją, a zostanie ona rozważona.
Aktualizacja 2016 :
Po dużej części mojego doświadczenia w pracy z komputerem / wizją maszynową zdałem sobie sprawę, że koszty ogólne związane z dużą ilością współdzielonych danych / pamięci oraz potencjalnym wąskim gardłem, jakie stanowi, mogą przewyższać potencjalne korzyści.
Chociaż nadal chciałbym znaleźć coś, co pozwoliłoby mi wykorzystać bezczynną moc obliczeniową kilku urządzeń, na razie nowoczesne kodery oparte na GPGPU są znacznie lepszym podejściem, jeśli potrzebujesz ulepszonego / kodowania w czasie rzeczywistym. Właśnie to zapewnia większość platform kodowania wideo w chmurze (co stanowi kolejną alternatywę dla SaaS lub przetwarzania w chmurze), choć na większą skalę.
Odpowiedzi:
Możesz renderować oddzielne fragmenty wideo i użyć VirtualDub, aby połączyć je wszystkie razem w trybie kopiowania (w którym nie koduje). To nie jest rzeczywiste kodowanie rozproszone ani nic, ale najprostsze rozwiązania czasami działają najlepiej.
źródło
Jest w wersji beta, ale działa. To nie jest tak proste, ale działa. Jest oparty na systemie Windows i bezpłatny.
Elder od niektórych facetów doom9
źródło
Możesz także spróbować użyć tego, jego równoległego / rozproszonego oprogramowania do kodowania dla systemu Windows i działa dobrze i ładnie skaluje się.
Spróbuj googling dla kodera równoległego xcode.
Te linki powinny zawierać więcej informacji.
źródło
W przypadku użytkowników Final Cut Studio (tylko Mac) składnik QuickTime x264 działa wyjątkowo dobrze, gdy jest używany z klastrem utworzonym za pomocą QMaster. Załaduj swój film do Kompresora i gotowe. W testach stwierdziłem przyzwoity wzrost prędkości, szczególnie podczas pracy na wspólnym punkcie przechowywania.
źródło
W systemie Mac OS X 10.5 (nie jestem pewien zgodności z wersją 10.6) istniał VisualHub , który pozwalałby na konfigurację farmy sieci w sieci lokalnej. Teraz jest wycofany i ReduxEncoder pojawił się jako zamiennik, ale nie mogę znaleźć opcji na to.
źródło
Jestem WIELKIM fanem edycji wideo Sony Vegas dla Windows ... i jest funkcja o nazwie Network Render. :) Mniam.
Przepływ pracy Sony Vegas
EDYCJA: Nie jestem pewien, czy jest to realne rozwiązanie, ale zamiast próbować znaleźć aplikację do kodowania wideo obsługującą renderowanie sieciowe, próbowałem znaleźć oprogramowanie, które umożliwi dowolnej aplikacji skorzystanie z przetwarzania rozproszonego. I znalazłem to - IAIDataShareServer .
Wygląda dość potężnie, a wyniki zamieszczone w próbce są naprawdę świetne. Jeśli masz zamiar spróbować, daj nam znać, jak to działa?
EDYCJA 2: IAIDataShareServer wydaje się po prostu instruować maszyny do uruchamiania poszczególnych zadań. W tym zakresie starałem się pozyskiwać inne rozwiązania przetwarzania rozproszonego i wymieniałem kilka obiecujących.
źródło
faktem jest, że NIK nie jest na świecie. Deweloper na świecie nie zadał sobie trudu, aby napisać i przesłać rozproszone łatki klient / serwer do kodowania TCP: IP / UDP dla aktualnego x264, na dzień 1745 patrz x264.nl/
ogólny model klient / serwer jest dobrze zrozumiany, podobnie jak czysta baza kodu x264, a prośba o wyjaśnienie dowolnego kodu x264 jest prostą sprawą, aby dołączyć do kanału IRC dev x264 i zapytać, w ciągu kilku minut zwykle będziesz miał klucz x264 Dev lub dwie odpowiedzą na twoje pytanie, jak działa ta sekcja kodu, a nawet dowiedz się, w jaki sposób możesz ponownie napisać swój ewoluujący kod, aby lepiej pasował do x264 (i x262 nowy koder Mpeg2 oparty na światowej klasy frameworku x264, nad którym pracujesz teraz) model.
Więc jeśli jesteś programistą, najlepszą rzeczą, jaką możesz zrobić dla przyszłości jakości i zawodu Rozproszone kodowanie wideo w formacie 32/64 bit x264 jest napisanie tych wymaganych podstawowych poprawek klienta / serwera, aby utworzyć jedną instancję x264 lub osobnego interfejsu WWW / GUI interfejs aplikacji z tym nowym kodem API klient / serwer x264, który piszesz, aby aktywnie szukać, a także przypisywać i przekazywać w locie osobne sekcje kodowania pojedynczego wideo do dowolnego nowego pasującego zarządzanego kodu klienta x264, który również piszesz.
Twoi nowi klienci / serwer naprawdę rozproszone łaty kodujące nie muszą nawet być największym, po prostu podstawowym, ale działającym iw pełni działającym kodem C, który jest testowany i używany doom10.org/index.php?action=unread
, ponieważ jest jedna rzecz, którą deweloper x264 uwielbia robić, i to bierze istniejący powolny kod C i pisze zoptymalizowane wersje, sekcja po sekcji, ale musisz faktycznie przesłać (łatki mile widziane) rzeczywisty kod beta najpierw przeciwko najnowszy oddział OC
warto przyjrzeć się temu i faktycznie staramy się kodować te serwery x264 do wielu łat klientów x264 dzisiaj, ponieważ x264 właśnie ma możliwość kodowania głębokości 10 bitów (co oznacza wysoką jakość High, High 10, High 4: 2: 2 H. Dodano 264 profili intensywnych obliczeń dla wszystkich za darmo z dodatkiem x264).
wkrótce zostanie zoptymalizowany pod kątem dodatkowej prędkości dzięki montażowi http://mailman.videolan.org/pipermail/x264-devel/2010-October/007858.html
ale nawet jedna 8-rdzeniowa maszyna będzie miała problemy z zapewnieniem najwyższej jakości wyjścia w rozsądnym czasie dzięki 1080P, a wkrótce 2K i 4K super high Def itp., naprawdę łatwa w konfiguracji i użyciu rozproszona natywna opcja kodowania x264 / H.264 jest tylko łata lub dwie dalej So.
jeśli jesteś deweloperem, PROSZĘ nie czekaj, zrób to dzisiaj.
źródło
Możesz rzucić okiem na klaster kodowania multimediów :
Inne podejście jest oferowane dla Nvidii przez Badaboom (39,99 USD z wersją próbną), również sprawdzone tutaj :
W ten sam sposób istnieje również Avivo Video Converter dla ATI Radeon, opisany w wikipedii , chociaż może to trochę potrwać, aby go uruchomić.
źródło
Chociaż może to być trochę przesada, Rhozet Carbon Server może połączyć wiele instancji Carbon Codera do opisanej pracy.
Strona internetowa dla Rhozet Carbon Server
źródło