Έχω μια κάμερα ip που παρέχει μια ζωντανή ροή βίντεο RTSP. Μπορώ να χρησιμοποιήσω το πρόγραμμα αναπαραγωγής πολυμέσων VLC για να προβάλω την τροφοδοσία παρέχοντάς του τη διεύθυνση URL:
rtsp://cameraipaddress
Αλλά πρέπει να εμφανίσω την τροφοδοσία σε μια ιστοσελίδα. Ο πάροχος της κάμερας παρείχε ένα στοιχείο ελέγχου ActiveX το οποίο έβαλα σε λειτουργία, αλλά είναι πραγματικά προβληματικό και προκαλεί συχνή παύση λειτουργίας του προγράμματος περιήγησης.
Γνωρίζει κανείς κάποιο εναλλακτικό πρόσθετο βίντεο που θα μπορούσα να χρησιμοποιήσω και το οποίο να υποστηρίζει RTSP;
Η κάμερα μπορεί να ρυθμιστεί για ροή σε H264 ή MPEG4.
Το VLC διαθέτει επίσης ένα πρόσθετο ActiveX που μπορεί να εμφανίσει την τροφοδοσία σε μια ιστοσελίδα:
http://wiki.videolan.org/ActiveX/HTML
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
codebase="http://downloads.videolan.org/pub/videolan/vlc/latest/win32/axvlc.cab"
width="640" height="480" id="vlc" events="True">
<param name="Src" value="rtsp://cameraipaddress" />
<param name="ShowDisplay" value="True" />
<param name="AutoLoop" value="False" />
<param name="AutoPlay" value="True" />
<embed id="vlcEmb" type="application/x-google-vlc-plugin" version="VideoLAN.VLCPlugin.2" autoplay="yes" loop="no" width="640" height="480"
target="rtsp://cameraipaddress" ></embed>
</OBJECT>
Χονδρικά μπορείτε να έχετε 3 επιλογές για την εμφάνιση ροής βίντεο RTSP σε μια ιστοσελίδα:
Μπορείτε να βρείτε τον κώδικα για την ενσωμάτωση του activeX μέσω της αναζήτησης στο Google.
Απ' όσο γνωρίζω, υπάρχουν κάποιοι περιορισμοί για κάθε αναπαραγωγέα.
Δοκιμάστε το QuickTime Player! Ακολουθεί η JavaScript μου που δημιουργεί το ενσωματωμένο αντικείμενο σε μια ιστοσελίδα και αναπαράγει τη ροή:
//SET THE RTSP STREAM ADDRESS HERE
var address = "rtsp://192.168.0.101/mpeg4/1/media.3gp";
var output = '<object width="640" height="480" id="qt" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab">';
output += '<param name="src" value="'+adsress+'">';
output += '<param name="autoplay" value="true">';
output += '<param name="controller" value="false">';
output += '<embed id="plejer" name="plejer" src="/poster.mov" bgcolor="000000" width="640" height="480" scale="ASPECT" qtsrc="'+address+'" kioskmode="true" showlogo=false" autoplay="true" controller="false" pluginspage="http://www.apple.com/quicktime/download/">';
output += '</embed></object>';
//SET THE DIV'S ID HERE
document.getElementById("the_div_that_will_hold_the_player_object").innerHTML = output;