iT邦幫忙

2025 iThome 鐵人賽

DAY 15
0

Hello, 各位 iT 邦幫忙 的粉絲們大家好~~~

在本系列文因為工作上的產品應用需求,進而探索到很多層面的點滴事。透過每篇 EP 的分享把這些點滴整理,看起來或許像是個獨立的小品抒發文、也或許是一系列技術研究文!?

總之,就當作的隨手雜記文吧!

本篇是 莫名其妙就跟世界等級的 OpenSource 專案攪和了!? 系列文的 EP15。


EP07 有提到一件事:

這旋即就有願意開疆闢土的開發者從 .NET Core 時代就(注意是 .NET Core) 完成了示範 Avalonia UI 上的 Sample,陸續隨著 .NET Core 3.1 的繼任者 .NET 5 的推出,該範例也都有能夠正常運作。

gstreamer-netcore 這個 Github 上的開源專案,透過兩個 .NET Core 3.1 的 Sample Code,其中一個是 Console 專案;另一個是 Avalonia UI 的專案。

示範著如何繼續使用 .NET Core 3.1 之後的 .NET 架構下,如何運用 gstreamer-sharpGtkSharp 中的 gio-sharp、glib-sharp 這三套 binding 套件,來跟 gstreamer 的運作去進行 binding 轉換的處理。

vladkol 作者有特別在此 README 當中提醒要使用 gstreamer-netcore 這套程式庫用戶:

It doesn't work with MSVC build...

然後前一回 EP14 不是有特別提醒要在 Windows 上要安裝 gstreamer 時,請下載 MSVC 版本來安裝嗎?

"是這樣沒錯,但不是這樣"
BanG Dream! It's MyGO!!!!! 網路哽圖
(取自 BanG Dream! It's MyGO!!!!! 網路哽圖)

咳~~~又離題了...


簡單說如果在 Windows 上雖然按照 gstreamer 官方的說法是 "建議" 安裝 MSVC 的版本,但礙於要透過 gstreamer-netcore 設計方式來使用 gstreamer 時,又只能選擇使用 MinGW 的版本,而整體運作起來也相當正常,所以就只好先採用 MinGW 的版本。

等等,那會有什麼影響?

詳情可見 Gstreamer 官網在 Download for Windows 的部分有提到的:
toolchain-compatibility-notes

toolchan-compatibility-notes

這東西是 C/C++ 那邊一團亂七八糟的狀況而衍生來的,就跟 .NET Framework 穢土轉生成 .NET 的過程,隨著年代的推進,那個發展的過程就是一整個很複雜!

而從 gstreamer 目前 (version: 1.26.5) 所發佈的穩定版本,只看一個很直觀的屬性:檔案大小。
gstreamer-download-for-windows-01

就同樣拿 "x86_64" 的來比較,兩個版本的安裝檔大小就差很多了,更別說安裝完畢後所佔的儲存空間大小差異。
gstreamer-download-for-windows-02

gstreamer-download-for-windows-03

那各位會怎麼選擇?


上一篇
EP 14
系列文
莫名其妙就跟世界等級的 OpenSource 專案攪和了!?15
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言