From b69273cb7b6fa5a31f2736938f3202e27f280024 Mon Sep 17 00:00:00 2001 From: ouzhou Date: Thu, 18 Jul 2019 14:13:15 +0800 Subject: [PATCH] init --- .gitignore | 1 + index.as | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++ index.fla | Bin 0 -> 6775 bytes index.html | 53 ++++++++++++++++++++++++++++++ index.swf | Bin 0 -> 11054 bytes 5 files changed, 148 insertions(+) create mode 100644 .gitignore create mode 100644 index.as create mode 100644 index.fla create mode 100644 index.html create mode 100644 index.swf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3575254 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +flex_sdk_4.6 \ No newline at end of file diff --git a/index.as b/index.as new file mode 100644 index 0000000..9566745 --- /dev/null +++ b/index.as @@ -0,0 +1,94 @@ +// 文档参考 +// https://www.cnblogs.com/savageworld/archive/2006/07/28/462434.html +// https://www.oschina.net/uploads/doc/flex-doc-3.2/flash/net/NetStream.html + +import mx.utils.Base64Encoder; +import mx.graphics.codec.JPEGEncoder; + +var nc = null; +var ns = null; +var serverName; +var streamName; + +var console = { + info: function(value) { + ExternalInterface.call("console.info", value); + }, + log: function(value) { + ExternalInterface.call("console.log", value); + }, + error: function(value) { + ExternalInterface.call("console.error", value); + } +}; + +function createLiveStream() { + nc = new NetConnection(); + nc.addEventListener(NetStatusEvent.NET_STATUS, function(event) { + console.info("nc: " + event.info.code); + if (event.info.code == "NetConnection.Connect.Success") { + ns = new NetStream(nc); + ns.addEventListener(NetStatusEvent.NET_STATUS, function(event) { + console.info("ns: " + event.info.code); + }); + var nsClientObj = new Object(); + ns.client = nsClientObj; + ns.bufferTime = 3; // 3秒不会卡 + ns.play(streamName); + videoObj.attachNetStream(ns); + } + }); + nc.connect(serverName); +} + +function destoryLiveStream() { + if (ns != null) { + ns.close(); + ns = null; + } + if (nc != null) { + nc.close(); + nc = null; + } +} + +// 不做校验,自己调用出不可能出问题 +function startLive(server, stream) { + serverName = server; + streamName = stream; + destoryLiveStream(); + createLiveStream(); +} + + +function shot() { + var matrix:Matrix = new Matrix(); + matrix.scale(5, 4); + + var imager = new BitmapData(800, 450, true, 0); + imager.draw(videoObj, matrix); + + + + var e = new JPEGEncoder(100); + var actual_IMG = e.encode(imager); + + var b64 = new Base64Encoder(); + b64.encodeBytes(actual_IMG); + // Ouzzplayer + ExternalInterface.call("Ouzzplayer.shot", b64.toString()); + +} + +// TODO +// function pause() {} + +startLive("rtmp://cyberplayerplay.kaywang.cn/cyberplayer/", "demo201711-L1"); + +try { + ExternalInterface.addCallback("startLive", startLive); + ExternalInterface.addCallback("stopLive", destoryLiveStream); + ExternalInterface.addCallback("shot", shot); +} catch (err) { + console.error(err); +} diff --git a/index.fla b/index.fla new file mode 100644 index 0000000000000000000000000000000000000000..2a4145ef1264d5946b9b05cda009a0a49fab3b26 GIT binary patch literal 6775 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 + + + index + + + + +
+ + + +
+ + + + diff --git a/index.swf b/index.swf new file mode 100644 index 0000000000000000000000000000000000000000..39f15595a6404b79aef1a5af33d623476c8c1ca7 GIT binary patch literal 11054 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 literal 0 HcmV?d00001