Nagrywanie wideo w Linuxie

Użytkownicy systemu Linux mają naprawdę szerokie pole manewru, jeśli chodzi o nagrywanie wideo. Dostępnych jest wiele narzędzi, które pozwalają na wygodne nagrywanie całego pulpitu lub też jego fragmentu. We wpisie przedstawiam pokrótce kilka programów, które pozwalają na nagranie dowolnego obszaru. Jest jednak jeden program, który mocno wyróżnia się na tle konkurencji i jest dostępny w wersji na Linuxa. Mam tutaj na myśli program OBS, który jest prawdziwym kombajnem z naprawdę szerokim zakresem możliwości, jeśli chodzi o nagrywanie okien systemowych oraz aplikacji pełnoekranowych. Na nim właśnie skupiam się w głównej mierze i przedstawiam najważniejsze ustawienia.

Dostępne narzędzia

W systemach Linux mamy do dyspozycji kilka narzędzi do nagrywania ekranu – SimpleScreenRecorder, Kazam, Blue Recorder, Kooha czy nawet narzędzia wbudowane w dystrybucje (np. Screen Recorder dostępny po wciśnięciu przycisku PrintScreen w dystrybucjach pracujących pod kontrolą interfejsu graficznego GNOME). Wszystkie te narzędzia mają jedną wspólną cechę – nagrywają wybrany ekran lub zaznaczony obszar bez możliwości wprowadzania żadnych zmian w trakcie nagrania (przejścia między scenami) oraz tworzenia wielu warstw nagrania (np. dołożenie obrazu z kamery czy dodanie ramki lub tekstu). Jeśli wystarczy nam samo nagrywanie ekranu bez dodatków i przejść to jak najbardziej proponuję wybranie jednego ze wspomnianych narzędzi.

Jeśli jednak pracujesz z kilkoma źródłami, chcesz zrobić przejścia i utworzyć zestawy scen wybór jest tylko jeden – OBS Studio. Jest to bardzo dobrze wyposażone narzędzie, które zachwyca ogromem możliwości.

Dlaczego OBS?

Aplikacja OBS Studio wyróżnia się na tle innych narzędzi do nagrywania przede wszystkim tym, że może być jednocześnie narzędziem do prowadzenia transmisji na żywo. Tym razem jednak nie będę skupiał się na tym aspekcie, a na faktycznych możliwościach nagrywania wideo. Tutaj również odnalazłem najwięcej interesujących mnie funkcji, jak chociażby możliwość ułożenia sceny według moich potrzeb (warstwy) z podglądem w czasie rzeczywistym. Na przykład do nagrania wideo mogę dołożyć ramkę, obraz z kamery, tekst, GIF-a czy obraz z innego źródła. Wszystko to można łączyć w pojedynczej scenie lub stworzyć kilka scen i płynnie między nimi przechodzić. Oprócz tego, co widzimy możemy skonfigurować to, co usłyszymy na nagraniu – OBS posiada także możliwość konfigurowania źródeł dźwięku. Na uwagę zasługuje także bezproblemowe wykrywanie obrazu z urządzeń zewnętrznych – wszelkiego rodzaju grabbery i przechwytywarki wideo.

Instalacja OBS Studio

W zależności od wykorzystywanej dystrybucji instalacja programu OBS będzie wyglądała nieco inaczej, ale wszystko sprowadza się do dwóch metod – instalacja z pomocą wyszukiwarki oprogramowania lub instalacja poprzez terminal. Poniżej przedstawiam przykład instalacji programu w systemie Ubuntu.

Instalacja z poziomu Wyszukiwarki Oprogramowania

Całość zaczynamy od uruchomienia wyszukiwarki oprogramowania Ubuntu Software, następnie klikamy w ikonę wyszukiwania oprogramowania i wpisujemy frazę “OBS”.

Po kliknięciu w pozycję OBS Studio (unofficial) możliwa jest zmiana repozytorium na ubuntu-focal-universe (deb). W ten sposób pobrana zostanie oficjalna wersja oprogramowania z podstawowego repozytorium.

Po kliknięciu zielonego przycisku Install system poprosi o potwierdzenie działania hasłem administratora. Po wpisaniu hasła i zatwierdzeniu przyciskiem Enter program zostanie zainstalowany w systemie.

Po rozwinięciu menu wszystkich aplikacji możliwe jest przypięcie OBS do ulubionych.

Program jest gotowy do pracy.

Instalacja z poziomu Terminala

W celu zainstalowania programu OBS z pomocą terminala należy rozpocząć od uruchomienia samego Terminala.

Całość zaczynamy od zaktualizowania systemu:

sudo apt update
sudo apt upgrade

Następnie należy wyszukać odpowiedni pakiet. W tym celu wpisuję:

sudo apt search obs

Pojawia się wiele wyników, ale ten, który mnie interesuje to obs-studio.

Następnie należy wpisać w terminalu polecenie:

sudo apt install obs-studio

a następnie potwierdzić instalację (Y lub T w zależności od wersji językowej systemu).

Po kilku chwilach pakiet OBS Studio będzie zainstalowany w systemie. Podobnie jak w przypadku instalacji przez Wyszukiwarkę Oprogramowania możliwe jest przypięcie programu do ulubionych.

Ustawienia początkowe

Podczas pierwszego uruchomienia program OBS wita nas auto-konfiguratorem, który ułatwia dalszą pracę z programem. Warto przejść przez niego i ustawić wszystko zgodnie z przeznaczeniem oprogramowania. W pierwszym kroku polecam zaznaczenie drugiej opcji, czyli optymalizację programu pod nagrywanie lokalne.

W kolejnym kroku konfigurator pyta nas o ustawienia wideo – rozdzielczość bazowa obrazu (w uproszczeniu rozdzielczość naszego ekranu, na którym pracujemy) oraz preferowana ilość klatek na sekundę (FPS). W przypadku rozdzielczości warto zostawić bieżącą (dopasowuje się ona automatycznie), natomiast w przypadku FPS warto zastanowić się, na co pozwala nam nasz komputer. Jeśli w najnowszych grach mamy po 150 FPS, to bez problemu można zaznaczyć nagrywanie w 60 FPS, jeśli jednak nasz PeCet dostaje czkawki nawet przy starszych grach proponuję zostać przy 30 FPS. Na początku można też sprawdzić opcję “30 lub 60, ale preferuj 60”. W ten sposób program automatycznie wykryje czy możliwe jest nagrywanie w większej ilości klatek i w chwilach zadyszki sam ograniczy ilość FPS.

Po kliknięciu Dalej program przejdzie przez fazę testu kodeku wideo. W tle pojawi się tak zwany biały szum, który program nagrywa i odtwarza w tle, aby sprawdzić możliwości komputera.

W moim przypadku działam na maszynie wirtualnej, więc po testach program zasugerował nagrywanie enkoderem software’owym w wysokiej jakości przy skalowaniu wideo z bazowej rozdzielczości do rozdzielczości odrobinę mniejszej przy 30 FPS. W ten sposób nagranie będzie najbardziej płynne przy najmniejszym możliwym obciążeniu procesora.

Nie pozostaje nic innego jak zatwierdzenie ustawień i przejście do dalszej konfiguracji.

Okno programu

Okno programu OBS jest podzielone na kilka obszarów pozwalających na zarządzanie nagrywaniem. Pierwszy obszar to obszar podglądu obrazu, czyli obszar, na którym rozkładamy elementy sceny i możemy podejrzeć jak będzie wyglądało nagranie wyjściowe.

Drugi obszar (na dole od lewej) to obszar pozwalający na dodanie wielu scen oraz dodanie do scen źródeł obrazu (np. ekran, okno aplikacji czy grafikę). W źródłach możliwe jest także dodawanie źródeł dźwięku.

Na dole po środku widoczny jest podgląd miksera audio, na którym możemy podglądać w formie wykresu dźwięki rejestrowane przez program. Dzięki temu wiemy, czy źródło nie jest za głośne i na końcowym nagraniu nie usłyszymy samych szumów i trzasków.

Tuż obok umieszczony jest panel zarządzania przejściami. Możemy tam skonfigurować jak ma wyglądać przejście między scenami oraz jak długo ma trwać.

Na samym dole po prawej widoczny jest ostatni element zarządzania programem – przyciski sterujące nagrywaniem, streamowaniem, przycisk ustawień oraz przycisk wyjścia z programu. Jest tam także przycisk przełączający program w tryb studia, lecz na obecnym etapie nie jest on dla nas istotny.

Dodawanie elementów sceny

Przed rozpoczęciem nagrywania konieczne jest dodanie scen i ich elementów. Załóżmy scenariusz, że chcemy nagrać okno przeglądarki, a następnie zrobić przejście na scenę, w której pokazany będzie jedynie terminal. W tym celu otwieram przeglądarkę oraz terminal, aby działały w tle i przechodzę do konfiguracji OBS. W oknie “Sceny” klikam na “+”, aby dodać nową scenę. Pierwszą z nich nazywam “Przeglądarka”, natomiast drugą nazywam “Terminal”.

Następnie klikam na scenę “Przeglądarka” i w oknie “Źródła” klikam na “+”. Z rozwiniętego menu wybieram opcję “Przechwytywanie okna (Xcomposite).

W oknie, które pojawi się w kolejnym kroku należy wpisać nazwę, dzięki której rozpoznamy źródło na liście (np. Firefox).

Po przejściu dalej możemy z rozwijanej listy wskazać okno, które ma być rejestrowane przez OBS.W moim przypadku jest to okno przeglądarki Firefox.

Po zatwierdzeniu wyboru może okazać się, że wskazane okno nie pokrywa się rozmiarem z formatem wyjściowym.

Aby to zmienić należy kliknąć na element na podglądzie tak, aby był podświetlony czerwoną ramką.

Po zaznaczeniu wystarczy kliknąć kombinację przycisków CTRL + S, dzięki czemu obraz zostanie dopasowany do pełnego ekranu.

Następnie całość należy powtórzyć przy scenie drugiej dodając w źródłach przechwytywanie okna terminalu a następnie rozciągnąć obraz do pełnego ekranu.

Program jest gotowy do nagrywania. Po kliknięciu przycisku “Rozpocznij nagrywanie” obraz będzie zapisywany automatycznie w głównym katalogu domowym jako plik .MKV.

Optymalne ustawienia

Aby wszystko zadziałało poprawnie dobrze jest wprowadzić kilka dodatkowych zmian w ustawieniach OBS. Pozwoli to na nagrywanie wideo w dobrej jakości przy zachowaniu rozsądnego rozmiaru pliku. W tym celu należy wejść do konfiguratora poprzez kliknięcie przycisku “Ustawienia” w prawym, dolnym rogu programu. W otwartym oknie należy przejść do zakładki “Video”. Posiadając nawet średni komputer warto jest podkręcić delikatnie wartości, aby wyglądały jak na zdjęciu poniżej.

Jeśli jednak masz starszy komputer lub działasz na laptopie o słabszych parametrach zostaw ustawienia domyślne. Warto tutaj trochę pokombinować przy filtrach (Lanczos / Bicubic) oraz przy wartościach FPS (między 20 a 60). Po zrobieniu kilku nagrań testowych dowiesz się, jakie ustawienia są optymalne do Twojego komputera.

Kolejny obszar, w którym należy odrobinę pogrzebać to zakładka “Wyjście”. W obszarze “Nagrywanie” możliwe jest wskazanie ścieżki, w której zapisywane są pliki wideo, ale także jakość nagrania, format nagrania oraz typ enkodowania. Co do jakości – w moim przypadku idealnie sprawdza się opcja “Wysoka jakość, średni rozmiar pliku”, ale tutaj również polecam pokombinować z ustawieniami i zrobienie kilku testów. Podobnie będzie w przypadku enkodera – użytkownicy kart nVidia oraz AMD mają możliwość użycia dedykowanych enkoderów sprzętowych. Warto tutaj ustawić jedną z opcji, uruchomić nagrywanie i zobaczyć jaki jest efekt wyjściowy (jak wygląda wideo). Jeśli pojawią się artefakty lub spadki FPS należy wybrać inny enkoder i spróbować ponownie. Zostaje jeszcze temat formatu wideo, ale o tym w kolejnym akapicie.

Formaty wideo

Pozostał jeszcze temat rozszerzenia wideo. Do wyboru mamy dwa formaty – MKV oraz MP4. Decydując się na jeden z nich należy pamiętać, że format MKV jest bezpieczniejszy pod kątem awarii. Jeśli w trakcie nagrywania zawiesi się program lub np. wyłączą nam prąd plik MKV będzie możliwy do odtworzenia od początku nagrania do chwili wystąpienia awarii. Wiąże się to jednak z koniecznością konwersji pliku do innego formatu w celu obróbki w programie do edycji wideo. Plik MP4 od razu po nagraniu może zostać użyty w programach do obróbki wideo, lecz w przypadku zawieszenia programu lub mignięcia prądem plik jest najczęściej niemożliwy do uratowania i tracimy nagranie bezpowrotnie. Osobiście korzystam z rozszerzenia MP4, lecz wybór pozostawiam w Twoich rękach.

Podsumowanie

Po przejściu przez wszystkie powyższe kroki otrzymujesz doskonałe narzędzie do nagrywania dowolnych elementów widocznych na ekranie – pojedyncze okna, fragment ekranu czy nawet cały ekran. Osobiście korzystam z nagrywania obrazu właśnie z pomocą OBS i nigdy mnie nie zawiódł. Dodatkowo program posiada możliwość ustawienia skrótów klawiszowych, dzięki czemu rozpoczęcie i zakończenie nagrywania może odbyć się bez przełączania między oknami, a sam OBS może być schowany gdzieś w tle. Mam nadzieję, że powyższy poradnik ułatwił Ci zainstalowanie i skonfigurowanie OBS’a w Linuxie. Jeśli coś jest niejasne daj znać w komentarzu, będę uzupełniał artykuł.

3 Comments

  1. Super artykuł. Przy okazji zapytam o podobną aplikację z wykorzystaniem kamerki i możliwością wrzucenia transmisji w sieć tak by można było obserwować np. zachowanie zwierzaka zdalnie, będąc na mieście. Czy możesz coś polecić?

    1. Moim zdaniem wyżej wymieniony OBS. Kiedyś robiłem streaming na FB przez OBS’a. Dobrze to działało jeśli sieć była stabilna. Bardzo dobra aplikacja.

    2. Bardzo ciekawe pytanie, ale niestety nie mam dobrej odpowiedzi. Sam próbowałem coś takiego zrobić i nie znalazłem nic sensownego. Wszystkie możliwości były zbyt “otwarte” – dostęp był publiczny jako “jedna wśród wielu kamer”, więc nie skorzystałem. Skończyło się na wykorzystaniu starego smartfona na statywie, na którym miałem aktywnego AnyDeska – podłączałem się zdalnie i odbierałem połączenie wideo na Viberze. Bardzo męczący sposób podglądania zwierzaka… Jak tylko wymyślę coś lepszego na pewno dam znać 🙂

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *