Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

Διαχείριση Συσκευών Πολυμέσων

1. Δικαιώματα Περιηγητή με το navigator.permissions

  • Πρόσβαση σε υλικό:
    • Κάμερα web
    • Μικρόφωνο
  • Προαιρετικά δικαιώματα:
    • Γεωτοποθεσία
    • Ειδοποιήσεις
    • Πρόχειρο (ανάγνωση/εγγραφή)
  • Υποβολή ερωτημάτων και κατάσταση δικαιωμάτων
  • Περιορισμοί και συμβατότητα περιηγητών

2. Ανάγνωση Συσκευών Πολυμέσων με το navigator.mediaDevices

  • Απαρίθμηση συσκευών
  • Διαχείριση αλλαγών συσκευών

3. Συμβατότητα μεταξύ Περιηγητών

  • Χρήση API:
    • navigator.permissions.query()
    • navigator.mediaDevices.enumerateDevices()
    • getUserMedia()
  • Στρατηγική υποκατάστασης για Safari

4. Διαχείριση Συσκευών Πολυμέσων

  • Αρχικοποίηση συσκευής: getUserMedia(constraints)
  • Περιορισμοί συσκευών πολυμέσων
  • Έναρξη και διακοπή ροών πολυμέσων
  • Διαχείριση αλλαγών συσκευών

5. Συσκευές Εγγραφής με το MediaRecorder

  • Έναρξη/διακοπή ροής και εγγραφής
  • Λήψη αρχείου .webm
  • Προεπισκόπηση κυματομορφής σε πραγματικό χρόνο

Προαιρετικές Προσθήκες:

  • Αποθήκευση σε μορφή .wav χρησιμοποιώντας το ScriptProcessorNode
  • Απεικόνιση φάσματος FFT ήχου
  • Μπάρα έντασης σε ντεσιμπέλ
  • Αναγνώριση φωνής με το webkitSpeechRecognition

Σύνδεση Ομοτίμων (Peer Connection)

1. Διακομιστές Σηματοδότησης

  • Επιλογές αμφίδρομων καναλιών:
    • WebSocket
    • Socket.io
    • SignalR
  • Δομή μηνύματος
  • Απλοποιημένος πελάτης WebRTC
  • Πλήρης ροή σηματοδότησης

2. Βιντεοκλήση μέσω WebRTC

  • Αρχιτεκτονική: Node.js + ws
  • Πελάτης WebRTC: RTCPeerConnection
  • Τοπικός έλεγχος E2E

Προαιρετικές Λειτουργίες:

  • Τερματισμός κλήσης (κλείσιμο σύνδεσης, διακοπή πολυμέσων)
  • Ομαδικές κλήσεις (δωμάτια πολλαπλών χρηστών)
  • Απλή πιστοποίηση βασισμένη σε διακριτικά (tokens)

3. Κοινή Χρήση Οθόνης

  • Χρήση της getDisplayMedia()
  • Αρχιτεκτονική και επιλογές

4. Πρωτόκολλο Περιγραφής Συνεδρίας (SDP)

  • Εισαγωγή και περιεχόμενα
  • Ανάγνωση και ερμηνεία SDP
  • Κωδικοποιητές:
    • Ήχου & Βίντεο
    • Διαπραγμάτευση και έλεγχος
    • Στρατηγικές υποκατάστασης

5. Στατιστικά WebRTC με την getStats()

  • Τύποι στατιστικών
  • Πώς να ερμηνεύσετε τα στατιστικά
  • Γραφήματα ζωντανού ρυθμού μετάδοσης/απόκλισης (jitter)
  • Στρατηγικές προσαρμογής ποιότητας

6. Όλα τα θέματα είναι

  • Πρακτικό σενάριο χρήσης

Απαιτήσεις

Αυτό το μάθημα είναι ιδανικό για προγραμματιστές frontend και full-stack, αρχιτέκτονες τεχνολογίας και μηχανικούς που δημιουργούν λειτουργίες επικοινωνίας σε πραγματικό χρόνο βασισμένες στον περιηγητή, όπως βιντεοκλήσεις, κοινή χρήση οθόνης ή ροή ήχου. Οι συμμετέχοντες θα πρέπει να έχουν άνετη γνώση JavaScript και τεχνολογιών ιστού, με προαιρετική εμπειρία σε Node.js και επικοινωνία βασισμένη σε WebSocket.

 14 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (3)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες