jazzfool / iced_video_player

Video player component for Iced
Apache License 2.0
112 stars 16 forks source link

Add non-str pipeline support #12

Open eaglesemanation opened 9 hours ago

eaglesemanation commented 9 hours ago

Fun fact - Raspberry Pi 5 Vulkan implementation limits texture size to 2048. And as far as I understand this lib allocates a texture based on video source size, not on the size of output widget, which I guess makes sense due to resizing requirements. But the result is that trying to use 4k camera causes iced to panic. My solution? Query resolutions that are provided by camera and select highest one below 2048 in both dimensions. But to do that, I need access to GStreamer elements, so here is the PR.

eaglesemanation commented 4 hours ago

Actually I've solved my issue by using v4l2 and doing a bit of templating with current implementation, but I still think allowing user to define pipeline however they want might be useful