LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   spek, Alien's ffmpeg, and Slackware64 14.2 (https://www.linuxquestions.org/questions/slackware-14/spek-aliens-ffmpeg-and-slackware64-14-2-a-4175587383/)

dimm0k 08-18-2016 08:01 PM

spek, Alien's ffmpeg, and Slackware64 14.2
 
currently running Slackware64 14.2 and with it lots of updates across the board, from the OS itself to packages by Alien and SBo. One of the programs I'm having difficulties with is spek, an analyzer for audio files, since it requires the older ffmpeg 2.8.7 while my system updated to 3.1.1. is there any way to get both ffmpeg packages (Alien's and SBo's) on the same system so I can build spek?

Ztcoracat 08-18-2016 10:06 PM

FFmpeg 3.1.1 is is here:
http://www.slackware.com/~alien/slac...eg/pkg64/14.2/

And ffmpeg version 2.8.7 is in the Slack Builds repo.
https://slackbuilds.org/repository/1...imedia/ffmpeg/

The SlackBuild for spek is also in the SlackBuilds repo. Nevermind if yo already have it.
Make sure you install wxPython and ffmpeg first-;)
https://slackbuilds.org/repository/1...k/?search=spek

Since it requires the older version of ffmpeg you might have to remove the 3.1.1 version.
It may cause conflict having both version's of ffmpeg installed.

moesasji 08-18-2016 10:10 PM

Quote:

Originally Posted by Ztcoracat (Post 5592808)
Since it requires the older version of ffmpeg you might have to remove the 3.1.1 version.
It may cause conflict having both version's of ffmpeg installed.

I'm slightly puzzled. Where does the Spek website say explicitly that Spek requires ffmpeg 2.8.7? Does it fail to build/run when having ffmpeg 3.1.1 installed?

dimm0k 08-18-2016 10:19 PM

Quote:

Originally Posted by Ztcoracat (Post 5592808)
FFmpeg 3.1.1 is is here:
http://www.slackware.com/~alien/slac...eg/pkg64/14.2/

And ffmpeg version 2.8.7 is in the Slack Builds repo.
https://slackbuilds.org/repository/1...imedia/ffmpeg/

The SlackBuild for spek is also in the SlackBuilds repo. Nevermind if yo already have it.
Make sure you install wxPython and ffmpeg first-;)
https://slackbuilds.org/repository/1...k/?search=spek

Since it requires the older version of ffmpeg you might have to remove the 3.1.1 version.
It may cause conflict having both version's of ffmpeg installed.


yes, I use slackpkg+ after upgrading to 14.2 and one of the packages that was updated was ffmpeg to 3.1.1 via Alien's build... as for spek, I also have that from the SlackBuilds rep. I was hoping to not have to remove 3.1.1 and just somehow get spek to see 2.8.7 elsewhere.

Quote:

Originally Posted by moesasji (Post 5592810)
I'm slightly puzzled. Where does the Spek website say explicitly that Spek requires ffmpeg 2.8.7? Does it fail to build/run when having ffmpeg 3.1.1 installed?

spek doesn't specifically state a ffmpeg version, but the last version that was successful and listed on SlackBuilds is 2.8.7. unfortunately I tried running the build script with 3.1.1 and this is what I get

Code:

Makefile:448: recipe for target 'libspek_a-spek-audio.o' failed
make[2]: *** [libspek_a-spek-audio.o] Error 1
make[2]: Leaving directory '/tmp/SBo/spek-0.8.2/src'
Makefile:368: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/SBo/spek-0.8.2'
Makefile:302: recipe for target 'all' failed
make: *** [all] Error 2

I've compiled spek on Slack 14.1 when I still had ffmpeg 2.8.7... now with the update to 3.1.1 of ffmpeg, the binary for spek needs to be rebuilt.

Ztcoracat 08-18-2016 10:25 PM

The SlackBuilds repo page with the download of spek on it says that ffmpeg is required:-;)
Code:

This requires: wxPython, ffmpeg
Quote:

Supports all popular lossy and lossless audio file formats thanks to the FFmpeg libraries.
http://spek.cc/

-::-If the build fails it would say why it fails and show what libraries are needed.-::-

moesasji 08-18-2016 10:30 PM

Quote:

Originally Posted by dimm0k (Post 5592812)
spek doesn't specifically state a ffmpeg version, but the last version that was successful and listed on SlackBuilds is 2.8.7. unfortunately I tried running the build script with 3.1.1 and this is what I get
..snip..

The real error is given earlier in the output of make. Anyway there is indeed a bug-report on this on the spek website: https://github.com/alexkay/spek/issues/109

@Ztcoracat: Spek requires ffmpeg, this doesn't mean it necessarily needs 2.8.7. That slackbuilds uses 2.8.7 could well have been the result of something else not building with later versions of ffmpeg.

dimm0k 08-18-2016 10:39 PM

Quote:

Originally Posted by moesasji (Post 5592818)
The real error is given earlier in the output of make. Anyway there is indeed a bug-report on this on the spek website: https://github.com/alexkay/spek/issues/109

Ztcoracat: Spek requires ffmpeg, this doesn't mean it necessarily needs 2.8.7. That slackbuilds uses 2.8.7 could well have been the result of something else not building with later versions of ffmpeg.


yes, unfortunately I was the one that posted that bug report... I'm not sure if the project is discontinued or if the author is away, so I was hoping someone would have an alternative in the interim.

Code:

In file included from /usr/include/libavformat/avformat.h:317:0,
                from spek-audio.cc:21:
/usr/include/libavcodec/avcodec.h:4414:6: note: declared here
 void av_free_packet(AVPacket *pkt);
      ^
spek-audio.cc:310:13: warning: ‘void av_free_packet(AVPacket*)’ is deprecated [-Wdeprecated-declarations]
            av_free_packet(&this->packet);
            ^
In file included from /usr/include/libavformat/avformat.h:317:0,
                from spek-audio.cc:21:
/usr/include/libavcodec/avcodec.h:4414:6: note: declared here
 void av_free_packet(AVPacket *pkt);
      ^
spek-audio.cc:310:41: warning: ‘void av_free_packet(AVPacket*)’ is deprecated [-Wdeprecated-declarations]
            av_free_packet(&this->packet);
                                        ^
In file included from /usr/include/libavformat/avformat.h:317:0,
                from spek-audio.cc:21:
/usr/include/libavcodec/avcodec.h:4414:6: note: declared here
 void av_free_packet(AVPacket *pkt);
      ^
Makefile:448: recipe for target 'libspek_a-spek-audio.o' failed
make[2]: *** [libspek_a-spek-audio.o] Error 1
make[2]: Leaving directory '/tmp/SBo/spek-0.8.2/src'
Makefile:368: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/SBo/spek-0.8.2'
Makefile:302: recipe for target 'all' failed
make: *** [all] Error 2


Ztcoracat 08-18-2016 10:40 PM

Install wxPython first:-

Since ffmpeg 3.1.1 has a bug I would rm it and than install version 2.8.7.
Than proceed to run the SlackBuild for spek-;)

Ztcoracat 08-18-2016 10:45 PM

Quote:

Ztcoracat: Spek requires ffmpeg, this doesn't mean it necessarily needs 2.8.7.
Than what other alternative do you propose?

bassmadrigal 08-18-2016 10:46 PM

Unless you have a need for v3.x of ffmpeg, I would just remove alien's version, throw ffmpeg in slackpkg's blacklist, and then use the SBo version. That is known to work with the version of spek on SBo.

moesasji 08-18-2016 11:09 PM

Quote:

Originally Posted by dimm0k (Post 5592820)
yes, unfortunately I was the one that posted that bug report... I'm not sure if the project is discontinued or if the author is away, so I was hoping someone would have an alternative in the interim.

That explains things. I would go with the suggestions made by others.

btw) The error results from the following change in ffmpeg code-base: https://ffmpeg.org/pipermail/ffmpeg-...er/094920.html So it should be relatively easy to fix for upstream by replacing av_free_packet with av_packet_unref

edit) This has actually been fixed on the master-branch of spek, see https://github.com/alexkay/spek/comm...4009f487828a45

Ztcoracat 08-18-2016 11:27 PM

Quote:

Originally Posted by bassmadrigal (Post 5592826)
Unless you have a need for v3.x of ffmpeg, I would just remove alien's version, throw ffmpeg in slackpkg's blacklist, and then use the SBo version. That is known to work with the version of spek on SBo.

That's very sound cousel bassmadrigal-;)

dimm0k 08-19-2016 12:44 AM

Quote:

Originally Posted by moesasji (Post 5592836)
That explains things. I would go with the suggestions made by others.

btw) The error results from the following change in ffmpeg code-base: https://ffmpeg.org/pipermail/ffmpeg-...er/094920.html So it should be relatively easy to fix for upstream by replacing av_free_packet with av_packet_unref

edit) This has actually been fixed on the master-branch of spek, see https://github.com/alexkay/spek/comm...4009f487828a45

so I went ahead and patched that piece, but now I'm getting the following...

Code:

n file included from /usr/include/libavformat/avformat.h:317:0,
                from spek-audio.cc:21:
/usr/include/libavcodec/avcodec.h:4704:5: note: declared here
 int avcodec_decode_audio4(AVCodecContext *avctx, AVFrame *frame,
    ^
Makefile:448: recipe for target 'libspek_a-spek-audio.o' failed
make[2]: *** [libspek_a-spek-audio.o] Error 1
make[2]: Leaving directory '/tmp/SBo/spek-0.8.2/src'
Makefile:368: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/SBo/spek-0.8.2'
Makefile:302: recipe for target 'all' failed
make: *** [all] Error 2

I would go back to ffmpeg 2.8.7, but unfortunately I have a few other programs built on ffmpeg 3.1.1. any assistance here with why it's crapping out?

moesasji 08-19-2016 02:33 AM

Quote:

Originally Posted by dimm0k (Post 5592852)
I would go back to ffmpeg 2.8.7, but unfortunately I have a few other programs built on ffmpeg 3.1.1. any assistance here with why it's crapping out?

The master-branch has a patch that does something with avcodec_decode_audio4 as well, see https://github.com/alexkay/spek/blob...mpeg_2.9.patch. This patch is about 5 months old.

btw) If you want to get it running with 3.1.1 it might be easier/better to use the master-branch directly instead of patching?

dimm0k 08-19-2016 07:27 PM

Quote:

Originally Posted by moesasji (Post 5592873)
The master-branch has a patch that does something with avcodec_decode_audio4 as well, see https://github.com/alexkay/spek/blob...mpeg_2.9.patch. This patch is about 5 months old.

btw) If you want to get it running with 3.1.1 it might be easier/better to use the master-branch directly instead of patching?

apparently this just doesn't want to work for me! I tried that patch, but still the same error so I figure the easier route would be what you mentioned, go with the master-branch. The problem now is that it requires wxPython > 3.0 so I grab the latest along with the SlackBuild script and...

Code:

cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
In file included from /mnt/spares/1/tmp/SBo/wxPython-src-3.0.2.0/include/wx/defs.h:27:0,
                from /mnt/spares/1/tmp/SBo/wxPython-src-3.0.2.0/include/wx/wx.h:14,
                from include/wx/wxPython/wxPython_int.h:35,
                from src/helpers.cpp:17:
/mnt/spares/1/tmp/SBo/wxPython-src-3.0.2.0/include/wx/platform.h:183:22: fatal error: wx/setup.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1

any idea what's happening here? according to the SlackBuild page for wxPython, there are no dependencies.


All times are GMT -5. The time now is 07:22 AM.