Moonbase59 / loudgain

ReplayGain 2.0 loudness normalizer based on the EBU R128/ITU BS.1770 standard (-18 LUFS, FLAC, Ogg, MP2, MP3, MP4, M4A, AAC, ALAC, Opus, ASF, WMA, WAV, AIFF, WavPack, APE)
Other
182 stars 23 forks source link

Building on Ubuntu 16.04 LTS fails #17

Open pasko-zh opened 4 years ago

pasko-zh commented 4 years ago

I cannot compile loudgain on Ubuntu 16.04, although I have installed all the dependencies. make throws the following errors:

[ 20%] Building CXX object CMakeFiles/loudgain.dir/src/tag.cc.o /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_flac(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:243:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:244:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:245:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:246:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:247:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:248:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:249:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_ogg(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:306:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:307:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:308:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:309:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:310:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:311:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:312:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_ogg_opus(TagLib::Ogg::XiphComment*)’: /home/pesce/loudgain-master/src/tag.cc:454:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:455:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:456:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_TRACK_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:457:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_GAIN]); ^ /home/pesce/loudgain-master/src/tag.cc:458:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_PEAK]); ^ /home/pesce/loudgain-master/src/tag.cc:459:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_ALBUM_RANGE]); ^ /home/pesce/loudgain-master/src/tag.cc:460:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields(RG_STRING_UPPER[RG_REFERENCE_LOUDNESS]); ^ /home/pesce/loudgain-master/src/tag.cc:461:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields("R128_TRACK_GAIN"); ^ /home/pesce/loudgain-master/src/tag.cc:462:10: error: ‘class TagLib::Ogg::XiphComment’ has no member named ‘removeFields’ tag -> removeFields("R128_ALBUM_GAIN"); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘void tag_remove_mp4(TagLib::MP4::Tag*)’: /home/pesce/loudgain-master/src/tag.cc:529:14: error: ‘class TagLib::MP4::Tag’ has no member named ‘removeItem’ tag -> removeItem(item->first); ^ /home/pesce/loudgain-master/src/tag.cc: In function ‘bool tag_write_mp4(scan_result*, bool, char, char*, bool)’: /home/pesce/loudgain-master/src/tag.cc:549:10: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_GAIN]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:552:10: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_PEAK]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:557:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_GAIN]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:560:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_PEAK]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:566:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_REFERENCE_LOUDNESS]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:569:12: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_TRACK_RANGE]), TagLib::StringList(value)); ^ /home/pesce/loudgain-master/src/tag.cc:573:14: error: ‘class TagLib::MP4::Tag’ has no member named ‘setItem’ tag -> setItem(tagname(RG_STRING[RG_ALBUM_RANGE]), TagLib::StringList(value)); ^ CMakeFiles/loudgain.dir/build.make:62: recipe for target 'CMakeFiles/loudgain.dir/src/tag.cc.o' failed make[2]: *** [CMakeFiles/loudgain.dir/src/tag.cc.o] Error 1 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/loudgain.dir/all' failed make[1]: *** [CMakeFiles/loudgain.dir/all] Error 2 Makefile:127: recipe for target 'all' failed make: *** [all] Error 2

pasko-zh commented 4 years ago

I switched to my server, where I have docker installed... so inside a debian container it builds and works as it should 😄 The static version works on Ubuntu 16 as well -- but I wanted to compile it, in order to be faster.

Anyway, I am glad that you wrote loudgain. I compared a couple of tracks that I already had replay-gained with loudgain's results: much better! Good work 👍

Moonbase59 commented 4 years ago

Thanks for your kind words! Creative idea, using Docker!

As far as I can remember, the libraries shipped with 14.04 and 16.04 were too outdated, that was the main reason I came up with the "static" version (because I also still use a 14.04 and 16.04 machine). I works fine on 18.04, Linux Mint 19 and Arch, for instance.