Is there a library written in C/C++ that offers functions like QPSK modulation?
2 Answers
I have created a C++ library that I haven't officially released yet that could be used for modulation. It is called NimbleDSP. It doesn't have a function or method called "modulation", but it does have interpolation and supports complex numbers, so it could easily be used to do modulation.
Liquid-dsp appears to be a mature SDR library, and it is used by the government framework RED HAWK that was recently open sourced. My main problem with the library is that it uses the GPL license (may not be a problem for you) and the interface seems complicated. Having said that, I looked at it fairly briefly so I could be wrong about that.
There is also SPUC (Signal Processing Using C++) and Aquila. SPUC is also GPL I believe, but looks to be simpler than liquid-dsp while still being very comprehensive. Aquila has a very permissive license but has some odd holes in its functionality.
GNU Radio is an SDR platform you can look at.The signal processing blocks in this library are written in C++. It has all the modulation techniques you need including qpsk. The libraries for digital modulation and demodulation are all well written and tested. The signal processing blocks written in C++ are connected using python. You can just install GNU Radio on your computer and then play around,check if transmission and reception is happening as expected on software without need of any hardware.I have attached the links of gnuradio wiki page and documentation. Good Luck.