On Mon Oct 2 19:48:25 2023 +0000, Alfred Agrell wrote:
mpegpsdemux is part of libgstmpegpsdemux.so. It's unrelated to ffmpeg, and it's present in Glorious-Eggroll already, nothing to do here. (However, it's absent from upstream Proton.) mpegvideoparse is in libgstvideoparsersbad.so. Likewise, this is part of GE but not Proton, and is not part of ffmpeg. avdec_mpeg2video is in libgstlibav.so, which is part of Proton - but the exact set of decoders it offers depends on which ffmpeg you have installed, and how it's configured. Did you rebuild ffmpeg and copy that into an existing Wine or Proton installation, without changing anything else? If yes, GStreamer probably didn't notice the update. `touch` libgstlibav.so, or delete your GStreamer plugin cache (probably at ~/.cache/gstreamer-1.0/registry.x86_64.bin or ~/steam/steamapps/compatdata/1234560/gstreamer-1.0/registry.x86_64.bin). You can also grep that registry file for avdec_mpeg2video: if that string is absent, then there's something wrong with your GStreamer or your ffmpeg, but if it does exist, the problem is on Wine's side (probably in this MR). (The cache is binary, but grep telling you whether the binary file matches is good enough.) Alternatively, I may simply be wrong; I've never compiled Proton, GE, or ffmpeg. Good call on trying mpeg2video; if it exists, it's probably better than plain mpegvideo.
We built proton-ge entirely, with as you can see in the previous link, the makefile where the gst and ffmpeg build parameters are set.