Réalisation d’un système de communication acoustique basé sur le tatouage audio
Mohamed Mediouni( Ecole Nationale d’Ingénieurs de Tunis (ENIT)). (
[email protected]) Téléphone :+21622582534
Plan de Présentation 1. 2. 3. 4.
5. 6. 7.
Présentation générale du projet Tatouage audio Bibliothèque ‘Portaudio.h’ Emission et réception des données Synchronisation Implémentation logicielle Conclusion
Plan 1. Présentation générale du projet
Système de communication acoustique basé sur le tatouage audio
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
Vue générale système de tatouage et communication.
7. Conclusion
3
Plan 1. Présentation générale du projet
Tatouage audio
Le tatouage est l’art de cacher de l’information directement dans des données multimédia de façon robuste et inaudible.
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation
Schéma du système de tatouage audio
6. Implémentation logicielle 7. Conclusion
Tatouage à l’émission
4
Plan 1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’
Le tatouage audio lors de l’émission
Modulation de l’information
Message à insérer Codage ASCII
10010010100101010
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
1
0 Concaténation des suites de Vecteurs obtenus
Message Modulé 5
Mise en forme de l’information
Plan 1. Présentation générale du projet
Signal musique x (n) dans une fenêtre de 512 échantillons dans le domaine temporel
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation
Présentation du signal dans le domaine fréquentiel Musique Seuil de masquage
6. Implémentation logicielle 7. Conclusion
6
Plan
Insertion de l’information dans le signal musique dans le domaine temporel
1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
Retourner ver le model temporel . Réaliser une somme vectorielle entre le signal modulé et le signal de tatouage.
Générer le nouveau fichier contenant le tatouage. 7
Plan
Le dé-tatouage audio lors de la réception.
1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
Fichier Tatoué
7. Conclusion
Chaine de dé-tatouage 8
Plan 1. Présentation générale du projet 2. Tatouage audio
3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation
Filtrage de Wiener
Déterminer un filtre optimal G(f) pour restituer le signal original v(n) à partir de v’(n)
Déterminer la ressemblance entre l’information à tatouer estimée v’(n) et les éléments du dictionnaire
6. Implémentation logicielle 7. Conclusion
9
Plan
Bibliothèque ‘Portaudio.h’
1. Présentation générale du projet
•Fournit des signaux audio d’entrées/sorties
2. Tatouage audio
•Simplifie la mise en œuvre des applications audio
3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données
•Fonctionne sur des différents API’s (Application Programming Interface)
6. Implémentation logicielle
Exemple : DirectSound™ de Microsoft, Macintosh et OSS Linux
7. Conclusion
•Utilisation
5. Synchronisation
pa_common \ pa_lib.c pa_common \ portaudio.h pa_common \ pa_host.h Lien avec la bibliothèque système « winmm.lib ». pa_win_wmme \ pa_win_wmme.c 10
Plan
Portaudio
1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation
Dispositifs audio (Audio
Jets audio (Audio Streams)
Devices)
Enumérer les dispositifs disponibles. Déterminer les caractéristiques du PortAudio telles que :
6. Implémentation logicielle
•Les taux disponibles.
7. Conclusion
•le nombre de canaux soutenus.
Contrôler l'entrée et le rendement audio Identifier le formats d'échantillons
Offre les fonctions capables de commander les streams
Formats soutenus d'échantillon. 11
Plan
Les fonctions offertes par ‘Pauraudio.h’
1. Présentation générale du projet 2. Tatouage audio
3. Bibliothèque ‘Portaudio.h’
Pa_Initialize () Terminate () Pa_GetDefaultInputDeviceID ()
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
Initiation du PortAudio
PaError
Gestion des streams Pa_OpenStream () ou Pa_OpenDefaultStream () Pa_StartStream ()
7. Conclusion
Pa_AbortStream ()
12
Plan 1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
Ecriture du ‘Callback’ Typedef struct { int frameindex ; /*indexe sur le tableau contenat l’échantillon*/
010010 010011 001010 010010 001010
int maxFrameIndex ;/*nombre maximale d’indexes ou taille du tableau
Fichier audio en cas d’émission.
0 1 0 1
1 0 0 1
Structure de type paTestData
float *recordedSamples ;/*pointeur sur l’échantillon*/ } paTestData ;
010010 010011 001010 010010 Fichier audio en cas d’enregistrement 13
Emission des données
Plan 1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
Fichier audio Structure de type paTestData
0100100 1001010
Err = Pa_OpenDefaultStream ( &stream, /*pointeur sur le stream*/ 0, /*pas d’input canal*/ 2, /*deux output canal*/ paFloat32,/*output de 32 bits avec point flottant*/ 44100 ,/*fréquence d’échantillonnage*/ 256, /*échantillon par buffer*/ 0, /*nombre de buffers, si 0 alors utiliser le minimum par défaut*/ Callback, /*spécification de la fonction callback*/ &data) ; /*les données à passer à travers le callback*/
Signal sonore sur haut parleur
14
Réception des données
Plan Structure de type paTestData
1. Présentation générale du projet
Appeler la fonction Callback
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’
0100100 1001010
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
Fichier audio
Enregistrer les données
15
Synchronisation des deux ordinateurs
Plan 1. Présentation générale du projet
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’
Deux ordinateurs indépendants La perte des données peut causer des problèmes
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
7. Conclusion
Solution Synchronisation Générale Synchronisation immédiat ou limitation des données
16
Synchronisation générale
Plan
1er
1. Présentation • Utilisation d’un signal pour générale du projet
2éme PC
PC Demande de connexion
assurer la synchronisation
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
Signal fenêtre
Réponse Envoi des données
Signal sinusoïde
Connexion à trois mains
7. Conclusion
17
Plan 1. Présentation générale du projet
Synchronisation immédiat ou limitation des données Signal de synchronisation
Signal de synchronisation Signal musique
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’
4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle
7. Conclusion
18
Plan 1. Présentation générale du projet 2. Tatouage audio
•Diagramme de fonctionnement de l’application
Lancement du programme
Bouton écrire message
Bouton envoyer message
3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données
Emission sinusoïde 2s Pas de Message <3
5. Synchronisation 6. Implémentation logicielle
Ouverture de l’écoute 3s
Afficher interface envoyé message et écrire message
Enregistrement du fichier son après tatouage et ajout des limites sinusoïdes
7. Conclusion
Bouton lire message
Emission sinusoïde 2s
Début écoute pour 2s Test présence message
Détecter début et fin du message
Test présence message Oui Envoyer Vrai message
Non
Enregistrer fichier Retour au fonctionnement normal
19
Plan
Interface général
1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
20
Interface tatouage
Plan 1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
21
Interface détection tatouage
Plan 1. Présentation générale du projet 2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
22
Problèmes rencontrés
Plan 1. Présentation générale du projet
•Canal acoustique bruité.
•Possibilité de teste sur un seul Pc.
2. Tatouage audio 3. Bibliothèque ‘Portaudio.h’ 4. Emission et réception des données 5. Synchronisation 6. Implémentation logicielle 7. Conclusion
23
Perspectives
Ajouter des codes sources relatives aux traitements de signal.
3. Bibliothèque ‘Portaudio.h’
4. Emission et réception des données
Utiliser le même mécanisme pour les stations radios. Bande d’annonce lumineuse.
Plan 1. Présentation générale du projet 2. Tatouage audio
5. Synchronisation 6. Implémentation logicielle 7. Conclusion
Bonjour Nos Clients
Haut parleur
Bande d’annonce lumineuse 24
25