Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 570278 - media-sound/mixxx-2.0.0: version bump
Summary: media-sound/mixxx-2.0.0: version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal enhancement
Assignee: Professional Audio Applications Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-30 15:47 UTC by David
Modified: 2016-07-22 02:50 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
mixxx-2.0.0.ebuild (mixxx-2.0.0.ebuild,3.31 KB, text/plain)
2016-01-02 15:59 UTC, gerion
Details
ebuild based on the 1.11.0 (mixxx-2.0.0.ebuild,1.91 KB, text/plain)
2016-01-06 22:13 UTC, Tiger
Details
mixxx-2.0.0.ebuild (mixxx-2.0.0.ebuild,2.61 KB, text/plain)
2016-01-12 04:58 UTC, Alex Barker
Details
files/mixxx-2.0.0-docs.patch (mixxx-2.0.0-docs.patch,445 bytes, patch)
2016-01-12 04:58 UTC, Alex Barker
Details | Diff
files/mixxx-2.0.0-system-libs.patch (mixxx-2.0.0-system-libs.patch,6.58 KB, patch)
2016-01-12 04:59 UTC, Alex Barker
Details | Diff
mixxx-2.0.0.ebuild (mixxx-2.0.0.ebuild,2.59 KB, text/plain)
2016-01-12 05:00 UTC, Alex Barker
Details

Note You need to log in before you can comment on or make changes to this bug.
Description David 2015-12-30 15:47:24 UTC
The Mixxx Team has just released the long awaited 2.0.0 version.

Based on the work of the proaudio overlay, I just pushed the new ebuild to my local overlay and added :

 - Qt5 support
 - Fix requierement to work with the official Gentoo portage tree.

See https://github.com/dguglielmi/sunny-overlay/tree/master/media-sound/mixxx

Reproducible: Always
Comment 1 gerion 2016-01-02 15:58:49 UTC
Thank you for the ebuild. I tried to compile it with my ffmpeg and it does not work. Maybe you can restrict the slot. I also file this bug against Mixxx bugtracker [1] and Daniel Schürmann gave some advices. Let me cite:
> * Do not enable ffmpeg support on productive systems. It is an experimental feature and suffers seek and performance issues.
> * Please build against qt4. qt5 support is experimental
> * If you remove soundtouch and build against systems version of soundtouch, be sure it has SSE and ffast_math optimization is enabled, otherwise Mixxx will suffer performance issues when using keylock.
> * please provide taglib 1.10 along with Mixxx 2.0

I've tried to address some of these issues in the attached ebuild.

I also create a new bugreport for taglib #570610.

[1] https://bugs.launchpad.net/mixxx/+bug/1530484
Comment 2 gerion 2016-01-02 15:59:40 UTC
Created attachment 421642 [details]
mixxx-2.0.0.ebuild
Comment 3 Andrey 2016-01-02 16:58:23 UTC
Hi! Thanks for the ebuild file. Could you also provide a patches (system-libs.patch and docs.patch).

Thank you
Comment 4 Andrey 2016-01-02 18:52:22 UTC
Sorry for bothering. I've found a link to your overlay and successfully built the app. Thank you again.
Comment 5 gerion 2016-01-04 17:53:26 UTC
taglib-1.10 is in the tree, so the version can be forced.
Comment 6 David 2016-01-04 18:04:10 UTC
(In reply to gerion from comment #1)
> Thank you for the ebuild. I tried to compile it with my ffmpeg and it does
> not work. Maybe you can restrict the slot. I also file this bug against
> Mixxx bugtracker [1] and Daniel Schürmann gave some advices. Let me cite:
> > * Do not enable ffmpeg support on productive systems. It is an experimental feature and suffers seek and performance issues.
> > * Please build against qt4. qt5 support is experimental
> > * If you remove soundtouch and build against systems version of soundtouch, be sure it has SSE and ffast_math optimization is enabled, otherwise Mixxx will suffer performance issues when using keylock.
> > * please provide taglib 1.10 along with Mixxx 2.0
> 
> I've tried to address some of these issues in the attached ebuild.
> 
> I also create a new bugreport for taglib #570610.
> 
> [1] https://bugs.launchpad.net/mixxx/+bug/1530484

Thanks a lot, I just merged your modifications to my overlay.

I will work with your compile issue with ffmpeg. It's probably better to remove the ffmpeg flag yet.
Comment 7 David 2016-01-04 18:09:23 UTC
(In reply to gerion from comment #5)
> taglib-1.10 is in the tree, so the version can be forced.

done too. Thanks :)
Comment 8 David 2016-01-04 18:20:12 UTC
I think that we need a new "system-libsoundtouch" flag to depend on media-libs/libsoundtouch, and work "by default" with the embedded libsoundtouch.
Comment 9 Tiger 2016-01-06 22:13:30 UTC
Created attachment 422166 [details]
ebuild based on the 1.11.0

- A more "simple" ebuild based on the 1.11.0. Dropped Qt5 and FFMPEG support, as mentionned above both features are experimental at the moment.

- Dropped "pulseaudio" USE flag that is no more declared and used by the scons files.

- Fixed dependencies, they may need some adjustement probably.

- Added new USE flags related to new/missing features : opus , perftools
Comment 10 Alex Barker 2016-01-12 04:12:11 UTC
Hey, I was maintaining a trunk version of this for 1.12 and later in the proaudio overlay.  Ill see if my patches work.
Comment 11 Alex Barker 2016-01-12 04:58:06 UTC
Created attachment 422628 [details]
mixxx-2.0.0.ebuild
Comment 12 Alex Barker 2016-01-12 04:58:40 UTC
Created attachment 422630 [details, diff]
files/mixxx-2.0.0-docs.patch
Comment 13 Alex Barker 2016-01-12 04:59:06 UTC
Created attachment 422632 [details, diff]
files/mixxx-2.0.0-system-libs.patch
Comment 14 Alex Barker 2016-01-12 05:00:55 UTC
Created attachment 422634 [details]
mixxx-2.0.0.ebuild
Comment 15 Alex Barker 2016-01-12 05:06:08 UTC
Please note that I took the qt5 stuff from the build on here and did not test the old qt4 version.
Comment 16 David 2016-01-12 10:05:37 UTC
(In reply to Tiger from comment #9)
> Created attachment 422166 [details]
> ebuild based on the 1.11.0
> 
> - A more "simple" ebuild based on the 1.11.0. Dropped Qt5 and FFMPEG
> support, as mentionned above both features are experimental at the moment.
> 
> - Dropped "pulseaudio" USE flag that is no more declared and used by the
> scons files.
> 
> - Fixed dependencies, they may need some adjustement probably.
> 
> - Added new USE flags related to new/missing features : opus , perftools

Yes, we can remove pulseaudio flag now that the mixxx.desktop file, handle the possibility to launch mixxx with or without pasuspender.

--
Exec=sh -c "pasuspender mixxx || mixxx"
--

For opus flag we need to depend on media-libs/opus and media-libs/opusfile.

I will modify my overlay with your modifications.
Comment 17 David 2016-01-12 10:33:10 UTC
(In reply to David from comment #16)
> (In reply to Tiger from comment #9)
> > Created attachment 422166 [details]
> > ebuild based on the 1.11.0
> > 
> > - A more "simple" ebuild based on the 1.11.0. Dropped Qt5 and FFMPEG
> > support, as mentionned above both features are experimental at the moment.
> > 
> > - Dropped "pulseaudio" USE flag that is no more declared and used by the
> > scons files.
> > 
> > - Fixed dependencies, they may need some adjustement probably.
> > 
> > - Added new USE flags related to new/missing features : opus , perftools
> 
> Yes, we can remove pulseaudio flag now that the mixxx.desktop file, handle
> the possibility to launch mixxx with or without pasuspender.
> 
> --
> Exec=sh -c "pasuspender mixxx || mixxx"
> --
> 
> For opus flag we need to depend on media-libs/opus and media-libs/opusfile.
> 
> I will modify my overlay with your modifications.

I will also check what is enabled by default by the Mixxx team on Ubuntu.
Comment 18 Tiger 2016-02-01 19:08:22 UTC
Is it possible to integrate at least one "working" ebuild with the ~arch keywords ?

I'm using Mixxx 2.0.0 and have played with it since about a month now, it is working like a charm. It was merged with my proposed ebuild above and the enabled USE flags "bulk debug hid mp3" (I have also compiled and tested it quickly with all USE flags enabled).

Also as taglib 1.10 is in the official tree I see nothing blocking Mixxx 2.0.0 to join it too.

Thanks in advance.
Comment 19 Alex Barker 2016-02-04 06:06:59 UTC
(In reply to Tiger from comment #18)
> Is it possible to integrate at least one "working" ebuild with the ~arch
> keywords ?
> 
> I'm using Mixxx 2.0.0 and have played with it since about a month now, it is
> working like a charm. It was merged with my proposed ebuild above and the
> enabled USE flags "bulk debug hid mp3" (I have also compiled and tested it
> quickly with all USE flags enabled).
> 
> Also as taglib 1.10 is in the official tree I see nothing blocking Mixxx
> 2.0.0 to join it too.
> 
> Thanks in advance.

So if I remember correctly there is an issue with the >fidlib-0.9.10-r1 dependency.  The mixxx build currently uses internal depends for a lot of these that have mixxx patches applied.  These and a few other patches are floating around github.  See:

https://github.com/JamesHight/fidlib
https://github.com/JamesHight/fidlib/commits?author=kwhat

I have no idea who is currently maintaining fidlib, if anyone.  We may want to include these changes as patches, or talk to the mixxx team about talking over library maintenance.  Either way, that dependency issue will need to be resolved prior to this getting in the portage repo.

One a related note, I don't believe the ffmpeg use flag has worked since I have been involved @1.6.  Has anyone verified if that has changed?
Comment 20 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2016-07-22 00:22:52 UTC
commit 6abca74d6a9f9b8a44bd884faecbce9a1cd27bf7
Author: Lars Wendler <polynomial-c@gentoo.org>
Date:   Fri Jul 22 02:20:03 2016

    media-sound/mixxx: Added qt5 support.

    Package-Manager: portage-2.3.0
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

commit 9723eefbe026f6ce88b084de3a9637a054d88661
Author: Lars Wendler <polynomial-c@gentoo.org>
Date:   Thu Jul 21 23:16:21 2016

    media-sound/mixxx: Bump to version 2.0.0

    Package-Manager: portage-2.3.0
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Comment 21 jospezial 2016-07-22 02:50:06 UTC
(In reply to Alex Barker from comment #19)
> One a related note, I don't believe the ffmpeg use flag has worked since I
> have been involved @1.6.  Has anyone verified if that has changed?

No still does not work with media-sound/mixxx-2.0.0-r1::gentoo ffmpeg-9999.

Because mixxx-2.0.0/src/encoder/encoderffmpegcore.h has obsolete
#include <libavutil/audioconvert.h>

After removing that line it a lot of not declared and deprecated warnings and errors follow:

src/encoder/encoderffmpegcore.cpp:101:34: warning: ‘AVStream::codec’ is deprecated [-Wdeprecated-declarations]
         avcodec_close(m_pStream->codec);
                                  ^
In file included from src/encoder/encoderffmpegresample.h:32:0,
                 from src/encoder/encoderffmpegcore.h:22,
                 from src/encoder/encoderffmpegcore.cpp:25:
/usr/include/libavformat/avformat.h:880:21: note: declared here
     AVCodecContext *codec;
                     ^
src/encoder/encoderffmpegcore.cpp: In member function ‘int EncoderFfmpegCore::writeAudioFrame(AVFormatContext*, AVStream*)’:
src/encoder/encoderffmpegcore.cpp:294:45: error: ‘avcodec_alloc_frame’ was not declared in this scope
     AVFrame *l_SFrame = avcodec_alloc_frame();
                                             ^
src/encoder/encoderffmpegcore.cpp:311:27: warning: ‘AVStream::codec’ is deprecated [-Wdeprecated-declarations]
     l_SCodecCtx = stream->codec;
                           ^
In file included from src/encoder/encoderffmpegresample.h:32:0,
                 from src/encoder/encoderffmpegcore.h:22,
                 from src/encoder/encoderffmpegcore.cpp:25:
/usr/include/libavformat/avformat.h:880:21: note: declared here
     AVCodecContext *codec;
                     ^
src/encoder/encoderffmpegcore.cpp:311:27: warning: ‘AVStream::codec’ is deprecated [-Wdeprecated-declarations]
     l_SCodecCtx = stream->codec;
                           ^
In file included from src/encoder/encoderffmpegresample.h:32:0,
                 from src/encoder/encoderffmpegcore.h:22,
                 from src/encoder/encoderffmpegcore.cpp:25:
/usr/include/libavformat/avformat.h:880:21: note: declared here
     AVCodecContext *codec;

...