New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
handbrake: switch to libav_12 #38811
handbrake: switch to libav_12 #38811
Conversation
Since |
mp4v2, mpeg2dec, x264, x265, libmkv, | ||
fontconfig, freetype, hicolor-icon-theme, | ||
glib, gtk3, intltool, libnotify, | ||
gst_all_1, dbus-glib, udev, libgudev, libvpx, | ||
useGtk ? true, wrapGAppsHook ? null, libappindicator-gtk3 ? null, useFdk ? false, fdk_aac ? null | ||
useGtk ? true, wrapGAppsHook ? null, libappindicator-gtk3 ? null, | ||
useFfmpeg ? false, libav_12 ? null, ffmpeg ? null, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here is the switch.
libgudev | ||
]) ++ (lib.optionals useFdk [fdk_aac]); | ||
libgudev] | ||
++ (if useFfmpeg then [ffmpeg] else [libav_12]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I made it this way. Is it right way?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if handbrake is not supposed to work with ffmpeg, there is no point in having this as a compilation option.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I followed the history of HandBrake through many years. And also FFMpeg -> LibAV fork and their competition and feuds. So I understand their stands and words, who main developers of HandBrake are, and why they use LibAV.
People can use HandBrake with FFMpeg if they would have need, or gains from that. But HB upstream would say to them - "is not supported".
Many people do compile and use it it with FFMpeg.
And developers somehow support FFMpeg (defacto).
They stance is much because of feuds they had in the past, and because the situation is painful for LibAV. And their experience with distribution package maintainers.
Like, current NixOS version works only on FFMpeg, and I do not see people changing that through the years.
Since we do it as nondefault option - it is only an additional option.
If we serious about that, HandBrake distributes with it's own versions of LibAV and all other libraries. We have policy - not to do that, and we successfully use upstream NixOS packages - but that is not supported by HB upstream.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The main thing is to make default way - the upstream supported. While allow people the freedom also.
That would allow us to talk to upstream and get more support from upstream.
Because HandBrake otherwise, if we not comply and people would post bugreports to them - they have a pattern of blacklisting distributions and packages.
They would just respond "use official upstream sources, - do not use X package." after some number of bugreports, if our default package would not comply.
This is a major dependency change. This is probably the right time to call maintainer: @wmertens. Good day to you, I make my first pull requests to I went, and learned some Haskell to get into Nix ) |
@@ -43,12 +45,13 @@ stdenv.mkDerivation rec { | |||
fribidi fontconfig freetype jansson zlib | |||
libass libiconv libsamplerate libxml2 bzip2 | |||
libogg libopus libtheora libvorbis libdvdcss a52dec libmkv | |||
lame ffmpeg libdvdread libdvdnav libbluray mp4v2 mpeg2dec x264 x265 libvpx | |||
] ++ (lib.optionals useGtk [ | |||
lame ffmpeg libdvdread libdvdnav libbluray mp4v2 mpeg2dec x264 x265 libvpx] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We keep spaces around items in a list.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok.
Not my style, but I would do in community style to become consistent, on the next time.
I learn.
@Mic92 Now we (I) can continue with talk on HB. |
My other comment seems to have not made it through. I suggest you add yourself to the maintainer list for HB. |
Motivation for this change
Main contributors of HandBrake say that project is developed for
libav
:HandBrake/HandBrake#1273 (comment)
It was tested that HandBrake works with never
libav_12
in our repositories.Alternative to use
ffmpeg
included.Things done
build-use-sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)