Lebih
Bagaimana cara memutar streaming langsung rtmp menggunakan videojs?
Saya menggunakan OBS untuk mendorong streaming langsung ke server rtmp lokal saya (node-rtsp-rtmp-server), dan bekerja dengan baik dengan pemutar media VLC. Saya hanya ingin memasukkannya ke halaman web dan saya menemukan videojs. Itu tidak bekerja dan mengembalikan Atribut "tipe" yang ditentukan "rtmp/mp4" tidak didukung. Sepertinya server rtmp saya tidak menerima permintaan dari halaman web ini. Jadi apa yang saya lewatkan? ini kode saya:
<head>
<meta charset="utf-8">
<link href="./video-js-6.0.0/video-js.css" rel="stylesheet">
<script src="./video-js-6.0.0/video.js"></script>
<script src="./video-js-6.0.0/videojs-flash.min.js"></script>
<script>
videojs.options.flash.swf = "./video-js-6.0.0/video-js.swf"
</script>
</head>
<body>
<video id='vid' class='video-js' controls height=300 width=600>
<source src="rtmp://127.0.0.1:1935/live/pokemon" type="rtmp/mp4"/>
</video>
<script>
var player = videojs('vid');
</script>
</body>
8
3
Parameter data-setup techorder tampaknya diperlukan agar videojs menggunakan flash.
Jika hal itu tidak berhasil, maka pastikan bahwa file javascript Anda semuanya baik. Mulai versi 6 dari video.js tidak lagi mendukung flash secara default. https://docs.videojs.com/tutorial-faq.html#q-how-can-i-play-rtmp-video-in-videojs
Saya menggunakan nginx untuk server saya.
https://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmp-server-using-nginx.50/
https://github.com/arut/nginx-rtmp-module
Jika Anda lebih suka menggunakan CDN untuk file video.js dan video-js.css, ganti head dengan
Catatan: Waktu Anda lebih baik dihabiskan untuk mempelajari HLS atau DASH daripada flash
Untuk mempublikasikan stream dari server RTMP ke halaman web, Anda memiliki 2 opsi:
Browser tidak mendukung RTMP. Satu-satunya cara untuk menyambung ke RTMP stream dalam browser adalah dengan menggunakan Flash.
Pertimbangkan untuk menggunakan protokol distribusi yang lebih kompatibel, seperti DASH, yang didukung dengan Media Source Extensions.