Comments (9)
note - in trusty I found libavresample-dev - possibly this could be used? A quick change in decode.c for the swresample.h declaration to avresample.h allowed some compilation but with a bunch of warnings and linking complained about swr_ not available.
Not sure - I guess at some point ffmpeg deprecated libavresample for libswresample?
from bliss.
Ow :/
That was a hot topic some time ago, because there was a conflict inside ffmpeg - this link will explain the issue, but in short, at some point ffmpeg was divided in two « same » projects, and because Ubuntu/Debian maintainers were on the side of team that chosed to fork ffmpeg, the packages changed a little bit. Debian (and Ubuntu) are now switching back to ffmpeg, which I am using, so that's why libswresample exists only on newer Ubuntu/Debian version.
The good news is that switching from libswresample to libavresample is very easy - you just have to change swr_* prefixes by avresample_*. I'll do that tomorrow :) .
(libavresample doesn't seem to be « more deprecated » than libswresample by the way, so that's ok!)
from bliss.
if its as simple as that - brilliant news. Ta.
Also - should pkg_check_modules(MULTIMEDIA REQUIRED libavformat libavutil libavcodec) in the CMake file have the new (or old) name as a required library?
from bliss.
I have fixed it (normally) in the latest commit.
I changed the CMakeLists.txt so that you may either use libav or libsw.
Tell me if it works!
from bliss.
excellent - there is a warning message about a "avr_ctx may be uninitialised" but that didnt stop the compilation. Cheers.
@Phyks - with the latest changes I've applied this diff to make the python bindings to compile:
diff --git a/python/bliss/build_bliss.py b/python/bliss/build_bliss.py index bd815c3..72657fd 100644 --- a/python/bliss/build_bliss.py +++ b/python/bliss/build_bliss.py @@ -6,11 +6,11 @@ ffi.set_source("bliss._bliss", "#include \"bliss.h\"", sources=["../src/amplitude_sort.c", "../src/analyze.c", - "../src/decode.c", + "../src/decode_av.c", "../src/envelope_sort.c", "../src/frequency_sort.c", "../src/helpers.c"], - libraries=["avformat", "avutil", "avcodec"], + libraries=["avformat", "avutil", "avcodec", "avresample"], include_dirs=["/usr/include/ffmpeg/", "../include/"], extra_compile_args=["-std=c99"])
Note - I'm not sure of the best way to cope with the library name change between avresample and swresample
from bliss.
@fossfreedom Ok for the bindings. I should tweak the building process, it is not really clean at the moment. I'm quite busy at the moment, but it's on top of my TODO list and I will have a look at it ASAP!
from bliss.
no worries - thanks for your help!!
@Polochon-street - your changes look very good. Have tested with a few latin songs that to me feel & sound very similar. Your library is giving me 0.8 or better results so from an algorithm point of view I feel more confident now that this library is working quite nicely :).
I'll crack on now and have a look at working up a rhythmbox plugin.
cheers again!
from bliss.
Same, I think this issue can be closed, isn't it?
from bliss.
yep - good work.
from bliss.
Related Issues (20)
- cosine_similarity producing similar result values? HOT 15
- trying to decode more than 7 files produces crash of the process HOT 10
- ReplayGain HOT 3
- ffmpeg garbage output HOT 2
- Online database HOT 4
- Segfault HOT 3
- Freeing struct upon BL_UNEXPECTED HOT 3
- Wrong usage example HOT 2
- Ranges for each analysis value HOT 4
- Probleme de compilation HOT 11
- use aubio for analysis? HOT 2
- build error with ffmpeg 2.8.8 HOT 2
- Classifying songs HOT 2
- ArchLinux PKGBUILD fix please HOT 1
- Status of this project HOT 2
- Failed test building on Debian/buster HOT 1
- Please tag the repository with a version number HOT 2
- Please drop "/usr/" in installation paths HOT 2
- Fails to build with ffmpeg-6.0 HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bliss.