Your list does not contain AudioMetaData objects but pointers to AudioMetaData objects, but you register AudioMetaData with qRegisterMetaType, not a pointer.

By the way why is all your private data in AudioMetaData pointers? You don't any pointers there. Just use values. QString is "implicitly shared":http://doc.qt.io/qt-5/shared.html so you can treat it like an int and QTime is sizeof(int). It looks like m_Rating is not an array. If it is I'd suggest that you replace it with a vector, otherwise just use an int.