Hello
@ZFGokuSSJ1, I spent another day trying to get it working...
But I haven't had as much success as you have, even using the identical steps.
What I have been getting to work is video playback via command line
gst-launch-1.0 playbin uri=file://the/location/of/my/testfile/SC_0010A.vob
as you have - including sound.
First, it wouldn't do that on the Steam Deck (with the default installation of gstreamer).
After the following commands it would play the video file via gst-launch-1.0 command....
Bash:
passwd
sudo pacman-key --init
sudo pacman-key --populate archlinux
sudo pacman-key --refresh-keys
sudo steamos-readonly disable
sudo pacman -S gst-plugins-base gst-plugins-base-libs gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav libde265 lib32-gst-plugins-base lib32-gst-plugins-base-libs lib32-gst-plugins-good
sudo steamos-readonly enable
As for video inside Bottles/the game, I followed your steps to the letter, including BOTTLES_USE_SYSTEM_GSTREAMER as described in step 3. But it still doesn't play back the video. All I get is "No combination of filters could be found to render the stream." followed by "DX MCI Error - Error loading video!" and
"Missing movie c:\vob\sc_0010a.vob" (with the default GOG exe).
Or "Error Rendering file! (0x80070003)".
Bottles has the following variables set up via Flatseal
Code:
PATH=/app/bin:/app/utils/bin:/usr/bin:/usr/lib/extensions/vulkan/MangoHud/bin/:/usr/bin:/usr/lib/extensions/vulkan/OBSVkCapture/bin/
GST_PLUGIN_SYSTEM_PATH=/usr/lib/gstreamer-1.0:/usr/lib32/gstreamer-1.0
LD_LIBRARY_PATH=/app/lib:/usr/lib:/app/lib32:/usr/lib32
I even allowed Bottles access to all files (system, shared libs, execs, configs, other files) - just for a test run. That didn't help either.
I started Bottles from the command line to get its direct log outputs in the console:
Code:
> /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=bottles --file-forwarding com.usebottles.bottles
(bottles:2): Gtk-CRITICAL **: 18:07:52.465: gtk_widget_set_parent: assertion '_gtk_widget_get_parent (widget) == NULL' failed
18:07:52 (INFO) Library saved
18:07:54 (INFO) Setting Key use_steam_runtime=True for bottle wine-x86…
(bottles:2): Gtk-CRITICAL **: 18:07:54.589: gtk_box_append: assertion 'gtk_widget_get_parent (child) == NULL' failed
18:07:57 (INFO) Launching an executable…
18:07:57 (WARNING) Windows path detected. Avoiding validation.
18:07:57 (INFO) Using Wine Starter -- run
18:07:57 (INFO) Using Steam runtime scout
18:07:57 (INFO) Using EasyAntiCheat runtime
18:07:57 (INFO) Using BattlEye runtime
002c:err:wineboot:process_run_key Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -r" (126).
winegstreamer: failed to create decodebin, are 32-bit GStreamer "base" plugins installed?
(wine:194): GStreamer-CRITICAL **: 18:08:00.561: gst_element_set_state: assertion 'GST_IS_ELEMENT (element)' failed
(wine:194): GStreamer-CRITICAL **: 18:08:00.561: gst_pad_unlink: assertion 'GST_IS_PAD (sinkpad)' failed
(wine:194): GStreamer-CRITICAL **: 18:08:00.561: gst_object_unref: assertion 'object != NULL' failed
(wine:194): GStreamer-CRITICAL **: 18:08:00.561: gst_element_set_bus: assertion 'GST_IS_ELEMENT (element)' failed
Very strange, as all 32-bit base plugins are installed, as I've re-checked here:
Code:
>pacman -Qs gstreamer
local/gstreamer 1.20.4-1
Multimedia graph framework - core
local/lib32-gstreamer 1.20.3-2
Multimedia graph framework (32-bit) - core
local/phonon-qt5-gstreamer 4.10.0-3
Phonon GStreamer backend for Qt5
>pacman -Qs gst-plugins
local/gst-plugins-bad 1.20.4-1
Multimedia graph framework - bad plugins
local/gst-plugins-bad-libs 1.20.4-1
Multimedia graph framework - bad
local/gst-plugins-base 1.20.4-1
Multimedia graph framework - base plugins
local/gst-plugins-base-libs 1.20.4-1
Multimedia graph framework - base
local/gst-plugins-good 1.20.4-1
Multimedia graph framework - good plugins
local/gst-plugins-ugly 1.20.4-1
Multimedia graph framework - ugly plugins
local/lib32-gst-plugins-base 1.20.3-2
Multimedia graph framework (32-bit) - base
local/lib32-gst-plugins-base-libs 1.20.3-2
Multimedia graph framework (32-bit) - base
local/lib32-gst-plugins-good 1.20.3-2
Multimedia graph framework (32-bit) - good plugins
I have not been able to install the "bad" and "ugly" plugins for win32, as they are not installable via pacman (not in repro any more, it would seem).
What also fails on my machine is playing the file with the 32bit version ov gst-launch.
Code:
> gst-launch-1.0-32 playbin uri=file://the/location/of/my/testfile/SC_0010A.vob
ERROR: pipeline could not be constructed: no element "playbin".
Maybe you have better luck with the 32bit gst-launch, pointing towards an actually usable warning or error...