Réf : AU : 2012-2013 Université de Sousse Ecole Nationale d’Ingénieurs de Souss

Réf : AU : 2012-2013 Université de Sousse Ecole Nationale d’Ingénieurs de Sousse Mémoire de Projet de Fin d'Études Présenté en vue de l’obtention du diplôme d’ Ingénieur en Génie Informatique Appliquée Soutenu Devant le jury Soutenu le 29/06/2013 devant les jurys Président : Monsieur BEN ARBIA Anis Rapporteur: Madame SADDI Najla Encadreur : Monsieur KHAYATI Naoufel,ENISo Encadreur : Monsieur JERBI Aymen, TELNET Encadreur : Monsieur BEN GHAZI Lassaad, TELNET @OUSSAMA2013 Option : Ingénierie des Systèmes distribués Réalisation D’un Android MPEG DASH Player Réalisé par : Hadj Ali Oussama Option : Ingénierie des Systèmes Distribués Android MPEG DASH Player Page 1 Résumé Au cours des dernières années, l’Internet est devenu un canal important pour la distribution des données multimédias principalement via le protocole HTTP. Plusieurs protocoles de streaming intelligents se sont basés sur le protocole HTTP pour aboutir à un streaming fluide et de qualité optimale. Parmi ces protocoles il y a le dernier et la nouvelle norme internationale MPEG DASH. La société tunisienne TELNET, en tant que société innovatrice et leader technologique, a bien estimé le potentiel de ce protocole de streaming et elle a décidé de concevoir une application Android permettant la lecture de contenu multimédia diffusé via le protocole MPEG DASH L’application doit permettre le streaming de vidéos par ce protocole dans un système Android ainsi que le déploiement d’un algorithme de décision contrôlant la qualité de diffusion au cours de Streaming permettant d’obtenir la meilleure qualité possible. Mots-clés: Streaming, MPEG DASH, Android, multimédia, HTTP, Adaptivité, Qualité Android MPEG DASH Player Page 2 Abstract In recent years, the Internet has become an important channel for the distribution of multimedia data primarily via HTTP. Several intelligent streaming protocols were based on the HTTP protocol to achieve a fluid streaming and optimal quality. One of these protocols is the last and the new international standard MPEG DASH. The Tunisian company TELNET, as an innovator and technology leader realized the potential of the streaming protocol and decided to design an Android application for playing multimedia content broadcast via MPEG DASH protocol The application must allow streaming of videos using this protocol in an Android system as well as the deployment of a decision algorithm controlling broadcast quality during streaming to obtain the best possible quality. Keywords: Streaming MPEG DASH, Adaptivity, multimedia, HTTP, Quality Android MPEG DASH Player Page 3 ملخص عبر األول المقام في الوسائط البيانات متعددة لتوزيع وسيلة اإلنترنت أهم شبكة ،أصبحت األخيرة السنوات خالل .«HTTP » البروتوكول استندت عدة بروتوكوالت ذكية على البروتوكول «HTTP » لتحقيق تدفق سلس ومتواصل مع ضمان جودة عالية في نوعية عرض ا لبيانات من بينها نذكر البروتوكول مبق داش«MPEG DASH » . أدركت المؤسسة التونسية تلنات بصفتها مؤسسة رائدة في مجاالت التكنولوجيا و االبتكار و البحث العلمي االضافات الهامة و المستقبل الزاهر الستعمال البروتوكول مبق داش .فقررت انتاج و تطوير تطبيق يمكن من استعمال مبق داش لبث .البيانات التطبيق المزمع انجازه يمكن من مشاهدة سلسة و مت واصلة ألشرطة فيديو متدفقة عبر البروتوكول مبق داش على أجهزة الهواتف الذكية ذ ات نظام تشغيل أندرويد. .هذا التطبيق يحتوى على خوارزمية تمكن من الحصول على أفضل جودة ممكنة للبث مفاتيح : أندرويد, تدفق, جودة ,الوسائط المتعددة, مبق داش Android MPEG DASH Player Page 4 Remerciements Nous souhaitons que cette page du présent document puisse exprimer tous nos sincères sentiments de reconnaissance et de remerciements que nous adressons à tous ceux qui ont contribué ou aidé, de près ou de loin, à réaliser ce travail. Nous tenons à exprimer toute notre immense gratitude à Mr. JERBI Aymen et Mr. BEN GHAZI Lassaad, nos éminents encadreurs à la respectable société TELNET, pour leur dispo- nibilité, leurs directives et leurs précieux conseils qu'ils nous ont prodigués. Nous saisissons cette occasion pour remercier vivement notre encadreur monsieur KHAYATI Naoufel, maître assistant à l’Ecole Nationale d’Ingénieurs de Sousse ENISO, pour son soutien continu, ses remarques pertinentes, ses conseils constructifs et inépuisables qu’il nous a fournis et surtout la motivation soutenue qu’il nous a inculqués tout au long de la pé- riode de l’étude du projet pour amener à bon port ce travail. Nous exprimons notre profonde reconnaissance à tout le staff administratif et tout le corps enseignant de l’ « ENISO » pour la qualité de la formation qu'ils nous ont donnée durant les trois années d'études. Nous souhaitons aussi adresser nos sincères salutations à nos collègues et amis qui n’ont jamais hésité à nous encourager et à nous apporter leurs infinis soutiens. Enfin et avec plein de respect, nous tenons à présenter les plus forts remerciements à tous les membres du jury qui ont bien voulu accepter d’évaluer notre modeste travail. Android MPEG DASH Player Page 5 Table des matières Introduction Générale ............................................................................................................................ 10 Chapitre 1 : Présentation et contexte du projet ..................................................................................... 13 1.1 Présentation de l’organisme d’accueil ................................................................................. 13 1.2. Contexte du projet et Objectifs ........................................................................................... 16 1.2.1 Problématique ............................................................................................................... 16 1.2.2 Objectifs ....................................................................................................................... 18 Chapitre 2 : Etat de l’art du Streaming ................................................................................................. 20 2.1 Streaming traditionnel ......................................................................................................... 20 2.1.1 Real-Time Transport Protocol (RTP) ........................................................................... 20 2.1.2 Real-Time Streaming Protocol (RTSP) ........................................................................ 21 2.2 Le Streaming progressif ..................................................................................................... 21 2.3 Le streaming adaptatif ......................................................................................................... 21 2.3.1 Transcodage .................................................................................................................. 22 2.3.2 Encodage évolutif ......................................................................................................... 22 2.3.3 Commutation de contenu (Stream switching) .............................................................. 23 2.4 Streaming adaptatif basé sur HTTP ..................................................................................... 24 2.4.1 Le HTTP Live Streaming (HLS) d’Apple .................................................................... 25 2.4.2 Le Microsoft's Live Smooth Streaming (LSS) ............................................................. 26 2.4.3 Le HTTP Dynamic Streaming d’Adobe ....................................................................... 26 Chapitre 3 : Le protocole MPEG DASH : présentation et étude de l’existant ..................................... 27 3.1 Spécifications du protocole MPEG-DASH ......................................................................... 27 3.1.1 Présentation du protocole ............................................................................................ 27 3.1.2 Chronologie de développement .................................................................................... 27 3.1.3 Mécanisme de fonctionnement ..................................................................................... 28 3.1.4 Avantages du protocole MPEG DASH ........................................................................ 31 3.2 Etude de l’existant ............................................................................................................... 31 3.2.1 Helix DNA Client ......................................................................................................... 32 3.2.2 La librairie Libdash ..................................................................................................... 32 3.2.3 Gstreamer : DASHbin et le plugin gstdashdemux ........................................................ 32 Chapitre 4 Analyse et spécification des besoins ................................................................................... 34 4.1 Besoins en Architecture ....................................................................................................... 34 4.2 Expression des besoins ........................................................................................................ 35 4.2.1 Besoins Fonctionnels .................................................................................................... 35 4.2.2 Besoins non fonctionnels .............................................................................................. 35 4.3 Diagramme des cas d’utilisation ......................................................................................... 35 Android MPEG DASH Player Page 6 4.3.1 Identification des acteurs .............................................................................................. 35 4.3.2 Liste des cas d’utilisation ............................................................................................. 35 4.3.3 Modélisation ................................................................................................................. 36 4.4 Description des cas d’utilisation .......................................................................................... 37 4.5 Diagramme de séquences .................................................................................................... 38 Chapitre 5 La phase Conception du Android MPEG DASH Player .................................................... 40 5.1 Architecture globale du système ......................................................................................... 40 5.2 Conception détaillée ............................................................................................................ 42 5.2.1 Architecture physique ................................................................................................... 42 5.2.2 Architecture Logique .................................................................................................... 43 5.2.3 Diagrammes de classes ................................................................................................. 44 Chapitre 6 Réalisation de l’application Android MPEG DASH Player ................................................ 47 6.1 Environnement de travail .................................................................................................... 47 6.1.1 Environnement matériel ............................................................................................... 47 6.1.2 Environnement Logiciel ............................................................................................... 48 6.2 Démarche de réalisation de l’Android MPEG DASH Player .............................................. 49 6.2.1 Compilation de la librairie Libdash pour l’environnement Android ICS de la carte TI AM335x................................................................................................................................. 49 6.2.2 Réalisation de la partie Dash Streaming Control .......................................................... 51 6.2.3 La logique d’adaptation : Algorithme de décision pour le choix de la qualité de streaming ............................................................................................................................... 51 6.2.4 Phase de décodage ........................................................................................................ 54 6.2.5 Réalisation de la couche accès aux flux ...................................................................... 54 6.2.6 Phase de visualisation ................................................................................................... 55 6.3 Tests et résultats expérimentaux .......................................................................................... 56 Conclusion générale .............................................................................................................................. 62 Bibliographie ......................................................................................................................................... 64 Glossaire ................................................................................................................................................ 65 Annexe A : Structure d’un fichier MPD ................................................................................................ 66 Annexe B : Architecture du système d’exploitation Android .............................................................. 69 Annexe C:Procédure de mise en place de l’environnement Android sur la carte TI AM335xevm ...... 73 Android MPEG DASH Player Page 7 Liste des tableaux Tableau 1 Description du cas d'utilisation Arrêter le streaming ............................................................ 37 Tableau 2 Description du cas d'utilisation Passer en mode d’adaptation automatique ......................... 37 Tableau 3 Description du cas d'utilisation Visualiser une vidéo en mode plein écran .......................... 37 Tableau 4 Description du cas d'utilisation Passer à une supérieure/inférieure résolution vidéo ........... 38 Tableau 5 Caractéristiques de l'environnement de travail ..................................................................... 47 Tableau 6 Caractéristiques de la Carte TI AM335x evm ...................................................................... 48 Tableau 7 Emulation de l'algorithme de décision .................................................................................. 60 Tableau 8 Analyse de la structure d'un fichier MPD ............................................................................. 68 Tableau 9 Les noyaux linux utilisés par Android .................................................................................. 72 Android MPEG DASH Player Page 8 Liste des figures Figure 1 Trafic Internet envisagé pour les prochaines années trié par types des terminaux [Net1] ...... 10 Figure 2 Estimation du type de trafic internet des Smartphones triée par type d'activité [Net1] .......... 11 Figure 3 Logo de TELNET [Net 2] ....................................................................................................... 13 Figure 4 Organigramme de TELNET .................................................................................................... 15 Figure 5 Schéma simplifié du streaming adaptatif [Net3] ..................................................................... 17 Figure 6 Les ventes mondiales de Smartphones triées par système d’exploitation ............................... 17 Figure 7 Approche du transcodage pour le streaming adaptatif [Net3]................................................. 22 Figure 8 Approche de l'encodage évolutif ............................................................................................. 23 Figure 9 Approche du Stream switching pour le streaming adaptatif [Net3] ........................................ 23 Figure 10 Exemple illustrant la commutation de Stream dans le temps................................................ 24 Figure 11 Communication client-serveur dans le cadre d'un streaming adaptatif ................................. 25 Figure 12 Chronologie uploads/Geographie/ rapport-de-stage-pfe-mpeg-dash.pdf

  • 36
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager