Commit Graph

496 Commits

Author SHA1 Message Date
saxon 43701a252f rtmp: start reordering funcs in rtmp.go, still need to do a few more 2018-08-24 10:43:34 +09:30
saxon 1441d1d968 rtmp: reordered struct order in rtmp_headers.go such that it matches up with order in rtmp.h under C librtmp 2018-08-24 10:34:10 +09:30
saxon e22516d9cb rtmp: fixed order of struct declarations in amf_headers.go to match that of amf.h under C librtmp? 2018-08-24 10:30:24 +09:30
saxon dfa146f276 rtmp: file header comments to reflect file name and appropriate authors 2018-08-24 10:25:36 +09:30
saxon 9cb70ac06b rtmp: created session.go file and moved librtmp wrapper functions into this file, i.e. NewSession, Open, Close and Write 2018-08-24 09:52:51 +09:30
saxon 4fa0637fa1 rtmp: moved amf structs into amf_headers.go and rtmp structs into rtmp_headers.go 2018-08-24 09:47:11 +09:30
saxon dec662d19e rtmp: created rtmp_headers.go and amf_headers.go files to store stuff that was in rtmp.h and amf.h files respectively 2018-08-24 09:41:02 +09:30
saxon 0adddd1833 rtmp: started reordering funcs in rtmp.go - realised that I need a rtmp_headers.go file to store stuff that's from rtmp.h 2018-08-24 09:38:17 +09:30
saxon 898c843f18 rtmp: added appropriate imports to each file to correct build errors 2018-08-24 09:33:05 +09:30
saxon 68b9f2a5e0 rtmp: created parseurl file and moved C_RTMP_ParseURL and C_RTMP_ParsePlaypath from to rtmp.go to parseurl.go 2018-08-24 07:04:01 +09:30
saxon 8f3d4b75bf rtmp: moved all AMF funcs from rtmp.go to amf.go 2018-08-24 06:58:22 +09:30
saxon 7a9fef826c rtmp: moved amf structs from rtmp.go to amf.go 2018-08-24 06:49:47 +09:30
saxon 595fa5a469 rtmp: tracking new file amf.go 2018-08-24 06:47:13 +09:30
saxon 6019bb4559 rtmp: moved amf enum from rtmp.go to amf.go 2018-08-24 06:44:15 +09:30
saxon ce95cad9ef rtmp: addedd additional licensing information in rtmp.go header 2018-08-24 06:14:37 +09:30
saxon fbd94e659f rtmp: updated cgo LDFLAGS so that not outdated and does not cause undefined symbol runtime error on pi 2018-08-24 06:11:21 +09:30
saxon 6dd791f7e1 rtmp: changed call to allocate to call to malloc as allocate does not exist anymore 2018-08-21 18:44:26 +09:30
saxon 5f7d84a120 revid: getting rid of crt dependency and using C.realloc for the time being 2018-08-21 18:42:13 +09:30
Alan Noble ce04e5f5ce revid: convert size for realloc to int32 so that compiler doesn't complain when on go1.10 2018-08-21 17:58:04 +09:30
saxon aae9acdd64 Removed unused consts 2018-08-20 11:57:13 +09:30
saxon 1b4db5b0dc Removed session interface and mad session struct exported 2018-08-20 10:22:36 +09:30
saxon d7d2d3b9d5 Got rid of all C.realloc and replaced with my realloc func - tested and working 2018-08-18 15:48:49 +09:30
saxon 54ee353f6b Wrote calloc func and replaced C.calloc with it - tested and working 2018-08-18 14:01:38 +09:30
saxon eda42f4e10 Got rid of all C.mallocs and changed to my malloc, also removed all C.free - tested and working 2018-08-18 13:56:10 +09:30
saxon efb5b75f1a Started using my structs - tested and working 2018-08-18 13:51:07 +09:30
saxon 3da48c15d3 removed unused code 2018-08-18 12:54:40 +09:30
saxon aef3cd3001 Using AMFProp_Decode everywhere -tested and working 2018-08-15 20:46:38 +09:30
saxon 1e6bf462da Chedk that everything is working 2018-08-15 20:43:47 +09:30
Dan Kortschak 8be354a6d5 Port AMF3ReadInteger, AMF3ReadString, AMF3DC_AddProp and AMFProp_SetName 2018-08-15 19:27:14 +09:30
Dan Kortschak 346e63ca7c Finish up most of AMFProp_Decode
Punt one call, AMF3_Decode, that has AMF3ReadInteger, AMF3ReadString,
AMF3CD_AddProp, AMF3Prop_Decode and AMFProp_SetName as deps.
2018-08-15 17:29:05 +09:30
saxon 2e608aba88 In the middle of AMFProp_Decode 2018-08-15 05:28:34 +09:30
saxon 6113174e3d Ported AMF_AddProp - tested and working 2018-08-15 04:47:43 +09:30
saxon a2931934a6 Ported AMFProp_Reset - tested and working 2018-08-15 04:33:34 +09:30
saxon 62a1f6dec1 Ported AMF_Reset - tested and working 2018-08-15 04:28:34 +09:30
saxon 11bc432b54 Ported SendCheckBW - tested and working 2018-08-15 04:23:15 +09:30
saxon 6e7dbcda60 Ported SendPublish - tested and working 2018-08-15 04:19:18 +09:30
saxon a3654269e5 Ported RTMP_SendCreateStream - tested and working 2018-08-15 04:13:24 +09:30
saxon a61d4a3a60 Ported SendFCPublish - tested and working 2018-08-15 04:05:15 +09:30
saxon e02c785881 ported SendReleaseStream - tested and working 2018-08-15 04:00:49 +09:30
saxon 6cfabc671f Ported AV_erase - tested and working 2018-08-15 03:34:18 +09:30
saxon 27006d8fd3 Forgot to actually ues AMFProp_GetNumber - tested and working 2018-08-15 03:16:46 +09:30
saxon 9c460b90cf Ported AMFProp_GetNumber - tested and working 2018-08-15 03:14:35 +09:30
saxon 137c5a0c14 Ported AMF_GetProp - tested and working 2018-08-15 03:09:57 +09:30
saxon 48042f6813 Ported AMFProp_GetObject - tested and working 2018-08-15 02:54:41 +09:30
saxon 165a855d51 Ported AMFProp_GetString to C_AMFProp_GetString - tested and working 2018-08-15 02:47:40 +09:30
saxon e1079dab98 Ported C_AMF_Decode - tested and working 2018-08-15 02:36:17 +09:30
saxon 11798bb9ff Updated c stuff to be more usable while we port 2018-08-14 22:59:58 +09:30
saxon bd4131e974 Added files and line numbers to port todos 2018-08-14 22:59:10 +09:30
saxon 9266fc79d7 Simplified code (identified code that doesn't run in our use case - reducing no of funcs to port 2018-08-14 22:51:25 +09:30
saxon 4723a46c91 Fixed seg fault bug - HandlInvoke ported to C_HandleInvoke - tested and working 2018-08-14 22:30:47 +09:30
saxon da99cbe86b Ported HandleInvoke - need to test 2018-08-14 18:22:37 +09:30
saxon 73e2c9977a Identified functions that need porting using todo comments above HandleInvoke in rtmp.go at +1911 onwards 2018-08-14 16:36:42 +09:30
saxon 96290d295d Marking functions that need to be ported 2018-08-14 12:52:40 +09:30
saxon ceb954a328 Ported AVMATCH - not yet tested 2018-08-14 12:45:03 +09:30
saxon 5a3383c27d Fixing the formatting of HandleInvoke - it was real bad before - probably wrong 2018-08-14 12:33:52 +09:30
saxon 5f1879c58b In the middle of porting HandleInvoke 2018-08-13 12:15:43 +09:30
saxon 4328f1853b Started porting HandlInvoke 2018-08-12 21:04:14 +09:30
saxon 74735feb63 Ported AMF_DecodeInt32 to C_AMF_DecodeInt32 - tested and working 2018-08-12 20:45:46 +09:30
saxon 1fcb91dcef Ported AMF_DecodeInt32 to C_AMF_DecodeInt32 2018-08-12 20:45:06 +09:30
saxon 4f1b6ff56f Ported handleclientbw, handleserverbw and handle
changechunksize
2018-08-12 19:47:53 +09:30
saxon dc6e9a9a4b Removed code we currently don't need in, C_RTMP_ClientPacket - tested and working 2018-08-12 19:37:56 +09:30
saxon 1c8e7b01fc Ported RTMP_ClientPacket to C_RTMP_ClientPacket - not tested yet 2018-08-12 18:37:39 +09:30
saxon 1ed14d523d Ported and using RTMPPacket_Free - tested and working 2018-08-11 14:34:52 +09:30
saxon 9cde6f49f7 ported EncodeInt32LE and now using - tested and working 2018-08-11 13:59:55 +09:30
saxon e680fc76fa Using my C_DecodeInt32LE func - tested and working 2018-08-11 13:54:25 +09:30
saxon d480f427c1 ported DecodeInt32LE - still need to test 2018-08-11 13:52:32 +09:30
saxon 7111456991 Working again but not sure whyyy 2018-08-11 13:48:21 +09:30
saxon a20beaf75e Using my rtmp_read_packet is crashing 2018-08-11 12:30:11 +09:30
saxon 6137df30b3 Ported RTMP_GetTime - tested and working 2018-08-11 12:21:22 +09:30
saxon c8c3b4b3aa Using my C_SocksNegotiate func - tested and working 2018-08-11 11:44:55 +09:30
saxon cb2f4549ed Ported SocksNegotiate to C_SocksNEgotiate - still need to test 2018-08-11 11:40:42 +09:30
saxon 504c79ab27 Starting to port SocksNegotiate 2018-08-11 02:24:50 +09:30
saxon e6c62026d7 Using my C_RTMP_ParsePlaypath func - tested and working 2018-08-11 02:14:17 +09:30
saxon fbaafa0f8d Ported RTMP_ParsePlaypath to C_RTMP_ParsPlaypath - still need to test 2018-08-11 02:00:11 +09:30
saxon e9a196306c Now using my C_RTMP_ParseURL func - tested and working 2018-08-11 01:17:48 +09:30
saxon 2e3dfab7e2 Ported RTMP_ParseURL - still need to test 2018-08-11 01:13:25 +09:30
saxon e552384a42 Ported strstr() from c to go for use in librtmp.go 2018-08-10 23:22:53 +09:30
saxon 85de75a4c6 Cleaned up my structs - they are now all in go 2018-08-10 22:49:43 +09:30
saxon f0c5dd7bc3 Using my C_RTMP_ConnectStream func - tested and working 2018-08-10 22:30:22 +09:30
saxon 9fcdfe6367 Using my C_RTMP_Write func - tested and working 2018-08-10 22:27:51 +09:30
saxon 44187cdc22 Using my C_RTMP_IsConnected - tested and working 2018-08-10 22:20:11 +09:30
saxon ed536b2cdd Started using session interface again - tested and everything seems to be working 2018-08-10 22:17:01 +09:30
saxon 1c7fc111f0 changed int to int32 in structs 2018-08-10 16:50:53 +09:30
saxon a007bbeef1 added data length check to sliceToPtr 2018-08-10 16:46:39 +09:30
saxon db2f6a4756 Use len(... instead of sizeof in C_RTMP_SetupUrl 2018-08-10 16:43:19 +09:30
saxon 358e32d2ac Fixed alot of errors in code, now runnable 2018-08-10 16:10:08 +09:30
saxon 28ae89ac29 Use 0 in instead of 0.0 in float setting under C_RTMP_Connect0 2018-08-10 13:38:33 +09:30
saxon 7cea7c5628 Removed var tmp in C_RTMP_Connect for use in memset size determination, can just use var service created above 2018-08-10 13:37:35 +09:30
saxon e9fc1927b3 Added handling of av_len = 0 etc in C_SocksSetup 2018-08-10 13:31:17 +09:30
saxon cfe7689e31 Changed uintptr check to use nil instead of 0 2018-08-08 17:29:18 +09:30
saxon bded7b6240 Added comment regarding missing code left out with rtmp http stuff in it 2018-08-08 17:17:59 +09:30
saxon ace742d80e Got rid of *session Session check 2018-08-08 17:15:23 +09:30
saxon 87e9e383b1 Got rid of session interface and made session struct exported 2018-08-08 17:12:56 +09:30
saxon 441b97ed44 Split up consts 2018-08-08 17:06:16 +09:30
saxon 84c149f61b Added space between some consts 2018-08-08 16:59:32 +09:30
saxon 8ca1aac3db Commented all functions with name and location of C versions 2018-08-08 15:07:54 +09:30
saxon e4cd61b663 Started commenting functions to indicate name and location of C versions 2018-08-07 14:19:11 +09:30
saxon 16c769a411 changed names of my structs to have C_... 2018-08-07 13:58:00 +09:30
saxon 1841b16feb Commented my structs with locations and names in librtmp C library 2018-08-07 13:54:58 +09:30
saxon 736bbfed6d Changed name of avQueue to C_AvQueue 2018-08-07 12:42:37 +09:30
saxon f7559152d9 Changed name of sockBufSend to C_SockBufSend 2018-08-07 12:41:49 +09:30
saxon 5ffd3ddee6 changed name of writeN to C_WriteN 2018-08-07 12:40:43 +09:30
saxon d2fa240c1c Changed name of rtmpSendPacket to C_RTMP_SendPacket 2018-08-07 12:33:40 +09:30
saxon 342a575587 changed name of rtmpWrite to C_RTMP_Write 2018-08-07 12:32:23 +09:30
saxon 4a3ff1f4b9 Changed name of rtmpReadPacket to C_RTMP_ReadPacket 2018-08-07 12:31:30 +09:30
saxon 49a54bccf8 Changed name of rtmpPacketIsReady to C_RTMP_PacketIsReady 2018-08-07 12:30:59 +09:30
saxon beb59bf8e7 Changed name of all amfEncodes to C_AMFENcode... and changed name of all amfDecode... to C_AMFDecode... 2018-08-07 12:30:14 +09:30
saxon 2c6d458372 Changed name of amfPropEncode to C_AMFPropEncode 2018-08-07 12:29:02 +09:30
saxon 1e206875ee Changed name of sendConnectPacket to C_SendConnectPacket 2018-08-07 12:28:06 +09:30
saxon dd83eda2e9 Changed name of sendBytesReceived to C_SendBytesReceived 2018-08-07 12:27:28 +09:30
saxon f76b228f3e changed name of rtmpSockBufFill to C_RTMP_SockBufFill 2018-08-07 12:26:39 +09:30
saxon c8407ac2d0 Changed name of readN to C_ReadN 2018-08-07 12:25:20 +09:30
saxon a04647fb3b Changed name of handShake to C_HandShake 2018-08-07 12:24:25 +09:30
saxon 9df51d1bd1 Changed name of rtmpConnect to C_RTMP_Connect and, rtmpConnect0 to C_RTMP_Connect0 and rtmpConnect1 to C_RTMP_Connect1 2018-08-07 12:13:15 +09:30
saxon 2e6baaf732 Changed name of rtmpConnect to C_RTMP_Connect 2018-08-07 12:12:11 +09:30
saxon 2a26a0d625 Changed name of rtmpSetBufferMS to C_RTMP_SetBufferMS 2018-08-07 12:08:48 +09:30
saxon 9bd643bc89 Chaged name of rtmpEnableWrite to C_RTMP_EnableWrite 2018-08-07 12:07:42 +09:30
saxon 36cae47dc3 Changed name of socksSetup to C_SocksSetup 2018-08-07 12:05:58 +09:30
saxon 10d655f69c Changed name of rtmpSetupUrl to C_RTMP_SetupUrl 2018-08-07 12:04:49 +09:30
saxon 10733af04f Changed name of rtmpInit to C_RTMP_Init 2018-08-07 12:04:04 +09:30
saxon ba101285ff Changed name of rtmpAlloc to C_RTMP_Alloc 2018-08-06 15:42:16 +09:30
saxon fe16404448 Updated name of C_RTMP_IsConnected 2018-08-06 14:00:37 +09:30
saxon 049b47b92d Updating remote 2018-08-04 14:47:45 +09:30
saxon c967824d3b Updating some C code to make more usable 2018-08-04 13:08:52 +09:30
saxon 1a8aeace34 Updating c stuff 2018-08-02 22:09:05 +09:30
saxon 7f6d377cb1 Using my amfEncodeArray func - tested and working 2018-08-01 07:38:35 +09:30
saxon 56a7bede73 Using my amfEncodeEcmaArray - tested and working 2018-07-31 07:32:46 +09:30
saxon a1a8289a7f Ported amfEncodeEcmaArray - need to test 2018-07-31 07:30:34 +09:30
saxon f4ce5dff9d Using my amfEncode - tested and working 2018-07-31 07:22:40 +09:30
saxon 51fc5b49af Ported amfEncode - need to test 2018-07-31 07:16:10 +09:30
saxon 558c27ffbc Ported amfPropEncode and now using - tested and working 2018-07-29 22:29:53 +09:30
saxon 1b1843d2b6 Fixed my avQueue func - now using, tested and working 2018-07-29 21:13:40 +09:30
saxon 10667ba5f0 Getting seg fault in avQueue 2018-07-29 11:03:34 +09:30
saxon 0fc985d1c5 using my amfDecodeNumber in rtmpSendPacket - tested and working 2018-07-29 10:57:06 +09:30
saxon c7640ada0e Fixed amfDeocdeInt16 - tested and working 2018-07-29 10:55:02 +09:30
saxon 084f7ce52b Using my amfDecodeString but need to fix amfDecodeInt16 - tested and working 2018-07-29 10:36:55 +09:30
saxon 6978e73aee Using my sendPacket func in sendConnectPacket - tested and working 2018-07-29 10:27:46 +09:30
saxon 1f6a59b050 Using all my encoding functions in sendConnectPacket - tested and working 2018-07-29 10:26:05 +09:30
saxon c205e3874a Using my amfEncodeNamedNumber and amfEncodeNumber - tested and working 2018-07-29 10:24:27 +09:30
saxon 60b88dbf6c Using my amfEncodeNamedBoolean and amfEncodeBoolean - tested and working 2018-07-29 10:21:53 +09:30
saxon a3ceff1a0a Using my afmEncodeNamedString - tested and working 2018-07-29 10:17:53 +09:30
saxon 0ae81ef52a Using my amfEncodeNumber - tested and working 2018-07-29 09:45:14 +09:30
saxon d886d43139 Using my amfEncodeString in a second place - tested and working 2018-07-29 09:43:19 +09:30
saxon c7549d4aa1 Using my amfEncodeString - tested and working 2018-07-29 09:42:20 +09:30
saxon fc897a509d USing my readN again - tested and working 2018-07-29 09:33:09 +09:30
saxon 76ced667b9 Works when I don't use my amfEncodeString, clearly we need to work on that 2018-07-29 09:31:19 +09:30
saxon bb1f63d8bd Fixed some serious bugs 2018-07-28 23:10:57 +09:30
saxon 4847728ddf Using C memory functions until I can use go ones using linkname stuff or get mine right such that they work 2018-07-28 22:32:59 +09:30
saxon 357bf4c87b Using my realloc - tested and working 2018-07-28 21:44:05 +09:30
saxon e059095c74 Using my rtmpSendPacket func - tested and working 2018-07-28 21:41:42 +09:30
saxon 8285941eec Using my sendConnectPacket func - tested and working 2018-07-28 21:30:08 +09:30
saxon fadac283e5 Created AMF 'enum' 2018-07-28 17:14:02 +09:30
saxon 7ddd2ac6d1 Using our amfEncodeInt32 - tested and working 2018-07-28 16:44:27 +09:30
saxon 93104c1539 Using my sendBytesRecieved func - tested and working 2018-07-28 16:37:15 +09:30
saxon 43c3f7032c Ported sendbytesrecieved 2018-07-28 16:36:01 +09:30
saxon 7d9d4639b9 Using my sockBufFill - tested and working 2018-07-28 16:28:24 +09:30
saxon 670e79f8f0 Using my readN - tested and working 2018-07-28 15:50:59 +09:30
saxon 89e5f334da Hopefully fixed readN problem 2018-07-28 15:47:32 +09:30
saxon 159a21c73a using my writeN tested and worked, but still using C readN 2018-07-28 15:41:38 +09:30
saxon 55d96bb2f1 Using my handshake func failed, need to go in and see what's wrong 2018-07-28 15:37:50 +09:30
saxon 4062508078 Now rtmpConnect1 is using after having gone in and started using C funcs, let's start to try and use mine instead 2018-07-28 15:36:32 +09:30
saxon 3215983163 Tried using my rtmpConnect1 func - tested but failed - going to go in and use more c stuff until working 2018-07-28 15:34:11 +09:30
saxon 71be64631b Using my rtmpConnect0 - tested and working 2018-07-28 15:32:38 +09:30
saxon 603ac6dfc7 My rtmpConnect now working after using C funcs inside 2018-07-28 15:31:45 +09:30
saxon fc53e45505 Using my rtmpConnect - tested but failed, going to go into rtmp connect and use C funcs instead of mine 2018-07-28 15:29:05 +09:30
saxon 8c2748af0f Using my rtmpSetBufferMS - tested and working 2018-07-28 15:26:38 +09:30
saxon 42f0e791cf Using my rtmpEnableWrite - tested and working 2018-07-28 15:25:31 +09:30
saxon b20a344eb1 Commented out rtmp close and rtmp frees - tested and working 2018-07-28 15:24:36 +09:30
saxon 3a56d47244 Using my rtmpParseURL- tested and working 2018-07-28 15:23:25 +09:30
saxon 0bac388843 Using my rtmpInit - tested and working 2018-07-28 15:22:15 +09:30
saxon e7ba480770 Using my rtmpAlloc - tested and working 2018-07-28 15:20:30 +09:30
saxon 69ff0bbad5 Back to working order - now we will slowly go through changing to my funcs making sure it works 2018-07-28 15:08:09 +09:30
saxon 80cc24f665 Ported ReadN, but need to get things working 2018-07-28 14:55:25 +09:30
saxon 6a6f704840 Going to start using go structs instead of C 2018-07-28 14:27:30 +09:30
saxon 5a6c6837ea Can't understand this bug I have 2018-07-28 11:25:35 +09:30
saxon 656bec1cfd Added some todos to rtmp_test.go 2018-07-28 11:08:05 +09:30
saxon 5cba7d7c02 Wrote realloc func 2018-07-28 11:05:51 +09:30
saxon 5cca4d45a5 Getting seg fault 2018-07-28 10:15:12 +09:30
saxon 0d7d445804 Got rid of build errors, just need to test 2018-07-27 14:44:02 +09:30
saxon 736e96142c Porting alot of encoding decoding funcs 2018-07-27 14:06:40 +09:30
saxon c86bede9d0 Ported sendConnectPacket - still need to test 2018-07-26 17:06:44 +09:30
saxon 46673e0309 Finally found value for av_connect 2018-07-25 10:56:59 +09:30
saxon 7088a88fe9 Tested handshake 2018-07-24 21:36:39 +09:30
saxon 839738df13 Ported handshake - still need to test 2018-07-24 21:30:50 +09:30
saxon 3e0d1a01d2 Still writing handShake func and also created new memcmp func 2018-07-23 08:38:22 +09:30
saxon 4eff566a73 Started writing handshake function - program currently still buildable 2018-07-23 00:14:23 +09:30
saxon aaa7cdbdab Ported SocksSetup and tested 2018-07-22 23:31:19 +09:30
saxon 6cc807f56f Ported RTMP_IsConnected and tested 2018-07-22 23:06:10 +09:30
saxon d00a2994e3 Ported RTMP_ConnectStream and tested 2018-07-22 23:01:50 +09:30
saxon ee44c3d713 Change some funcs from static to non static so that I can use them 2018-07-22 22:40:16 +09:30
saxon e3eaa99284 Ported RTMP_Connect0 to rtmpConnect0 - and tested with success 2018-07-22 18:18:46 +09:30
saxon 30cf9bd6e3 Ported rtmp connect 2018-07-21 08:54:16 +09:30
saxon 5938dcf0d5 Ported RTMP_SetBufferMS and tested 2018-07-20 21:34:38 +09:30
saxon cba28550e2 Implemented ported rtmpEnableWrite 2018-07-20 21:31:55 +09:30
saxon ee09683248 Removed func calls we don't need and also improved testing 2018-07-20 21:28:00 +09:30
saxon 2d02b77fc1 Removed functions we don't need 2018-07-20 21:27:28 +09:30
saxon c01ea8323c Implemented rtmp close func, but need to do more testing - also changed rtmp.c and rtmp.h to remove static funcs 2018-07-20 21:25:02 +09:30
saxon 09a1470df7 Wrote rtmpClose and close internal and tested - but more testing needed 2018-07-20 21:23:57 +09:30
saxon d3b00475ae Using Saxon's setup URL func, tested and working 2018-07-20 17:50:32 +09:30
saxon 3b25a0f254 Replaced RTMP_Init with Saxon's rtmpInit - tested and works 2018-07-20 17:48:44 +09:30