GStreamer е библиотека с отворен код, сложна част от софтуера, който функционира като мултимедийна рамка за множество операционни системи GNU / Linux, както и Android, OpenBSD, Mac OS X, Microsoft Windows, и Symbian OSes.
Характеристики с един поглед
Основните функции включват цялостна основна библиотека, интелигентна архитектура на приставки, разширено покритие на мултимедийни технологии, както и обширни инструменти за разработка, така че лесно можете да добавите поддръжка за GStreamer във вашите приложения.
Това е основният мултимедиен дисплей за широка гама от проекти с отворен код, бушуващи от приложения за възпроизвеждане на аудио и видео като Totem (видеоклипове) от работната среда на GNOME и сложни видео и аудио редактори.
Освен това, софтуерът има много висока производителност и ниска латентност, благодарение на изключително леката си технология за предаване на данни, както и синхронизация между различни потоци (аудио / видео) чрез часовник.
Състои се от няколко пакета кодеци
Проектът се състои от няколко различни пакета, известни също като пакети с код, които могат лесно да бъдат инсталирани на всяко разпределение на GNU / Linux от техните хранилища по подразбиране на всички едновременно или поотделно. Те са както следва: GStreamer Plugins Base, GStreamer Plugins Good, GStreamer Plugins Bad и GStreamer Plugins Ugly.
GStreamer е компактна ядрова библиотека, която позволява произволни pipleline конструкции благодарение на графичната структура, базирана на библиотеката с обектни модели GLib 2.0, която може да се използва за обектно-ориентиран дизайн и наследство.
Използва технологията QoS (Quality of Service)
За да се гарантира възможно най-доброто качество на звука и видеото при високо натоварване на процесора, проектът използва технологията QoS (Quality of Service). Освен това осигурява прозрачна и тривиална конструкция на многопроводни тръбопроводи.
Благодарение на простия си, стабилен и чист API (Application Programming Interface), разработчиците могат лесно да го интегрират в своите приложения, както и да създават приставки, които ще разширят функционалността по подразбиране. Тя също така им предоставя пълнофункционална система за отстраняване на грешки.
Долен ред
В заключение, GStreamer е много мощна и високо ценена мултимедийна рамка за екосистемата с отворен код, осигуряваща на потребителите на GNU / Linux широка гама от аудио и видео кодеци за възпроизвеждане и обработка на медии.
strong> Какво ново в това издание:
- Release Bugfix.
Какво е новото във версия 1.14.1:
Какво е новото във версията:
- Тази версия съдържа само корекции за бъгове 1.8.0.
Какво е новото във версия 1.8.2:
- да се актуализира от 1.8.0.
Какво е новото във версия 1.8.0:
- Декодиране на видео с нулево копие на хардуера при Android
- Нов източник за заснемане на видео за Android, използващ приложния програмен интерфейс android.hardware.Camera API
- Поддръжка за обратно възпроизвеждане на Windows Media (ASF / WMV / WMA)
- Новата система за проследяване осигурява поддръжка за по-сложни инструменти за отстраняване на грешки
- Нов API за възпроизвеждане на GstPlayer на високо ниво
- Първоначална поддръжка за новия API на Vulkan, вижте блога на Матю Уотърс за повече подробности
- Подобрена поддръжка на аудио кодек Opus: Поддръжка на повече от два канала; MPEG-TS demuxer / muxer вече може да работи с Opus; кодиране / декодиране / преобразуване с Ogg, Matroska, ISOBMFF (Quicktime / MP4) и MPEG-TS като контейнер; нови помощни функции за кодеци за управление на Opus header и caps в библиотеката pbutils. Елементите на енкодера / декодера на Opus също бяха преместени в gst-plugins-base (от -bad), а операторът RTP depayloader / payloader на opus -good.
- Модулът VAtre на GStreamer сега е пуснат и поддържан като част от проекта GStreamer
- Поддръжка на активен прокси сървър в услугите за редактиране на GStreamer
Какво е новото във версия 1.6.3:
- Фиксирайте регресията в GL библиотеката, която е направила glimagesink невъзможна за Android
- Целият аритметичен прелив в елемента queue2, който може да наруши буферирането или да причини катастрофи поради дереференция на показалеца NULL
- Рестартирайте катастрофата в AAC / ADTS типфен, причинен от четене на повече памет, отколкото е налице
- Престанете да пренебрегвате грешките на енкодера в енкодерите VP8 / VP9
- Премахване на GstVideoEncoder GST_VIDEO_ENCODER_FLOW_DROPPED. Това е редудантно и никога не е внедрено.
- Уверете се, че сте съхранили правилната информация за видео в GstVideoBufferPool
- Коригирайте капачките в rtspsrc, когато правите SRTP над TCP
- Рестартирайте катастрофата в parser пакети на пакети с размер 0
- Изчистване на флага на EOS в appsrc, за да се позволи повторно използване след EOS и промиване
- Пренебрегвайте потоците от зачервявания в поточно синхронизатор по време на превключвания на потока, за да отстраните проблемите, причинени от това в услугите за редактиране gst
- Игнорирайте маркерите и другите метаданни в WAV файловете след "данните" парче в режим PUSH, за да не се интерпретира като аудио
- Правилно използвайте колориметрията в v4l2 само за цветни формати YUV
- Задайте запазени битове в MPEG TS muxer до 1s
- Коригиране на изчисляването на дължините на рамката на SBC
- Коригирайте изхода на RTP JPEG2000 depayloader, за да има един кадър на буфер и да се срине в декодера OpenJPEG при непълни кадри
- Актуализирайте ffmpeg моментна снимка в gst-libav до 2.8.5
- Проблемите за изтичане на паметта се коригират в мащаб, груповият RTP depayloader и в playink, свързани с аудио / видео филтри
- Различни корекции и добавки за пояснения на adobe коментарите за gobject-introspection
- Коригиращи предупреждения за компилатора за най-новите компилатори на clang
year not τη τη3030 τη not not30 not not not not not not not τη not not τη not τη τη not τη not τη not not30 τη30 not not τη τη τη30 not not year not τη not not τη30 year τη τη not year not τη not not τη τη not not not τη not not τη τη30 not not30 τη not τη not τη τη not τη30 year not τη τη not τη τη not
Какво е новото във версия 1.6.1:
- Грешки в кодовете на gst-libav са фиксирани
- Още тестови потоци DASH-IF работят сега
- Живите потоци DASH, HLS и MS SmoothStreaming работят по по-надеждни и други поправки за адаптивните протоколи за стрийминг
- Обратно възпроизвеждане работи с scaletempo, за да запази аудио стил
- Коректното време на потока се отчита за отрицателно applied_rate
- Утвърждаването на пакетите на SRTP по време на декодирането не отхвърля вече валидни пакети
- Поправя се за аудиоагрегатор и агрегатор, за да започне да се генерира продукция в точното време и напр. като не издава много тишина в началото
- вътрешната ffmpeg снимка на gst-libav бе актуализирана до 2.8.1
- Cerbero има поддръжка за Mac OS X 10.11 (El Capitan)
- Разрешени бяха различни изтичания на паметта, включително големи течове в плейбин, playink и decodebin
- Различни коригиращи пояснения за корекция на GObject-Introspection за свързвания
- и много, много повече
Какво е новото във версия 1.6.0:
- Стереоскопична 3D и мулти визуална видео поддръжка
- Приложен програмен интерфейс (API) за триизмерни режими за възпроизвеждане само с бързи движения напред / назад и др.
- Подобрена обработка на DTS (декодиране на времевата маркировка) срещу обработка на PTS (представяне на времевата марка) за отчитане на отрицателни DTS
- Нов API на GstVideoConverter за по-оптимизирано и по-правилно преобразуване на необработени видеокадри между всички поддържани формати с пренасочване
- v4l2src сега поддържа предоговаряне
- v4l2transform вече може да направи мащабиране
- Елементът V4L2 вече докладва правилно колориметрията
- По-лесно зареждане на MP4, Matroska, Ogg и MPEG-TS: нови подобрения на splitmuxsink и multifilesink
- Поддръжка за DASH / MP4 за сигнали за защита на съдържанието за защита на DASH / MP4 от API и общото криптиране (CENC)
- Много адаптивни стрийминг (DASH, HLS и MSS) подобрения
- Нови PTP и NTP мрежови клиентски часовници и по-добра стабилност за проследяване на часовника на отдалечен телефон
- Висококачествено наслагване на текстови субтитри при резолюции на дисплея с glimagesink или gtkglsink
- Поддръжка на RECORD за сървъра GStreamer RTSP
- Поддръжка на ретранслации (RTX) в RTSP сървър и клиент
- Помощта за търсене на RTSP в клиент и сървър е фиксирана
- Настройки за график за RTCP и поддръжка на RTCP с намален размер
- MP4 / MOV muxer придобива нов "здрав" режим на работа, който се опитва да запази изходния файл във валидно състояние по всяко време
- Поддръжката на живо за смесване в агрегатор, аудиосистема и композитор бе подобрена много
- композиторът сега също така поддържа пренасочване на потоци от входове в движение
- Нов елемент за звукозапис с подходяща синхронизация на вход и поддръжка на входящ сигнал
- Поддръжката на Blackmagic Design DeckLink за улавяне и възпроизвеждане на карти беше пренаписана отначало; 2k / 4k поддръжка; mode sensing
- Поддръжка на KLV метаданни в RTP и MPEG-TS
- H.265 видео енкодер (x265), декодери (libav, libde265) и RTP payloader и depayloaders
- Нова DTLS плъгин и поддръжка на SRTP / DTLS
- Поддръжка на OpenGL3, множество контексти и разпространение на контекст, 3D видео, разделяне на трансфера / конверсията, смесване на субтитри
- Нова видео-мивка QML, базирана на OpenGL, видео мивка Gtk GL, видео мивка CoreAnimation CAOpenGLLayerSink
- gst-libav се превключва на ffmpeg като доставчик на libav, получава подкрепа за 3D / multiview видео, режими на трик и кодек CAVS
- API за GstHarness за тестването на единиците
- gst-editing-services получи напълно нов интерфейс ges-launch-1.0, подобрена поддръжка за смесване и интегриране в gst-validate
- gnonlin е отхвърлен в полза на nle (Non Linear Engine) в услугите за редактиране gst
- gst-validate разполага с нова плъгинна система, обширен стандартен тестусей, поддръжка за едновременни тестове и поддръжка на валидността
- Инструментът за създаване на cerbero за двоични пакети на комплекта за разработване на софтуер (SDK) придобива нова команда "пакет източник"
- Различни подобрения в поддръжката на платформата за Android, iOS, OS X и Windows
Какво е новото във версия 1.5.2:
- 740502: Добавете абсолютна собственост към GstDirectControlBinding
- 740575: Определяне на DTS в GStreamer
- 745366: concat: Напред FLUSH_START / FLUSH_STOP събития
- 746949: concat: Добавяне на собственост на активния тампон
- 750027: concat: Възстановява вътрешното начално отместване на 0 след търсенето на промиване
- 750033: basetransform - позволи колацията / разделянето на буферите
- 750039: Поддържане на буфери с обща памет
- 750319: памет: подкласовете не знаят флаговете на картата в unmap
- 750530: ptp: FreeBSD, DragonFly и други BSD нямат ifreq.ifw_hwaddr
- 750574: netclientclock: Направете часовник обгръщащ часовник около вътрешен часовник
- 750761: входен селектор: Обработка на избор на различна продължителност
- 750782: pipeline: Добавете gst_pipeline_set_latency (), getter и GObject property
- 751026: basesink: Правилно боравете с буферни списъци за собствеността на последната проба
- 751047: concat: Добавяне на собственост за настройка
- 751107: concat: когато освобождавате подложката, изпратете EOS по подходящ начин.
- 751235: utils: get_compatible_pad не спазва напълно филтърните капачки
- 751420: basesink: трябва да копирате последния буфер в последния буфер
Какво е новото във версия 1.4.5:
- сърцевината на GStreamer:
- 736969: queue2: dead lock при буфериране
- 738092: basesink: клемата съобщава позиция въз основа на посоката
- 740001: задача: състояние на състезанието при пауза и спиране
- Основа на GStreamer Plugins:
- 741420: видеообщества: трябва да актуализира размера в конфигурацията след прилагане на подравняването
- 715050: добавете дублиращ аудио / х-звуков
- 739544: tcp: Добавете тест и установете изтичане на памет в елементите tcp
- 739840: Типовият сигнал трябва да разпознава Apple Core Audio Format (CAF)
- 740556: видеодекодер: не се оплаквайте, когато DTS! = PTS на ключови кадри
- 740675: playink: продължаване на възпроизвеждането, възстановяване на собствеността за заглушаване
- 740730: rtspconnection: не премахвайте подчинен източник, ако източникът на родител вече е унищожен
- 740853: аудиоекодер: Натиснете предстоящи събития, преди да изпратите EOS.
- 740952: alsa: корекции на NetBSD
- 741045: Audiorate може да загуби точността на времето в някои случаи
- 741198: playbin: изтичане на GstPads
- GStreamer приставки Добър:
- 711437: apev2mux: не трябва да поставя APEv2 тагове в началото на файловете на WavPack
- 726194: v4l2src не се справя добре, когато някоя карта за улавяне е понякога преплетена, понякога прогресивна със същата резолюция
- 736397: flvdemux: Повтарящото се поведение на потока причинява A / V-desyncs
- 737603: v4l2bufferpool: задаване на буфери за запълване на флагове, когато полето е V4L2_FIELD_INTERLACED
- 739476: vpx: не може да се изгради срещу libvpx от git
- 739722: matroskamux: регистрационен файл за нишки GstMatroskamuxPad
- 739789: v4l2allocator: поправете съобщение за грешка, ако разпределителят вече е активен
- 739791: v4l2bufferpool: unref pool, когато v4l2_allocator_new () не успее
- 739792: v4l2allocator: поправете прототипа gst_v4l2_allocator_stop
- 739996: видеомексор: Качва много кадри, ако някой от източниците е активен
- 740040: v4l2src: Изключва се при наличие на V4L2_BUF_FLAG_ERROR
- 740392: rtspsrc: mikey base64 декодиран ключ-изтичане
- 740407: qtmux ограничава улавянето до 4096x4096
- 740633: v4l2src: RW io-режимът е счупен
- 740636: v4l2src: кадрирането не винаги е зададено на драйвера
- 740671: aspectratiocrop: реколтата трябва да бъде нулирана при промяна на размера на видеоклипа
- 740905: v4l2: все още има 1 включване към linux / videodev.h
- 741271: rtph264pay: Изтичане на буфер в H.264 payloader при използване на SPS / PPS
- 741381: rtph264pay: Състоянието на състезанието може да доведе до катастрофа при преминаване от PAUSED-> ГОТОВ
- 741407: deinterlace: в query_caps връща само поддържаните формати, ако филтърът е преплетен
- 737579: v4l2object: задайте цветово пространство за изходни устройства
- 739754: v4l2bufferpool: Трябва да потвърдите, че всички памети могат да се записват преди връщане назад в опашката
- Грешка в GStreamer:
- 722764: rawparse: поправете търсене на обработка на заявки
- 729768: mpegtsbase: Повишаване на границата, за да прочетете повече байтове първоначално, за да откриете PCR
- 739152: гл / какао: изграждане с GNUStep се провали
- 740191: dvbbasesink: segfaults на 32-bit (rpi)
- 740201: gl / какао: не се компилира върху OSX < 10.7 вече
- 740451: srtpdec: изтичане на събития rtp / rtcp събирач
- 740953: configure.ac: неприемлив тест (1) оператор за сравнение
- 741321: opusparse: fix header parsing esp. на кодираната продукция на libopus
- GStreamer RTSP сървър:
- 739481: rtsp-stream: изтичане на srtp декодер при напускане на rtpbin
Какво е новото във версия 1.4.4:
- Грешки, фиксирани във версия 1.4.5:
- 737498: многократно: не отчита събитието GAP при изчисляване на текущото ниво
- 737794: multiqueue: блокиране при превишаване на опашката със сериализирани събития
- 737999: systemclock: проблем с състоянието на влизане в няколко нишки
- 738198: многократно: не събужда несвързани потоци на EOS
Какво е новото във версия 1.4.1:
- от серията 1.2 и е част от серията API и ABI-stable 1.x на мултимедийната рамка на GStreamer, която съдържа нови функции. Изданията за отстраняване на бъгове 1.4.x съдържат само важни корекции в сравнение с 1.4.0.
Какво е новото във версия 1.4 RC2:
- Екипът на GStreamer има удоволствието да обяви втория кандидат за пускане в продажба на стабилната версия 1.4. Издадената версия 1.4 добавя нови функции към серията 1.0 и 1.2 и е част от сериите за освобождаване на API и ABI стабилни 1.x на мултимедийната рамка на GStreamer.
- Надяваме се, че този кандидат за пускане на пазара скоро ще бъде последван от стабилната версия 1.4.0, ако не бъдат открити по-големи регресии или по-големи проблеми и се стигна до достатъчно тестване за кандидата за освобождаване. Новият приложния програмен интерфейс (API), добавен по време на серията 1.3, не се очаква да се промени вече.
Какво е новото във версия 1.4 RC1:
- Нов API:
- GstMessageType е добавен GST_MESSAGE_EXTENDED. Всички типове преди това могат да се използват заедно като флагове тип както преди, но от това съобщение нататък типовете просто се броят нарастващо. Това беше необходимо, за да може да се добавят повече типове съобщения. В 2.0 GstMessageType ще се превърне в enum, а не тип флагове вече.
- GstDeviceMonitor за сондиране на устройство, напр. за да видите всички налични устройства за записване на звук или видео. Това е замяната на GstPropertyProbe от 0.10.
- Събитията натрупват отместването на времето за изпълнение сега, когато пътуват през подложки, както е зададено от функцията gst_pad_set_offset (). Това позволява да се компенсира това например при събитието QOS.
- GstBuffer има нов флаг "таг-памет" който се настройва автоматично, когато паметта се добавя или премахва в буфер. Това позволява на буферните пулове да откриват дали могат да рециклират буфер или трябва първо да я нулират.
- GstToc има нов API, за да маркира GstTocEntries като цикли.
- Бе определена нерегулирана грешка на ресурса, за да се уведомят приложенията, че достъпът до ресурса е неуспешен поради липса на разрешение и за да се разграничи този случай от другите. Тази промяна вече е в 1.2.4.
- GstPad има нов флаг "accept-intersect", който ще позволи на стандартната програма за обработка на заявки ACCEPT_CAPS да направи пресечка вместо проверка на подмножество. Това е интересно за елементите на анализатора, които могат да обработват непълни капачки.
- GstCollectPads има поддръжка за промиване и манипулатор по подразбиране за събития SEEK.
- Нов помощен обект на GstFlowAggregator, който опростява обработката на потока в елементите с множество подложки за източника. Освен това GstPad винаги съхранява последната декларация за потока и предоставя API за изтеглянето й.
- GstSegment има нов API, за да компенсира времето за изпълнение с определена стойност и това се използва в GstPad, за да позволи положителни и отрицателни отклонения в gst_pad_set_offset () във всички ситуации.
- Поддръжката на h265 / HEVC и VP8 е добавена към библиотеката за кодеци за полезни и кодек програмисти и е интегрирана в различни елементи.
- Добавен е API за коригиране на TLS валидирането на връзката RTSP.
- Библиотеката RTSP и SDP вече има поддръжка за MIKEY (RFC 3830) и има API за разграничаване на различните RTSP профили.
- API за достъп до RTP информация и статистика.
- Подкрепа за допълнителни потоци бе добавена към rtpbin.
- Добавена е поддръжка на плочки, необработени видео формати.
- GstVideoDecoder и GstAudioDecoder имат приложния програмен интерфейс (API), за да спомогнат за обобщаването на събития с маркери и да обединяват персонализирани маркери в тях последователно.
- GstBufferPool вече има поддръжка за зачервяване.
- playbin / playink има поддръжка за филтри за аудио и видео.
- GstDiscoverer разполага с нов и опростен API, за да получите подробности за липсващите приставки и информация, за да преминете към инсталатора на приставките.
- GL библиотеката е обединена от gst-plugins-gl към gst-plugins-bad, осигуряваща обща инфраструктура за обработка на GL в тръбопроводи GStreamer и плъгин с някои елементи, използващи тези, особено видео мивка. Поддържаните платформи в момента са Android, Cocoa (OS X), DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) и генерични X11, Wayland и EGL платформи. Това замества елгелсън и също така трябва да замени osxvideosink.
- Нов базов клас на GstAggregator в gst-plugins-bad. Това би трябвало да замени GstCollectPads в бъдеще и да определи отдавна известни недостатъци в неговия API. Заедно с базовия клас вече са осигурени някои елементи, като например видеомекстер (композитор).
- Основни промени:
- Нови приставки и елементи:
- v4l2videodec елемент за достъп до хардуерни кодеци на платформи, които ги правят достъпни чрез V4L2, напр. Samsung Exynos. Това се съчетава с основно преобразуване на съществуващите елементи V4L2 и съответната инфраструктура. Елементът v4l2videodec заменя елемента mfcdec.
- Нов елемент downloadbuffer, който замества функцията за изтегляне на буфериране на queue2. В сравнение с кода на queue2, той е много по-прост и само за този случай за еднократна употреба. Забележителна нова функция е, че изтеглянето на пропуски в вече изтеглените части на потока, когато нищо друго не може да бъде изтеглено. Това се използва от playbin, когато е разрешено изтеглянето на буфери.
- rtpstreampay и rtpstreamdepay елементи за предаване на RTP пакети през API поток (напр. TCP) съгласно RFC 4571.
- rtprtx елементи за стандартно съвместимо внедряване на препредавания, интегрирани в приставката rtpmanager.
- елемент на аудиосистема, който смесва няколко аудио потока заедно в едно, като същевременно запазва синхронизацията. Това се планира да стане замяната на елемента на разширителя.
- Приставка за OpenNI2 за 3D камери като камерата Kinect.
- OpenEXR приставка за декодиране на EXR изображения с висока динамичност.
- За да записвате файлове чрез SSH / SFTP,
- видеоинзайн, ivfparse и sndfile плъгини пренесени от 0.10.
- avfvideosrc, vtdec и други елементи са пренесени от 0.10 и вече са налични на OS X и iOS.
- Други промени:
- gst-libav сега използва libav 10.1 и получи подкрепа за H265 / HEVC.
- Поддръжката на хардуерни кодеци и специални типове памети бе подобрена с корекции на бъгове и допълнения към функции в различни приставки и базови класове.
- Различни корекции на бъгове и подобрения в буферирането в елементи на опашка2 и множество елементи.
- dvbsrc поддържа повече механизми за изпълнение и други функции сега, включително поддръжка на DVB S2 и T2.
- Библиотеката MPEGTS има поддръжка за още много дескриптори.
- Основни подобрения в tsdemux и tsparse, особено време и търсене на свързани.
- Souphttpsrc вече поддържа поддръжка за поддържане на живи връзки, компресия, конфигурируем брой опити и конфигурация за потвърждаване на SSL сертификат.
- hlsdemux е претърпял сериозни рефетоктори и работи по-надеждно и поддържа повече HLS функции като трикове. Също така фрагментите се изтласкват надолу по течението, докато се изтеглят сега, вместо да чакат всеки фрагмент да завърши.
- dashdemux и mssdemux също така натискат фрагменти надолу по течението, докато се изтеглят, вместо да чакат всеки фрагмент да завърши.
- Видеоклипът може автоматично да се преобърне въз основа на маркера за ориентация.
- openjpeg поддържа OpenJPEG2 API.
- waylandsink е преработен и трябва да бъде по-полезен сега. Той също така включва малка библиотека, която най-вероятно ще бъде премахната в бъдеще и ще доведе до разширения на интерфейса GstVideoOverlay.
- gst-rtsp-сървърът сега поддържа SRTP и MIKEY.
- gst-libav енкодерите сега обсъждат всички настройки на ниво профил и ниво с низходящи кадри.
- Много корекции за предупреждения за покритие навсякъде.
- Подобрения в производителността, свързани с преговорите.
- 800+ фиксирани съобщения за грешки и много други корекции на грешки и други подобрения навсякъде, където нямаше доклад за грешки.
- Неща, на които да се грижите:
- елементът за елгел не е бил свален и заменен от елемента glimagesink.
- Елементът mfcdec е премахнат и заменен с v4l2videodec.
- osxvideosink е налице само в OS X 10.6 или по-нова версия.
- На Android пространството от имена на автоматично генерирания клас Java за инициализиране на GStreamer е променено от com.gstreamer на org.freedesktop.gstreamer, за да се предотврати замърсяването на пространството с имена.
- На iOS трябва да актуализирате gst_ios_init.h и gst_ios_init.m във вашите проекти от този, включен в бинарните файлове, ако сте използвали GnuTLS GIO модула преди. Зареждащият механизъм леко се промени.
Какво е новото във версия 1.2.4:
- сърцевината на GStreamer:
- 724373: Queue2 съкращава своя temp файл, когато тръбопроводът е поставен на пауза
- 725517: docs: Фиксирайте грешката и премахнете неизвестните анотации
- 725809: ghostpad: рядка катастрофа, поради липсващи референтни стойности на целевата подложка
- 727253: parse: генерираният от Bison файл, включен в табловете за образуване, причинява грешки при компилиране
- 727883: baseparse: Изтичане на памет от рамки за опашки
- Основа на GStreamer Plugins:
- 693263: отпечатване на текст: MPEG-2 видео ES се разпознава като H.263
- 683504: playink: блокиране при забрана на субтитрите и недостатъчно оптимизиране на субтитрите
- 700770: подготовка на текст: файлът с mp3 не е разпознат като h263 видеоклип
- 723597: събитие за търсене: събитие за търсене в GST_FORMAT_TIME се конвертира в BYTES за рано
- 724633: oggdemux: игнорира последната страница в режим на натискане
- 724720: rtspconnection: не е възможно връзката за четене да бъде изключена / възстановена в тунелен режим
- 725313: rtspconnection: затворен () обратно повикване никога не се извиква в тунелен режим
- 725644: подтискане на текст: mp3 файлът е неправилно разпознат като H.263
- 726642: rtspconnection: малка загуба на памет при обработка на грешки
- 727025: разширител: преработете логиката, за да проверите дали eos трябва да бъде изпратена.
- GStreamer приставки Добър:
- 725104: qtdemux: обратното възпроизвеждане и превключването на видео потока
- 722185: souphttpsrc: racy " сървърът не поддържа търсене на & quot; грешка
- 724619: срив при четене на собствеността на име на устройството на пулсация
- 725124: rtspsrc: Поправете блокирането, когато създаването на задачи не е успешно
- 725712: rtpsession: Crash при получаване на FTC на RTCP с неизвестен SSRC
- 725860: v4l2src: Коригирайте с помощта на v4l2src с Hauppauge HDPVR видеозапис
- 726777: rtpjpegpay: размерът на полезния товар не е правилно изчислен
- 728017: Събитието [regression] eos не може да бъде изпратено от gstrtpjitterbuffer.
- 728041: rtph264depay: маркира всички изходни буфери като делта единици при извеждането на AVC формат
- 724638: aacparse: Липсва еластичност, когато не е намерена аудио рамка
- 727329: проверка: souphttpsrc: име на неизвестен тип "SoupStatus"
- Грешка в GStreamer:
- 724013: Не използвайте hardcode / usr / share / sounds / sf2 path in fluiddec
- 725137: hlsdemux: не може да изчисли URL адреса на плейлиста, ако има параметър на заявката
- 725140: hlsdemux: не успява правилно да анализира кодовете и RESOLUTION
- Плъгини на libraries на GStreamer:
- 727779: avdec_h264, matroskademux: катастрофа при търсене (1.2 регресия)
Какво е новото във версия 1.2.2:
- функции на серията 1.0 и е част от сериите за издаване на API и ABI-stable 1.x на мултимедийната рамка на GStreamer, която съдържа нови функции.
Какво е новото във версия 1.2.0:
- Нов API:
- GstContext преговори / споделяне / обявяване за споделяне на общ контекст между елементи, напр. дръжка на дисплея
- GL метауреда за конвертиране на текстура, за да позволите различни типове буфери да бъдат конвертирани в текстура на OpenGL
- GstCapsFeatures като разширение на GstCaps за разрешаване на преговорите за конкретна памет или meta изисквания между елементите
- GstMemory флагове за съседна и несменяема памет
- Събитието поток-старт вече има незадължителни знамена, напр. за сигнализиране на оскъдни потоци
- Стартът на потока дори има по избор поле за групово идентифициране, за да сигнализира всички потоци, които трябва да се играят заедно
- Библиотека Allocators в gst-plugins-base, понастоящем само с генерична поддръжка на паметта dmabuf
- insertbin библиотека за по-лесно боравене с динамично свързани тръбопроводи (в -bad за сега)
- Помощната библиотека на EGL (в момента) [/ li>]
- Библиотека с данни за структури от данни MPEG-TS (в -bad за сега)
- Нов GstVideoRegionOfInterestMeta, за да опишете регион, представляващ интерес за видеофайлове.
- GstVideoDecoder / Encoder има нов :: flush () vfunc, за да замени неправилно дефинираното :: reset () vfunc.
- Заявката за URI позволява да се търси заявката за пренасочване URI сега.
- Основни промени:
- Нов инструмент: gst-play-1.0 в gst-plugins-base за основно тестване на възпроизвеждането на командния ред.
- Нови приставки:
- mssdemux за Microsoft Smooth Streaming
- dashdemux за адаптивен поточен протокол DASH
- bluez за взаимодействие с Bluetooth устройства
- openjpeg за декодиране и кодиране на JPEG2000
- daala за експериментално делактиране и кодиране на Daala
- vpx плъгина има експериментално VP9 декодиране и кодиране за поддръжка
- уеб плъгин за декодиране на WebP (кодиране, което ще бъде добавено по-късно)
- Различни други: yadif, srtp, sbc, fluidsynth, midiparse, mfc, ivtv, accuraterip и audiofxbad
- Преместени приставки:
- dtmf, vp8rtp, scaletempo и rtpmux плъгините се намират в gst-plugins сега
- Видео:
- Фиксирайте манипулирането на преплетени видеоклипове в конвертори като видеоклипове и видеоконвертиране (например мащабиране и на двете полета независимо)
- videoconvert ще се опита да положат по-големи усилия, за да сведат до минимум загубите от качеството, когато е необходима конверсия
- Експерименталните приложни програмни интерфейси GstSurfaceConverter, GstSurfaceMeta и GstVideoContext от библиотеката libgstbasevideo-1.0 в gst-plugins-bad вече са премахнати и са заменени с нови API в GStreamer Core и gst-plugins-base ). Тъй като всичко това е останало в тази библиотека, цялата експериментална библиотека libgstbasevideo-1.0 е премахната от gst-plugins-bad
- Подобрението на хроматовото подреждане и преобразуването на хромираното местоположение е по-добре обработвано при видеоконвертиране и подобряването на поддържането на преплетеното видео.
- Нови модели на зъбно колело и спица в видеотесторката
- Videomixer вече може да приема различни формати на видеокасетата си и преобразува в общ формат по време на смесване
- Аудио:
- Audioconvert ще се постарае да намали качеството на загубите, когато е необходима конверсия
- разширителят вече позволява да се изключват / заглушават входящите си потоци, а също така и обемът на входящия поток
- елементите на пулсаудиото могат да превключват между устройствата по време на възпроизвеждане сега
- aacparse може да конвертира между ADTS ← -> RAW
- Специфични промени в платформата:
- Кадрите, събитията и т.н. сега се отпечатват в регистрационните файлове за отстраняване на грешки на GStreamer със съдържанието им, вместо само с указател, дори и на не-glibc платформи (например Windows, OSX, Android).
- Мрежовите елементи (UDP / TCP) вече работят по-добре с платформи, където IPv6 гнездата не могат да обработват IPv4 (например Windows)
- Linux / BSD: v4l2 имаше много подобрения и почистване
- Други промени:
- gst-libav сега използва libav 9
- Сега се поддържа статично свързване на приставки (също в 1.0.7)
- rtspsrc: добавете поддръжка за NetClientClock: когато сървърът предлага GstNetTimeProvider в SDP, настройте GstNetClientClock, който се подава към отдалечения часовник и предлага този часовник в provided_clock. Опростява синхронизираното възпроизвеждане на ресурс от RTSP сървър. gst-rtsp-сървърът вече поддържа това добавяне към SDP и може да осигури мрежов часовник
- RTP препредаване / поддръжка NACK и големи подобрения на RTP jitterbuffer
- Поддръжка на SRTP и DTLS
- Променя множество елементи и ядро, за да използва правилното залепване на събития и също така не губи важни лепкави събития по време на зачервяването
- & gt; 1000 фиксирани съобщения за грешки и много други корекции на грешки и други подобрения навсякъде, където нямаше доклад за грешки
- Неща, на които да се грижите:
- За всички библиотеки, напр. #include - това е необходимо за някои свързвания.
- По-строги (правилни) проверки на подгрупита в някои случаи, когато това не е било правилно преди. Сега Caps няма да бъде съвместима подгрупа от друг комплект от капачки, ако в горните подзадати липсват някои полета, които имат горните капачки. Това може да доведе до грешки, които не са договорени, ако капачките са непълни сега. Предотвратява обаче и възможна корупция на данните, причинена от данни от тръбопроводи, форматирани по несъвместим / неочакван начин в някои елементи. Проверете шаблоните за h264 за полета за формат и подравняване на потоци и капачки за AAC за полето за формат поток. Тази промяна също ще бъде включена в следващата версия 1.0.8.
- По-строга проверка на липсващите събития и корекция на залепващите събития (поток-начало, шапки, сегмент) на някои места; това не е разрешено в стабилни издания по подразбиране, но може да получите предупреждения при използване на git build, разработване на версии или при компилиране с -UG_DISABLE_ASSERT в CFLAGS
- x264enc извежда по подразбиране данните в потока байтове, ако надолу по веригата има ANY капачки (например appsink без настройки на капачки, fileink, udpsink, tcpserversink и т.н.)
- Детекторите за MPEG TS demuxer съдържат PMT, PAT и т.н. в различен формат. Този нов формат използва структурите за данни от новата MPEGTS библиотека
- API на GstContext е променен между 1.1.4 и 1.1.90
Какво е новото във версия 1.1.4:
- Нов API:
- GstContext преговори / споделяне / обявяване за споделяне на общ контекст между елементи, напр. дръжка на дисплея
- GL метауреда за конвертиране на текстура, за да позволите различни типове буфери да бъдат конвертирани в текстура на OpenGL
- GstCapsFeatures като разширение на GstCaps за разрешаване на преговорите за конкретна памет или meta изисквания между елементите
- GstMemory флагове за съседна и несменяема памет
- Събитието поток-старт вече има незадължителни знамена, напр. за сигнализиране на оскъдни потоци
- Стартът на потока дори има по избор поле за групово идентифициране, за да сигнализира всички потоци, които трябва да се играят заедно
- Библиотека Allocators в gst-plugins-base, понастоящем само с генерична поддръжка на паметта dmabuf
- insertbin библиотека за по-лесно боравене с динамично свързани тръбопроводи (в -bad за сега)
- Помощната библиотека на EGL (в момента) [/ li>]
- Библиотека с данни за структури от данни MPEG-TS (в -bad за сега)
- Нов GstVideoRegionOfInterestMeta, за да опишете регион, представляващ интерес за видеофайлове.
- GstVideoDecoder / Encoder има нов :: flush () vfunc, за да замени неправилно дефинираното :: reset () vfunc.
- Заявката за URI позволява да се търси заявката за пренасочване URI сега.
- Основни промени:
- Нов инструмент: gst-play-1.0 в gst-plugins-base за основно тестване на възпроизвеждането на командния ред.
- Нови приставки:
- mssdemux за Microsoft Smooth Streaming
- dashdemux за адаптивен поточен протокол DASH
- bluez за взаимодействие с Bluetooth устройства
- openjpeg за декодиране и кодиране на JPEG2000
- daala за експериментално делактиране и кодиране на Daala
- vpx плъгина има експериментална поддръжка за декодиране и кодиране на V9
- уеб плъгин за декодиране на WebP (кодиране, което ще бъде добавено по-късно)
- Различни други: yadif, srtp, sbc, fluidsynth, midiparse, mfc, ivtv, accuraterip и audiofxbad
- Преместени приставки:
- dtmf, vp8rtp, scaletempo и rtpmux плъгините се намират в gst-plugins сега
- Видео:
- Фиксирайте манипулирането на преплетени видеоклипове в конвертори като видеоклипове и видеоконвертиране (например мащабиране и на двете полета независимо)
- videoconvert ще се опита да положат по-големи усилия, за да сведат до минимум загубите от качеството, когато е необходима конверсия
- Експерименталните приложни програмни интерфейси GstSurfaceConverter, GstSurfaceMeta и GstVideoContext от библиотеката libgstbasevideo-1.0 в gst-plugins-bad вече са премахнати и са заменени с нови API в GStreamer Core и gst-plugins-base ). Тъй като всичко останало в тази библиотека, цялата експериментална библиотека libgstbasevideo-1.0 е премахната от gst-plugins-bad.
- Подобряването на подмаборажирането на хрома и преобразуването на местоположението е по-добре при видеоконвертиране
- Нови модели на зъбно колело и спица в видеотесторката
- Аудио:
- разширителят вече позволява да се изключват / заглушават входящите си потоци, а също така и обемът на входящия поток
- елементите на пулсаудиото могат да превключват между устройствата по време на възпроизвеждане сега
- aacparse може да конвертира между ADTS ← -> RAW
- Специфични промени в платформата:
- Кадрите, събитията и т.н. сега се отпечатват в регистрационните файлове за отстраняване на грешки на GStreamer със съдържанието им, вместо само с указател, дори и на не-glibc платформи (например Windows, OSX, Android).
- Мрежовите елементи (UDP / TCP) вече работят по-добре с платформи, където IPv6 гнездата не могат да обработват IPv4 (например Windows)
- Windows: d3dvideosink осигурява буферна купчина за елементите нагоре по веригата
- Linux / BSD: v4l2 имаше много подобрения и почистване
- Други промени:
- gst-libav сега използва libav 9
- Сега се поддържа статично свързване на приставки (също в 1.0.7)
- rtspsrc: добавете поддръжка за NetClientClock: когато сървърът предлага GstNetTimeProvider в SDP, настройте GstNetClientClock, който се подава към отдалечения часовник и предлага този часовник в provided_clock. Опростява синхронизираното възпроизвеждане на ресурс от RTSP сървър. gst-rtsp-сървърът вече поддържа това добавяне към SDP и може да осигури мрежов часовник
- RTP препредаване / поддръжка NACK и големи подобрения на RTP jitterbuffer
- Поддръжка на SRTP и DTLS
- Променя множество елементи и ядро, за да използва правилното залепване на събития и също така не губи важни лепкави събития по време на зачервяването
- & gt; 1000 фиксирани съобщения за грешки и много други корекции на грешки и други подобрения навсякъде, където нямаше доклад за грешки
- Неща, на които да се грижите:
- За всички библиотеки, напр. #include - това е необходимо за някои свързвания.
- По-строги (правилни) проверки на подгрупита в някои случаи, когато това не е било правилно преди. Сега Caps няма да бъде съвместима подгрупа от друг комплект от капачки, ако в горните подзадати липсват някои полета, които имат горните капачки. Това може да доведе до грешки, които не са договорени, ако капачките са непълни сега. Предотвратява обаче и възможна корупция на данните, причинена от данни от тръбопроводи, форматирани по несъвместим / неочакван начин в някои елементи. Проверете шаблоните за h264 за полета за формат и подравняване на потоци и капачки за AAC за полето за формат поток. Тази промяна също ще бъде включена в следващата версия 1.0.8.
- По-строга проверка на липсващите събития и корекция на залепващите събития (поток-начало, шапки, сегмент) на някои места; това не е разрешено в стабилни издания по подразбиране, но може да получите предупреждения при използване на git build, разработване на версии или при компилиране с -UG_DISABLE_ASSERT в CFLAGS
- x264enc извежда по подразбиране данните в потока байтове, ако надолу по веригата има ANY капачки (например appsink без настройки на капачки, fileink, udpsink, tcpserversink и т.н.)
Коментари не е намерена