CarpeDiem – MM project

19
CarpeDiem – MM project Τι είναι το CarpeDiem; Εφαρμογή προεπισκόπησης ηλεκτρονικού ταχυδρομείου, ημερολογίου και προβολής μετεωρολογικών προβλέψεων Εμπλουτισμένη με πολυμεσικές δυνατότητες (υπαγόρευση συνθετικού κειμένου, ηχητική ειδοποίηση, χρήση εξειδικευμένων εικόνων…) Παρέχει αυξημένη ευχρηστία χρησιμοποιώντας μια lightweight γραφική διεπαφή σε συνδυασμό με popup balloons, system tray,… A.U.E.B. CS Dep. Spring 05

description

CarpeDiem – MM project. A.U.E.B. CS Dep. Spring 05. Τι είναι το CarpeDiem; Εφαρμογή προεπισκόπησης ηλεκτρονικού ταχυδρομείου, ημερολογίου και προβολής μετε ω ρ ο λογικών προβλέψεων - PowerPoint PPT Presentation

Transcript of CarpeDiem – MM project

Page 1: CarpeDiem – MM project

CarpeDiem – MM project

Τι είναι το CarpeDiem;

Εφαρμογή προεπισκόπησης ηλεκτρονικού ταχυδρομείου, ημερολογίου και προβολής μετεωρολογικών προβλέψεων

Εμπλουτισμένη με πολυμεσικές δυνατότητες (υπαγόρευση συνθετικού κειμένου, ηχητική ειδοποίηση, χρήση εξειδικευμένων εικόνων…)

Παρέχει αυξημένη ευχρηστία χρησιμοποιώντας μια lightweight γραφική διεπαφή σε συνδυασμό με popup balloons, system tray,…

A.U.E.B. CS Dep. Spring 05

Page 2: CarpeDiem – MM project

CarpeDiem – MM project

➔ Σκοποί της ανάπτυξης του CarpeDiem● Αναλυτικές μετεωρολογικές προβλέψεις● Βελτιωμένη ευχρηστία μέσω lightweight γραφικής

διεπαφής● Πολυμεσική αλληλεπίδραση● Cross platform multimedia application● Μάθηση και πειραματισμός με σύγχρονες

πολυμεσικές και δικτυακές τεχνολογίες (TTS, Java sound processing, Swing, Image Processing, DOM, Java Mail API, JAF...)

A.U.E.B. CS Dep. Spring 05

Page 3: CarpeDiem – MM project

CarpeDiem – MM project

➔ Επισκόπηση Συστήματος➔ Το σύστημα σχεδιάστηκε ακολουθώντας μια προσέγγιση bottom-up συνεπώς μετά τον

προσδιορισμό των απαιτήσεων από τα προηγούμενα στάδια της ανάλυσης που κάναμε καταλήξαμε στα βασικά υποσυστήματα από τα οποία θα αποτελείτε η εφαρμογή μας. Τα τέσσερα (4) κυριότερα είναι:

– Το υποσύστημα παραγωγής συνθετικής ομιλίας από κείμενο (text to speech engine).

– Το υποσύστημα ανάλυσης των δεδομένων του καιρού (weather engine).

– Το υποσύστημα ελέγχου των νέων emails (mail engine).

– Το υποσύστημα υλοποίησης της ατζέντας / σημειωματάριου (memo engine).

➔ Παράλληλα με τα τέσσερα (4) βασικά υποσυστήματα υπάρχουν και τρία (3) ακόμη τα οποία χρησιμοποιούνται κυρίως για την συσχέτιση και σύνδεση των τεσσάρων παραπάνω συστημάτων σε μία ενιαία εφαρμογή ενώ παράλληλα προσδίδουν και μερικά ακόμη πολυμεσικά χαρακτηριστικά στο σύστημα μας. Αυτά είναι:

– To υποσύστημα αναπαραγωγής αρχείων ήχου (sound engine).

– Tο υποσύστημα της γραφική διεπαφής ελέγχου της εφαρμογής (graphical user interface – gui).

– To υποσύστημα αλληλεπίδρασης Java Native Interface.

A.U.E.B. CS Dep. Spring 05

Page 4: CarpeDiem – MM project

CarpeDiem – MM project

➔ Επισκόπηση Συστήματος

A.U.E.B. CS Dep. Spring 05

Page 5: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα memo engine

A.U.E.B. CS Dep. Spring 05

Page 6: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα memo engine● Βιβλιοθήκη lib.hq.memoengine● Τάξεις

– MEMOMessage (αποθήκευση δομής μηνύματος)– MEMOException (χειρισμός εξαιρέσεων)– MEMOList (δομή αποθήκευση memos)– MEMOEngine (διάβασμα/εγγραφή αρχείου XML,

προσθήκη/ διαγραφή MEMOS)– MEMOScheduler (ταξινόμηση λίστας,

χρονοπρογραμματισμός υπενθυμίσεων)

A.U.E.B. CS Dep. Spring 05

Page 7: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα Text-To-Speech

A.U.E.B. CS Dep. Spring 05

Page 8: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα Text-To-Speech● Βιβλιοθήκη lib.hq.ttsengine● Τάξεις:

– SynthesizerException(χειρισμός εξαιρέσεων)– TTSEngine(ταυτόχρονη φόρτωση περισσοτέρων του

ενός synthesizers, interface επεξεργασίας του επιλεγμένου synthesizer, multithreading, σύνθεση ομιλίας από κείμενο…)

– TTSSynthesizer(αποθήκευση ρυθμίσεων / παραμέτρων του συνθετικού ομιλητή, pitch, pitch range, speaking rate, voice)

A.U.E.B. CS Dep. Spring 05

Page 9: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα mail engine

A.U.E.B. CS Dep. Spring 05

Page 10: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα mail engine● Βιβλιοθήκη lib.hq.mailengine● Τάξεις

– MAILAccount(αποθήκευση ρυθμίσεων:username,pass,aaddress,server,type…και των νέων μηνυμάτων)

– MAILEngine(ταυτόχρονη φόρτωση περισσοτέρων του ενός account, σύνδεση και λήψη νέων emails, διεπαφή ρύθμισης των accounts,multithreading…)

– MAILException(χειρισμός εξαιρέσεων)– MAILMessage(περιγραφή/αποθήκευση ενός

μυνήματος:sender,subject)

A.U.E.B. CS Dep. Spring 05

Page 11: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα weather engine

A.U.E.B. CS Dep. Spring 05

Page 12: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα weather engine

● Βιβλιοθήκη lib.hq.weatherengine● Τάξεις:

● Forecast (αποθήκευση μιας πρόβλεψης: 1 LONGForecast & 5 SHORTForecasts για τις επόμενες 5 ημέρες, τοποθεσία,…)

● LONGForecast(αναλυτική πρόβλεψη: shortforecast & εικόνες για τις προβλέψεις, sunrise/sunset time, τελευταία ανανέωση, τοποθεσία παρατήρησης,…)

● SHORTForecat(συνοπτική πρόβλεψη: temperature, humidity, wind για τις ώρες της ημέρας αλλά και της νύχτας)

● WEATHEREngine(ταυτόχρονη φόρτωση περισσοτέρων της μίας τοποθεσίας, interface επεξεργασίας της επιλεγμένης τοποθεσίας, multithreading,…)

A.U.E.B. CS Dep. Spring 05

Page 13: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα JNI wrapper– Κλήση δυναμική βιβλιοθήκης .dll η οποία

δημιουργεί system tray icon το οποιο υποστηρίζει και υλοποιεί τα events χειρισμού του.

– Μέσω ειδικών κλάσσεων JNI υλοποιούμε το interface διασύνδεσης της βιβλιοθήκης με την υπόλοιπη εφαρμογή.

A.U.E.B. CS Dep. Spring 05

Page 14: CarpeDiem – MM project

CarpeDiem – MM project

➔ Υποσύστημα Java sound➔ Χρησιμοποιεί τις βιβλιοθήκες αναπαραγωγής ηχητικών αρχείων Mp3SPI

και την Java sound

➔ Η βιβλιοθήκη sound της Java αναπαράγει μόνο τα αρχεία .wav (linear PCM format) και .mid

➔ Υλοποιεί interface που εκτελεί λογαριθμικούς μετασχηματισμούς έτσι ώστε να επιτρέπεται η αναπαραγωγή αρχείων .wav, .au, .aiff που έχουν κωδικοποιηθεί με logarithmic PCM format μέσα από την βιβλιοθήκη Java Sound

➔ Υλοποιεί interface επικοινωνίας με τη βιβλιοθήκη Mp3Spi έτσι ώστε να αναπαράγονται και αρχεία τύπου .mp3 μέσα από την βιβλιοθήκη Java Sound

A.U.E.B. CS Dep. Spring 05

Page 15: CarpeDiem – MM project

CarpeDiem – MM project

➔ Swing / Εικόνες– Για τη δημιουργία του GUI χρησιμοποιήθηκε

η βιβλιοθήκη Swing της Java– Τα περισσότερα εικονίδεια ανήκουν στη

συλλογή Crystal Linux SVG– Τα δικά μας εικονίδεια σχεδιάστηκαν στο

GIMP και είναι όλα της μορφής .png– Το layout του component των

μετεορολογικών προβλέψεων στηρίζεται στο Liquid weather ++ του SuperKaramba

A.U.E.B. CS Dep. Spring 05

Page 16: CarpeDiem – MM project

CarpeDiem – MM project

➔ Μελλοντικές προσθήκες● Φωνητικός έλεγχος με χρήση του CMU Sphinx4● Χρήση animation στη γραφική διεπαφή● Προσθήκη εορτολογίου● Πολυγλωσσική υποστήριξη● Εμπλουτισμός της τεχνολογίας Text-To-Speech● Προσθήκη νέων components● Debugging

A.U.E.B. CS Dep. Spring 05

Page 17: CarpeDiem – MM project

CarpeDiem – MM project

➔ Βιβλιοθήκες / Αναφορές➔ CRIMSON XML Tree – Apache Foundation - http://xml.apache.org/cvs.html

➔ FreeTTS – Carnegie Mellon University - http://freetts.sourceforge.net/docs/index.php

➔ Mp3SPI - http://www.javazoom.net/mp3spi/mp3spi.html

➔ Java Mail API - http://java.sun.com/products/javamail/

➔ Java Activation Framework - http://java.sun.com/products/javabeans/glasgow/jaf.html

➔ Βιβλιοθήκες που αναπτύχθηκαν από εμάς

– lib.hq.memoengine

– lib.hq.weathereninge

– lib.hq.ttsengine

– lib.hq.mailengine

➔ JNI Swing Tray Icon - http://jeans.studentenweb.org/java/trayicon/trayicon.html

➔ W3C DOM - http://www.w3.org/DOM/Test/

➔ Java Swing – http://java.sun.com/docs/books/tutorial/uiswing/

A.U.E.B. CS Dep. Spring 05

Page 18: CarpeDiem – MM project

CarpeDiem – MM project

➔ Βιβλιοθήκες / Αναφορές➔ IDE:

– Sun NetBeans 3.6 - http://www.netbeans.org

– Borland JBuilder 9 - http://www.borland.com

➔ Επεξεργασία εικόνας:

– GIMP 2.2 – http://www.gimp.org

➔ Παρουσιάσεις, αναφορές

– OpenOffice 1.1.4 - http://www.openoffice.org

➔ Java 2 Platform, Standard Edition (J2SE)

– 1.5.0_03 - http://java.sun.com/j2se/1.5.0/index.jsp

– 1.4.2_02 - http://java.sun.com/j2se/1.4.2/index.jsp

A.U.E.B. CS Dep. Spring 05

Page 19: CarpeDiem – MM project

CarpeDiem – MM project

Αναπτύχθηκε από τους:

Κεμερλή Βασίλειο (3010076) – [email protected]

Παναγιώτη Παπαδόπουλο (3010010) - [email protected]

Για το μάθημα Τεχνολογία Πολυμέσων – Τμήμα Πληροφορικής – Ο.Π.Α. 2004/2005

A.U.E.B. CS Dep. Spring 05