This repository was archived by the owner on Jun 19, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpublisher.html
More file actions
76 lines (66 loc) · 2.64 KB
/
publisher.html
File metadata and controls
76 lines (66 loc) · 2.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<!DOCTYPE html>
<html>
<head>
<title>Flash Rtmp Publisher</title>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
// url parameters
// get params from href (url, stream name)
// e.g. ?streamurl=rtmp://server.com/live&streamname=mystream
// url = urlparams.get("streamurl")
// name = urlparams.get("streamname")
var urlparams = {};
if(URLSearchParams) {
urlparams = new URLSearchParams(location.search);
} else {
urlparams.get = function(name) {
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
var results = regex.exec(location.search);
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
};
}
console.log("starting...");
// default stream parameters
// NOTE: you need to obtain valid stream info from bintu
var streamurl = "rtmp://bintu-stream.nanocosmos.de/live";
//var streamurl = "rtmp://bintu-atrans.nanocosmos.de/atrans";
var streamname = "XXXXX-YYYYY";
var vbitrate = 500; // max. kbits/s
var acodec = "speex";
//acodec = "nellymoser";
//acodec = "pcma";
streamurl = urlparams.get("streamurl") || streamurl;
streamname = urlparams.get("streamname") || streamname;
var acodec = urlparams.get("acodec") || acodec;
var vbitrate = urlparams.get("vbitrate") || vbitrate;
var dynamicResolution = urlparams.get("dynamicResolution") || 0;
var disablevideo = urlparams.get("disablevideo") || false;
var disableaudio = urlparams.get("disableaudio") || false;
embedFlashBroadcaster(streamurl, streamname, acodec, vbitrate, disablevideo, disableaudio, dynamicResolution);
function embedFlashBroadcaster(streamurl, streamname, acodec, vbitrate, disablevideo, disableaudio, dynamicResolution) {
var flashVars = {
//streamer: 'rtmp://localhost/myapp',
streamer: streamurl,
//file: streamname,
streamname: streamname,
acodec: acodec,
vcodec: "h264",
vbitrate: vbitrate,
disablevideo: disablevideo,
disableaudio: disableaudio,
dynamicResolution: dynamicResolution
};
console.log("flashVars:");
console.log(flashVars);
// embed flash object
swfobject.embedSWF("RtmpPublisher.swf", "rtmp-publisher", "640", "480", "9.0.0", null, flashVars);
}
</script>
</head>
<body>
<div id="rtmp-publisher">
<p>Flash not embedded</p>
</div>
</body>
</html>