Через півтора року розвитку оголошено про вихід нової версії GStreamer 1.20, кросплатформний набір компонентів, написаних на C для створення широкого спектру мультимедійних додатків, від медіа-плеєрів і конвертерів аудіо/відео файлів до програм VoIP і потокових систем.
У цій новій версії виділяється включення нових кодерів, а також покращення підтримки змішування аудіо та відео, серед іншого.
Основні нові можливості GStreamer 1.20
У цій новій версії зазначено, що Розробка на основі GitLab перейшла до використання єдиного загального репозиторію до всіх модулів.
Що стосується новинок, які представлені в цій новій версії, то слід зазначити, що додано нову бібліотеку високого рівня GstPlay, який замінює GstPlayer API і надає подібні функції для відтворення вмісту, за винятком того, що він використовує шину повідомлень для сповіщення програм замість сигналів GObject.
Також підкреслюється, що додана підтримка 2022-D механізму SMPTE 1-2 (пряме виправлення помилок), плюс encodebin і transcodebin для кодеків VP8, VP9 і H.265 реалізують режим інтелектуального кодування ("розумне кодування"), в якому перекодування виконується лише тоді, коли це необхідно, а в решту часу, наявна передача пересилається.
Ще одна зміна, яка виділяється, полягає в тому, додано можливість декодування вхідних даних на проміжному рівні кадру (субкадр), що дозволяє розпочати декодування, не чекаючи повного кадру. Ця оптимізація сумісна з декодерами OpenJPEG JPEG 2000, FFmpeg H.264 і OpenMAX H.264/H.265.
На додаток до декодування відео для протоколів RTP, WebRTC і RTSP, він також забезпечує автоматичну обробку втрати пакетів, пошкодження даних і запитів ключових кадрів. додана підтримка зміни даних кодеків на льоту до контейнерних пакувальників медіа mp4 і Матроска.
З іншого боку, це підкреслюється додана підтримка декодування інформації прозорість у форматі WebM, що дозволяє відтворювати відео VP8/VP9 з прозорими областями, а також підтримує налаштування додаткових властивостей програми в профілях кодування, а також можливість використовувати CUDA для перетворення колірного простору, масштабування елементів і завантаження елементів.
З інші зміни, які виділяються цієї нової версії:
- Класи payloader і payloader мають уніфіковану підтримку роботи з додатковими заголовками RTP.
- Покращена сумісність з WebRTC.
- Додано режим для створення фрагментованих медіа-бунків mp4.
- Додана підтримка подій до AppSink API на додаток до буферів і списків буферів.
- Додані додаткові налаштування внутрішніх черг у AppSrc.
- Оновлено мовні прив’язки Rust та додано 26 нових плагінів, написаних на Rust (gst-plugins-rs).
- Додано елементи aesdec і aesenc для шифрування і дешифрування за допомогою алгоритму AES.
Додано елементи fakeaudiosink та videocodectestsink для тестування та налагодження. - Покращені інструменти для створення мінімалістичних версій GStreamer.
Додано можливість компіляції з FFmpeg 5.0. - Для Linux реалізовані версії кодеків MPEG-2 і VP9 без стану.
- Для Windows декодер на основі Direct3D11/DXVA має додану підтримку AV1 і MPEG-2.
- Плагін Souphttpsrc, сумісний з libsoup2 і libsoup3.
- Composer підтримує перетворення відео та мікшування в багатопотоковому режимі.
В кінці кінців якщо ви хочете дізнатися більше про це про цю нову версію Gstreamer ви можете перевірити журнал змін У наступному посиланні.
Як встановити Gstreamer 1.20 на Ubuntu та похідні?
Якщо ви зацікавлені в установці Gstreamer 1.18 на ваш дистрибутив Ви можете зробити це, виконавши наведені нижче кроки.
Процес діє як для нової версії Ubuntu 20.04, так і для попередніх версій із підтримкою.
Щоб встановити, нам просто потрібно відкрити термінал (Ctrl + Alt + T) і в нього ми вводимо такі команди:
sudo apt-get install gstreamer1.0-tools gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav
І готові з цим, вони вже встановили Gstreamer 1.16 у своїй системі.