The kodi 17.6-r1 ebuild correctly identifies that kodi 17 does not support ffmpeg >= 3.4: > system-ffmpeg? ( > >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,openssl,postproc] > <media-video/ffmpeg-3.4 However, the recently available kodi 17.6-rs ebuild has changed this: > system-ffmpeg? ( > >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,openssl,postproc] > !~media-video/ffmpeg-3.4 This change is daft, because now ffmpeg has a 3.4.1 ebuild, the latter doesn't block it whereas the former did. On my system this causes sound corruption when playing videos in kodi (in previous kodi versions it was video not showing). Masking ffmpeg >= 3.4 fixes the problem for me. Why was this change done, given the developers of kodi have stated kodi 17 will never support ffmpeg 3.4+, as they're concentrating on kodi 18.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbdbe218aa58a2fe9118b23b0562bb0e83852581 commit dbdbe218aa58a2fe9118b23b0562bb0e83852581 Author: Alexis Ballier <aballier@gentoo.org> AuthorDate: 2018-01-19 11:06:06 +0000 Commit: Alexis Ballier <aballier@gentoo.org> CommitDate: 2018-01-19 11:06:06 +0000 Revert "media-tv/kodi: Tweak ffmpeg dep to mark only 3.4 as broken with Kodi." This reverts commit 5c4b195d0e944d418f80a85650a10cbde26ac332. Bug: https://bugs.gentoo.org/645000 media-tv/kodi/kodi-17.6-r2.ebuild | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)}
(In reply to faminebadger from comment #0) My workaround was unforcing -system-ffmpeg and building kodi with -system-ffmpeg, which works fine - and also was my proposal to resolve #634802, but apparently this was tantamount to heresy, so corrupted audio playback apparenty was fine, wheres using kodi's sandboxed ffmpeg (and installing the latest ffmpeg for all other packages) was not *shrug*
How do you unforce system-ffmpeg ? Custom ebuild ?
(In reply to Mark Nowiasz from comment #2) I don't really understand your comment, or what you're complaining about, but making the software go from working to not working without any user interaction or notification clearly isn't fine. If the user needed to do something else to make it work again (e.g. un-force something), that should have been done automatically or at the very least the user should have been notified that it was required.
(In reply to Kajzer from comment #3) > How do you unforce system-ffmpeg ? > Custom ebuild ? You don't need a custom ebuild. Just create /etc/portage/profile/package.use.force with the content media-tv/kodi -system-ffmpeg this nullifies the entry in /usr/portage..../package.use.force After that, you are free to use -system-ffmpeg as an use flag for kodi
(In reply to faminebadger from comment #4) > (In reply to Mark Nowiasz from comment #2) > If the user needed to do something else to make it work again (e.g. un-force > something), that should have been done automatically or at the very least > the user should have been notified that it was required. Hi, this refers to the discussion in 634802. Basically, my point exactly. The user shouldn't be forced to jump through hoops (like the /etc/portage/profile/package.use.force entry) to have a system where kodi runs smoothly *and* all other packages can use the latest version of ffmpeg. The current situation is a no-brainer: Kodi forces all other ffmpeg consumers to use an old version. With an easy use of -system-ffmpeg only kodi would be using it's own slightly obsolete version of ffmpeg, and the rest of the world could use the current version.
(In reply to Mark Nowiasz from comment #5) > You don't need a custom ebuild. Just create > /etc/portage/profile/package.use.force with the content > media-tv/kodi -system-ffmpeg Thanks, I'll do that. I see what you mean with all this about forcing, totally unnecessary, same thing happened with 3.4.0, I guess that dev working on this was thinking "ah well, it compiles it must be fine" without bothering to actually check is it working or not and then users for days have to figure out on their own what's going on and why Kodi isn't working. Or maybe this is done by someone who wants to be a dev and he just needs to prove himself by making this to work with the latest ffmpeg no matter what. If there's an option to use bundled ffmpeg then why not have that as an option, should be opposite, bundled ffmpeg should be forced and who wants to experiment can use latest ffmpeg.
(In reply to Kajzer from comment #7) > (In reply to Mark Nowiasz from comment #5) > > You don't need a custom ebuild. Just create > > /etc/portage/profile/package.use.force with the content > > media-tv/kodi -system-ffmpeg > > Thanks, I'll do that. > > I see what you mean with all this about forcing, totally unnecessary, same > thing happened with 3.4.0, I guess that dev working on this was thinking "ah > well, it compiles it must be fine" without bothering to actually check is it > working or not and then users for days have to figure out on their own > what's going on and why Kodi isn't working. Or maybe this is done by someone > who wants to be a dev and he just needs to prove himself by making this to > work with the latest ffmpeg no matter what. If there's an option to use > bundled ffmpeg then why not have that as an option, should be opposite, > bundled ffmpeg should be forced and who wants to experiment can use latest > ffmpeg. Personal attacks are not cool. This "dev" you're insulting is a human being, doing this work unpaid on his free time. Regarding using the bundled version of ffmpeg, what you're suggesting is against policy, and for good reason: https://wiki.gentoo.org/wiki/Why_not_bundle_dependencies Bugs happen - it's software. Report them, and we figure out fixes. Personal attacks are not necessary. Keep it productive.
(In reply to Mark Nowiasz from comment #6) > (In reply to faminebadger from comment #4) > > (In reply to Mark Nowiasz from comment #2) > > > If the user needed to do something else to make it work again (e.g. un-force > > something), that should have been done automatically or at the very least > > the user should have been notified that it was required. > > Hi, this refers to the discussion in 634802. Basically, my point exactly. > The user shouldn't be forced to jump through hoops (like the > /etc/portage/profile/package.use.force entry) to have a system where kodi > runs smoothly *and* all other packages can use the latest version of ffmpeg. > > The current situation is a no-brainer: > > Kodi forces all other ffmpeg consumers to use an old version. With an easy > use of -system-ffmpeg only kodi would be using it's own slightly obsolete > version of ffmpeg, and the rest of the world could use the current version. Good, then I think we're in agreement then regarding desired behaviour :) For now I've gone with masking ffmpeg >=3.4 in package.mask. I'm not sure if I want to unforce system-ffmpeg - I think I probably prefer getting to kodi 18 asap :)
Also, media-tv/kodi-17.6-r2 (currently the latest in the tree) has this dependency: >=media-video/ffmpeg-3.1.11 <media-video/ffmpeg-3.4 So no one should be hitting any bugs regarding kodi 17 and ffmpeg 3.4, as it's not a permitted combination.
(In reply to Craig Andrews from comment #10) > Also, media-tv/kodi-17.6-r2 (currently the latest in the tree) has this > dependency: > >=media-video/ffmpeg-3.1.11 > <media-video/ffmpeg-3.4 > > So no one should be hitting any bugs regarding kodi 17 and ffmpeg 3.4, as > it's not a permitted combination. That's because of the fix Mark mentioned in comment 1 (https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbdbe218aa58a2fe9118b23b0562bb0e83852581). Before that fix, the line was !media-video/ffmpeg-3.4, which allowed ffmpeg-3.4.1 to match, which then fails.
(In reply to Craig Andrews from comment #8) > Bugs happen - it's software. Report them, and we figure out fixes. Personal > attacks are not necessary. Keep it productive. There are no personal attacks here, I as a user don't have to know all the rules like "why not bundled deps" , which btw I don't quite understand as the firefox for example has that option (bundled deps), maybe there are more packages like that. All I was saying is if Kodi devs don't support ffmpeg 3.4.x then why forcing it, I didn't had to use unforcing before this situation, didn't even know how. Now I see that there is a <ffmpeg-3.4.1 , that should've been in there long time ago.
This change is needed even for 17.3 (the current stable).
This bug has re-occurred? Like the last commenter above me, I notice that this happens to media-tv/kodi-17.3-r1 . I did an emerge update and my audio got all choppy. After experimenting with a few different possibly relevant things, I found that ffmpeg had been updated 3.3.6 -> 3.4.5. Downgrading it back made kodi work again. I've tried the instructions in comment#5 but they cause the kodi build to fail, so for now I've masked ffmpeg >=3.4 .
Just for reference, a new bug report has been opened here https://bugs.gentoo.org/678222 Comment 5 says when the fixed version will be stabilized.