Feature - Fonctionnalité #4609
abuleduaudiov1 : passage de la compression ogg en qthread pour ne pas figer l'interface
60%
Description
Tout est dit dans le sujet, quand on compresse un gros wav en ogg ça freeze ...
Historique
#1 Mis à jour par Eric Seigne il y a environ 9 ans
- % réalisé changé de 0 à 60
Ça a bien avancé, il me reste à faire les connect SIGNAL <-> SIGNAL entre le worker et le controlleur, un peu de nettoyage et ça roule.
Ça marche déjà à minima avec une appli de test
#2 Mis à jour par Eric Seigne il y a environ 9 ans
Bon, je me demande si je n'ai pas fait une bêtise concernant le QThread ... mais dans tous les cas il semblerait qu'un qthread n'a pas vraiment notion du namespace (géré par le moc)
Deux cas se présentent maintenant:
[W] 2015-11-11T20:55:32.848 @ 0 QObject::connect: Incompatible sender/receiver arguments AbulEduAudioV1::WaveToOgg::signalWaveToOggStatus(WaveToOgg::Status,WaveHeaderReader::Status,QString) --> raconte::slotWaveEncoderStatus(AbulEduAudioV1::WaveToOgg::Status,AbulEduAudioV1::WaveHeaderReader::Status,QString)
ou
QObject::connect: Incompatible sender/receiver arguments AbulEduAudioV1::WaveToOgg::signalWaveToOggStatus(AbulEduAudioV1::WaveToOgg::Status,AbulEduAudioV1::WaveHeaderReader::Status,QString) --> raconte::slotWaveEncoderStatus(WaveToOgg::Status,WaveHeaderReader::Status,QString)
Et
[W] 2015-11-11T21:05:32.500 @ 0 QObject::connect: Incompatible sender/receiver arguments WaveToOggThread::signalWaveToOggThreadStatus(AbulEduAudioV1::WaveToOgg::Status,AbulEduAudioV1::WaveHeaderReader::Status,QString) --> AbulEduAudioV1::WaveToOgg::slotWaveToOggStatusFromThread(WaveToOgg::Status,WaveHeaderReader::Status,QString)
Et donc je ne sais pas trop comment la jouer ... car si on supprime toutes les références en dur à AbulEduAudioV1:: on a alors l'erreur de départ suivante
[W] 2015-11-11T21:07:54.696 @ 0 QObject::connect: Cannot queue arguments of type 'WaveToOgg::Status' (Make sure 'WaveToOgg::Status' is registered using qRegisterMetaType().)