GStreamer 1.27.1 unstable development snapshot release

Tim-Philipp Müller via gstreamer-devel <[email protected]> Wed, 09 Jul 2025 00:21:16 +0100
Newsgroups gmane.comp.video.gstreamer.devel
Message-ID <[email protected]>
--=-AoUbzlYNSERoPqv2XTfe
Content-Type: multipart/mixed; boundary="=-hViExmZ93qht/0xB8jRB"

--=-hViExmZ93qht/0xB8jRB
Content-Type: multipart/alternative; boundary="=-hEiEi+EyS0y3qEuoGjCl"

--=-hEiEi+EyS0y3qEuoGjCl
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

The GStreamer team is pleased to announce the first development release
in the API/ABI-unstable 1.27 release series.

The API/ABI-unstable 1.27 release series is for testing and development
purposes in the lead-up to the stable 1.28 series which is scheduled
for release in late 2025.

Any newly-added API can still change until that point.

This development release is primarily for developers and early
adopters.

Temporary release notes=C2=A0with details about changes and fixed bugs can
be found at:

   https://gstreamer.freedesktop.org/releases/1.28/#1.27.1


Highlights:

* Add AMD HIP plugin
* Add Vulkan H.264 encoder and add 10-bit support to Vulkan H.265
decoder
* Add LiteRT inference element
* Aggregator: expose current-level-* properties on sink pads
* Analytics: add general classifier tensor-decoder, facedetector, and
more convenience API
* alsa: Support enumerating virtual PCM sinks
* d3d12: Add d3d12remap element
* Wayland: Add basic colorimetrie support
* Webkit: New wpe2 plugin making use of the "WPE Platform API"
* MPEG-TS demuxer: Add property to disable skew corrections
* qml6gloverlay: support directly passing a QQuickItem for QML the
render tree
* unifxfdsink: Add a property to allow copying to make sink usable
with more upstream elements
* videorate: Revive "new-pref" property for better control in case of
caps changes
* wasapi2: Port to IMMDevice based device selection
* GstReferenceTimestampMeta can carry additional per-timestamp
information now
* Added GstLogContext API that allows to fix log spam in several
components
* New tracer hook to track when buffers are queued/dequeued in buffer
pools
* gst-inspect-1.0: Prints type info for caps fields now
* Pipeline graph dot files now contain information about active
tracers=20
* Python bindings: add Gst.Float wrapper,
Gst.ValueArray.append_value(), analytics API improvements
* cerbero packages: ship vvdec and curl plugins; ship wasapi2 on MingW
builds
* Removed the gstreamer-vaapi module which has now been superseded by
the va plugin
* Countless bug fixes, build fixes, memory leak fixes, and other
stability and reliability improvements

Binaries for Android, iOS, Mac OS X and Windows should be available
soon.

As always, please let us know of any issues you run into by filing an
issue or Merge Request in=C2=A0GitLab [1]:

Thanks!

[1] GitLab https://gitlab.freedesktop.org/gstreamer/gstreamer/

--=-hEiEi+EyS0y3qEuoGjCl
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html><head><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style><style>pre,code,address {
  margin: 0px;
}
h1,h2,h3,h4,h5,h6 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
}
ol,ul {
  margin-top: 0em;
  margin-bottom: 0em;
}
blockquote {
  margin-top: 0em;
  margin-bottom: 0em;
}
</style></head><body style=3D"overflow-wrap: break-word; -webkit-nbsp-mode:=
 space; line-break: after-white-space;"><p></p><div>The GStreamer team is p=
leased to announce the first development release in the API/ABI-unstable 1.=
27 release series.</div><div><br></div><div>The API/ABI-unstable 1.27 relea=
se series is for testing and development purposes in the lead-up to the sta=
ble 1.28 series which is scheduled for release in late 2025.</div><div><br>=
</div><div>Any newly-added API can still change until that point.</div><div=
><br></div><div>This development release is primarily for developers and ea=
rly adopters.</div><div><br></div><div style=3D"caret-color: rgb(46, 52, 54=
); color: rgb(46, 52, 54); font-family: Cantarell; font-size: 14.666667px; =
font-style: normal; font-variant-caps: normal; letter-spacing: normal; text=
-align: start; text-indent: 0px; text-transform: none; white-space: normal;=
 word-spacing: 0px; -webkit-tap-highlight-color: rgba(0, 0, 0, 0.4); -webki=
t-text-stroke-width: 0px; text-decoration: none;">Temporary <b>release note=
s</b><span style=3D"font-weight: 400;"><span class=3D"Apple-converted-space=
">&nbsp;</span>with details about changes and fixed bugs can be found at:</=
span></div><div style=3D"caret-color: rgb(46, 52, 54); color: rgb(46, 52, 5=
4); font-family: Cantarell; font-size: 14.666667px; font-style: normal; fon=
t-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: =
auto; text-align: start; text-indent: 0px; text-transform: none; white-spac=
e: normal; widows: auto; word-spacing: 0px; -webkit-tap-highlight-color: rg=
ba(0, 0, 0, 0.4); -webkit-text-stroke-width: 0px; text-decoration: none;"><=
br></div><div style=3D"caret-color: rgb(46, 52, 54); color: rgb(46, 52, 54)=
; font-family: Cantarell; font-size: 14.666667px; font-style: normal; font-=
variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: au=
to; text-align: start; text-indent: 0px; text-transform: none; white-space:=
 normal; widows: auto; word-spacing: 0px; -webkit-tap-highlight-color: rgba=
(0, 0, 0, 0.4); -webkit-text-stroke-width: 0px; text-decoration: none; marg=
in-left: 3ch;"><a href=3D"https://gstreamer.freedesktop.org/releases/1.28/#=
1.27.1" style=3D"color: rgb(46, 52, 54);">https://gstreamer.freedesktop.org=
/releases/1.28/#1.27.1</a></div><div><br></div><div><br></div><div><b>Highl=
ights:</b></div><div><b><br></b></div><div><ul><li>Add AMD HIP plugin</li><=
li>Add Vulkan H.264 encoder and add 10-bit support to Vulkan H.265 decoder<=
/li><li>Add LiteRT inference element</li><li>Aggregator: expose current-lev=
el-* properties on sink pads</li><li>Analytics: add general classifier tens=
or-decoder, facedetector, and more convenience API</li><li>alsa: Support en=
umerating virtual PCM sinks</li><li>d3d12: Add d3d12remap element</li><li>W=
ayland: Add basic colorimetrie support</li><li>Webkit: New wpe2 plugin maki=
ng use of the "WPE Platform API"</li><li>MPEG-TS demuxer: Add property to d=
isable skew corrections</li><li>qml6gloverlay: support directly passing a Q=
QuickItem for QML the render tree</li><li>unifxfdsink: Add a property to al=
low copying to make sink usable with more upstream elements</li><li>videora=
te: Revive "new-pref" property for better control in case of caps changes</=
li><li>wasapi2: Port to IMMDevice based device selection</li><li>GstReferen=
ceTimestampMeta can carry additional per-timestamp information now</li><li>=
Added GstLogContext API that allows to fix log spam in several components</=
li><li>New tracer hook to track when buffers are queued/dequeued in buffer =
pools</li><li>gst-inspect-1.0: Prints type info for caps fields now</li><li=
>Pipeline graph dot files now contain information about active tracers </li=
><li>Python bindings: add Gst.Float wrapper, Gst.ValueArray.append_value(),=
 analytics API improvements</li><li>cerbero packages: ship vvdec and curl p=
lugins; ship wasapi2 on MingW builds</li><li>Removed the gstreamer-vaapi mo=
dule which has now been superseded by the va plugin</li><li>Countless bug f=
ixes, build fixes, memory leak fixes, and other stability and reliability i=
mprovements</li></ul></div><div><br></div><div><b>Binaries</b> for Android,=
 iOS, Mac OS X and Windows should be available soon.</div><div><br></div><d=
iv>As always, please let us know of any issues you run into by filing an is=
sue or Merge Request in&nbsp;<a href=3D"https://gitlab.freedesktop.org/gstr=
eamer/gstreamer/">GitLab</a>:</div><div><br></div><div>Thanks!</div><div><s=
pan></span></div></body></html>

--=-hEiEi+EyS0y3qEuoGjCl--

--=-hViExmZ93qht/0xB8jRB
Content-Disposition: attachment; filename="GStreamer-1.27.1.txt"
Content-Transfer-Encoding: base64
Content-Type: text/plain; name="GStreamer-1.27.1.txt"; charset="UTF-8"

aHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3NyYy9nc3RyZWFtZXIvZ3N0cmVhbWVy
LTEuMjcuMS50YXIueHoKYWM4OTkxM2Y1YzM5YzRiMjE2NTE1ODE0ZTYzYjU0ZTg2NTk1M2EzN2Rh
Y2ZlMTQ5YWZhYWNkZmJlYjM5YTlmMQoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3Jn
L3NyYy9nc3QtcGx1Z2lucy1iYXNlL2dzdC1wbHVnaW5zLWJhc2UtMS4yNy4xLnRhci54egoyNWZm
MzU0ZjYzZjNmNGJmMGE2NmNiOTM4OTQ4ZWViMjAzYmU1ZTFkNWVmOGUwMTU0ZmI1NGU1NTMyNDJl
MjAxCgpodHRwczovL2dzdHJlYW1lci5mcmVlZGVza3RvcC5vcmcvc3JjL2dzdC1wbHVnaW5zLWdv
b2QvZ3N0LXBsdWdpbnMtZ29vZC0xLjI3LjEudGFyLnh6CmNhMWIxOGQ3NDY3NDRlOTM3MzhkMjlm
ZmNjN2QwMDAyOWM2NzcyOWVhOTc5N2E1ZTRmNWRiZDQxZDgyNGU2NmMKCmh0dHBzOi8vZ3N0cmVh
bWVyLmZyZWVkZXNrdG9wLm9yZy9zcmMvZ3N0LXBsdWdpbnMtdWdseS9nc3QtcGx1Z2lucy11Z2x5
LTEuMjcuMS50YXIueHoKYWM0ZmIwNTk0Y2M2NGE5YzBlNjc3OWI2OTcyMDJjMGI0NmU2MWQ5MDQ3
NDA4ZTY4N2NiMzY0NGZkYTE5MTYwNgoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3Jn
L3NyYy9nc3QtcGx1Z2lucy1iYWQvZ3N0LXBsdWdpbnMtYmFkLTEuMjcuMS50YXIueHoKOTczMDM4
MWM3MThiN2Q5OTA0MmE1ZTAyZTMzY2E1ZWNjYWQwYzhhNWM1MzI1YWNhNjY0OTE3MjhkZTliYTY0
ZQoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3NyYy9nc3QtbGliYXYvZ3N0LWxp
YmF2LTEuMjcuMS50YXIueHoKYWJkZDZjZjVmODUxZGFkMjI5NWJhNDJiYmJjY2Q0ZTk2ZTg1NjJl
ZjY3ZDNjNDVjNWUwMGZmOTNlZGFhNDA3YgoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Au
b3JnL3NyYy9nc3QtcnRzcC1zZXJ2ZXIvZ3N0LXJ0c3Atc2VydmVyLTEuMjcuMS50YXIueHoKNTM0
ZThkNjExM2YwZGFkZDdiNTE5ZDYyYWY2MGNmZjRhYWE3NjljMDgzYzg4ZGEwNzExM2FhYTE3ZTBm
OTAzNwoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3NyYy9nc3QtZWRpdGluZy1z
ZXJ2aWNlcy9nc3QtZWRpdGluZy1zZXJ2aWNlcy0xLjI3LjEudGFyLnh6Cjc5MTY5NTU5MjIwYjM4
ZTkxYzkzNzdlYTY5MWYzNmI1OThjODMzN2QxYTM0NDJhMGU3MTY5YzM5ODJjNDBhYjkKCmh0dHBz
Oi8vZ3N0cmVhbWVyLmZyZWVkZXNrdG9wLm9yZy9zcmMvZ3N0LXB5dGhvbi9nc3QtcHl0aG9uLTEu
MjcuMS50YXIueHoKZTE5YTNhNTc5YTBiMDMzMjQ3ZjVjYTEyYmQ4YTIxYTYyZWEzMmQyYzg3ZWMw
NjM3YTAzMzgyNjkyN2NhYjg3MQoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3Ny
Yy9nc3QtZGV2dG9vbHMvZ3N0LWRldnRvb2xzLTEuMjcuMS50YXIueHoKMGExY2FmZjljYWMzNzI2
ODA3YzQ5M2RlNWEwNTBhNWMyZjhkZWNiM2NjNjcxNDc0YzZhZjlmZDI1YWM5NzdiZgoKaHR0cHM6
Ly9nc3RyZWFtZXIuZnJlZWRlc2t0b3Aub3JnL3NyYy9nc3RyZWFtZXItc2hhcnAvZ3N0cmVhbWVy
LXNoYXJwLTEuMjcuMS50YXIueHoKYWQ1OTg2YzRkZTRiNTRlMTBlYmU1ZjhmODg0MGM0YmY1Y2U4
MmZkMjY4MzZhNTFlMWE2YjJlYzA3NjNhNDY2YwoKaHR0cHM6Ly9nc3RyZWFtZXIuZnJlZWRlc2t0
b3Aub3JnL3NyYy9nc3RyZWFtZXItZG9jcy9nc3RyZWFtZXItZG9jcy0xLjI3LjEudGFyLnh6CjE2
MTE1MGM3NzM2MjM5YzU2OWYwOWViZmFlYTYwNWVkNzhkY2Y5NGJkNjk0ZDBlYTkxMWVlZWY2Y2Vj
NzBiZGQKCg==


--=-hViExmZ93qht/0xB8jRB--

--=-AoUbzlYNSERoPqv2XTfe
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE1jcDLkW4xlhblFZWXS7ub280nXwFAmhtp+wACgkQXS7ub280
nXy2DBAA0uzfOe2WB8IMWx9lM6Ax5skn/LBMRqsRPuR55FMNsnpYlO+vZODcccqE
3vU4iQ5LGG3PaUTZUawLayI+xyIECWZMwxT9UvPL/ortesm6LV/+ntHLZhJD/wnA
vHB1FTxIboP7AZYEesaJIHnj78g6dqkIW35s63dz++uDr3lRbidp7OKti8l8JquK
IeqgnkIG+31wGmGVOBZNeymQ9uV8hO6IflONns07OFgsMZbEZuNaauS/nOozDsKb
uU6UNuhFZPGxvkqB/kOGfpzXEDLgw0XtW5AV53K7swc/msXpUsucFI8yDu/dn2Mv
Cj+aPh8GORMmE2SxlGxmzaGv/PmVAwj6n6LF7HsGZ6kwBJD6JhdJn4dfBwTlBsEh
9BN7M+i5S0NZ7Q7Z3Do/zRZdfQ9vDVNKELwzdfjWrk6PrL7EuFn8a0HVSRUM/8ry
HTDNeJGqN+N1rebNaQ0FWUgjO5Ju7+b5pfHFjCh9TMC388ZGfM4uhiERxQLFMS/J
9apZ6045yXgMkFqVtU6HzCczPQw5gHlNKE5zKqo6651hLcj+zN4sa+RcchafHLfp
DYTCAbBLySnzYY5YzMZxLOyGn3vBrbnzcNiSTNAyaJOt+QJOtqd+owzL767oD3Nn
wjP2Q/XvbWHmoSuQ3qfoLPWMxvcgXq4H33Beo970TkY7FXNxpY4=
=v5Sy
-----END PGP SIGNATURE-----

--=-AoUbzlYNSERoPqv2XTfe--