Summary: | media-plugins/gst-plugins-libav-1.6 is broken with libav | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Siuchung Cheung (Clement) <clement.cc> |
Component: | Current packages | Assignee: | GStreamer package maintainers <gstreamer> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | media-video |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://bugzilla.gnome.org/show_bug.cgi?id=758183 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | libav.patch |
Description
Siuchung Cheung (Clement)
2015-11-13 11:27:11 UTC
what libav version are you running? For this concrete case we could maybe revert http://cgit.freedesktop.org/gstreamer/gst-libav/commit/?id=7afaf5c02050fcac18006abfdc01287f8dba16eb when libav is used... could you confirm if it solves the problem? (I use ffmpeg for a long time) (In reply to Pacho Ramos from comment #2) > For this concrete case we could maybe revert > http://cgit.freedesktop.org/gstreamer/gst-libav/commit/ > ?id=7afaf5c02050fcac18006abfdc01287f8dba16eb when libav is used... could you > confirm if it solves the problem? (I use ffmpeg for a long time) Anyway, I would also report this issue with upstream to see if they are willing to help a bit to get the "system-libav" option working again ;) Maybe they didn't break compat with libav on purpose and the are willing to fix the bug :/ Created attachment 416902 [details, diff] libav.patch Turns out that's still not enough: [:~] % gst-inspect-1.0 -b (gst-plugin-scanner:5998): GStreamer-WARNING **: Failed to load plugin '/usr/lib64/gstreamer-1.0/libgstlibav.so': /usr/lib64/gstreamer-1.0/libgstlibav.so: undefined symbol: av_frame_get_channels Blacklisted files: libgstlibav.so Total count: 1 blacklisted file That comes from this commit: http://cgit.freedesktop.org/gstreamer/gst-libav/commit/ext/libav/gstavauddec.c?id=3b6c656e2552c936a17ff6bb9a0e753fcc42e4ce This combined patch "fixes" both issues and I can verify that the plugin actually works with libav-11.3-r1. (But you must close firefox and reopen it for the fix to take effect.) I put "fix" in quotes because the 2nd revert removes functionality! I cannot even recreate that change without ffmpeg accessors. Because in libav, there's simply no such field called channel in that struct. The functionality is just not there in libav. That's it. I'm spending my weekend going back to ffmpeg. But those who want to stay on libav are free to drop this path in the right place under /etc/portage/patches/ for now. Can you please report this bug to upstream -> bugzilla.gnome.org Otherwise they will be deviating from libav and making it harder to keep it compatible with it :/ Thanks a lot Looks like upstream won't help on keeping it working for libav :( Maybe we should use bundled ffmpeg when "libav" USE is set Reading the upstream report, using the bundled ffmpeg will be the only option for "libav" USE [master 97bb55c] media-plugins/gst-plugins-libav: We need to rely on internal ffmpeg copy for letting libav users to use the plugin as upstream has decided to stop trying to make this compatible with libav lib 1 file changed, 70 insertions(+) create mode 100644 media-plugins/gst-plugins-libav/gst-plugins-libav-1.6.2-r1.ebuild |