ebu / ear-production-suite

The EAR Production Suite is a set of VST® plugins and tools for producing immersive and personalizable audio content suitable for any Next Generation Audio codec. It is based on the Audio Definition Model (ITU-R BS.2076) and the ITU ADM Renderer (ITU-R BS.2127) and enables monitoring on any ITU-R BS.2051 loudspeaker configuration.
https://ear-production-suite.ebu.io/
GNU General Public License v3.0
102 stars 20 forks source link

Linux support #222

Closed tomjnixon closed 1 year ago

tomjnixon commented 2 years ago

This should be ready to merge; there are a couple of things still to look at, but these can be turned into issues as it still works:

Notes:

tomjnixon commented 2 years ago

For reference, I've been building with:

cmake -B build/ -G Ninja -DEAR_PLUGINS_UNIT_TESTS=OFF -DBUILD_TESTING=OFF -DSMTG_CREATE_PLUGIN_LINK=0 -DCMAKE_BUILD_TYPE=Debug
ninja -C build install
marclava commented 2 years ago

I just tried compilation on my Ubuntu 20.04.

[536/1021] Building CXX object ear-production-suite-plugins/lib/CMakeFiles/ear-plugin-base.dir/src/store_metadata.cpp.o FAILED: ear-production-suite-plugins/lib/CMakeFiles/ear-plugin-base.dir/src/store_metadata.cpp.o /usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_UUID_FORCE_AUTO_LINK -DEPS_ENABLE_LOGGING -DJUCE_DISABLE_ASSERTIONS -DNNG_HAVE_BUS0 -DNNG_HAVE_PAIR0 -DNNG_HAVE_PAIR1 -DNNG_HAVE_PUB0 -DNNG_HAVE_PULL0 -DNNG_HAVE_PUSH0 -DNNG_HAVE_REP0 -DNNG_HAVE_REQ0 -DNNG_HAVE_RESPONDENT0 -DNNG_HAVE_SUB0 -DNNG_HAVE_SURVEYOR0 -DNNG_STATIC_LIB -DNNG_TRANSPORT_INPROC -DNNG_TRANSPORT_IPC -DNNG_TRANSPORT_TCP -DSPDLOG_COMPILED_LIB -DVISR_CORE_STATIC_LIBRARY=1 -DVISR_EFL_STATIC_LIBRARY=1 -DVISR_OBJECTMODEL_STATIC_LIBRARY=1 -DVISR_PANNING_STATIC_LIBRARY=1 -DVISR_PML_STATIC_LIBRARY=1 -DVISR_RBBL_STATIC_LIBRARY=1 -DVISR_RCL_STATIC_LIBRARY=1 -DVISR_RRL_STATIC_LIBRARY=1 -I/home/marc/git/ear-production-suite/ear-production-suite-plugins/lib/include -I/home/marc/git/ear-production-suite/build/ear-production-suite-plugins -I/home/marc/git/ear-production-suite/build/ear-production-suite-plugins/lib -I/home/marc/git/ear-production-suite/shared -I/home/marc/git/ear-production-suite/submodules/bear/visr_bear/submodules/libear/include -I/home/marc/git/ear-production-suite/build/submodules/bear/visr_bear/submodules/libear -I/home/marc/git/ear-production-suite/submodules/bear/visr_bear/include -I/home/marc/git/ear-production-suite/build/submodules/bear/visr_bear/include -I/home/marc/git/ear-production-suite/submodules/visr/src -I/home/marc/git/ear-production-suite/submodules/libbw64/include -I/home/marc/git/ear-production-suite/build/submodules/libbw64 -I/home/marc/git/ear-production-suite/submodules/libadm/include -I/home/marc/git/ear-production-suite/build/submodules/libadm -isystem /home/marc/git/ear-production-suite/submodules/bear/visr_bear/submodules/libear/submodules/eigen -g -fPIC -std=c++17 -MD -MT ear-production-suite-plugins/lib/CMakeFiles/ear-plugin-base.dir/src/store_metadata.cpp.o -MF ear-production-suite-plugins/lib/CMakeFiles/ear-plugin-base.dir/src/store_metadata.cpp.o.d -o ear-production-suite-plugins/lib/CMakeFiles/ear-plugin-base.dir/src/store_metadata.cpp.o -c /home/marc/git/ear-production-suite/ear-production-suite-plugins/lib/src/store_metadata.cpp /home/marc/git/ear-production-suite/ear-production-suite-plugins/lib/src/store_metadata.cpp: In member function ‘void ear::plugin::Metadata::removeProgramme(const ProgrammeInternalId&)’: /home/marc/git/ear-production-suite/ear-production-suite-plugins/lib/src/store_metadata.cpp:113:37: error: ‘class google::protobuf::RepeatedPtrField<ear::plugin::proto::Programme>’ has no member named ‘at’ 113 | newSelectedId = programmes->at(newSelectedIndex).programme_internal_id(); | ^

tomjnixon commented 2 years ago

I just tried compilation on my Ubuntu 20.04.

Thanks, but yeah, as mentioned on the other thread it will probably require using vcpkg -- ubuntu 20.04 ships protobuf 3.6.1.3, while vcpkg provides 3.18.0. I'll try to put together some instructions for this next week.

firthm01 commented 2 years ago

binaural rendering is glitchy (possibly just too slow in debug?)

I think that's probably the case - certainly true when I do the same in Windows

firthm01 commented 1 year ago

Merged in to v1.0 PR