· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Red5 Install/Open Laszlo

Red5Install/OpenLaszlo


* 2011.10.8
<canvas debug="true">
      <rtmpconnection src="rtmp://localhost/oflaDemo/"    
            autoconnect="true"/>
      <rtmpstatus/>
      <videoplayer url="avatar.flv" type="rtmp" autoplay="true"
            x="30" y="30" width="320" height="240" debug="true"/>
</canvas>
  • url ÀÇ °æ·Î Á¡°Ë ÇÊ¿ä


* 2011.10.2

* openlaszlo demo videolibrary

* videolibrary.lzx
  • canvas
    • include
    <include href="av/videotogglebutton.lzx"/>
    <include href="av/videoscreen.lzx"/>
    <include href="av/videoslider.lzx"/>
    <include href="av/videoplayer.lzx"/>
    <include href="av/videothumbnail.lzx"/>
    <include href="av/videolibrarypopup.lzx"/>
    <include href="videocamerabutton.lzx"/>
    <include href="videocamerapanel.lzx"/>
    <include href="videolibrarybutton.lzx"/>
    <include href="videolibrarypanel.lzx"/>
    <include href="videolibrarythumbnail.lzx"/>
    <include href="videocontrols.lzx"/>
    <include href="videolibraryplayer.lzx"/>
  • dataset ds_library
  • method makeNewVideo
  • method doneRecording
  • rtmpconnection id="rtc"
  • videolibraryplayer
    • id="vp" name="vp" width height type="rtmp"
    • videomaker="${canvas}"
    • visible="${rtc.stage == 2}"
  • text
  • debug

* <class name="videolibraryplayer">
  • <attribute name="type" type="string" value="rtmp"/> ...
  • <method name="makeNewVideo">
    • components/av/videoplayer.lzx
  • />
  • />
  • <videolibrarypopup name="librarypopup"/>
    • components/av/videolibrarypopup.lzx

* <class name="videocontrols">
  • <attribute name="ms" value="null"/> ...
  • />
  • />
  • />
  • />
  • />

*
  • extends="videotogglebutton"
    • components/av/videotogglebutton.lzx

* videocamerapanel.lzx
  • <class name="videocamerapanel" ...>
    • <attribute name="ms" value="null"/>
      • cam, mic, opened, topHeight, openWidth, videomaker
    • <handler name="onopened">
      • this.cam.setAttribute("show", this.opened);
      • ]]>
    • </handler>
    • <view name="bg" ..../>
    • <videotogglebutton name="recordbutton"....visible="${classroot.cam.allowed}">
      • <handler name="onengaged">
          • classroot.cam.setAttribute("show", true);
        • ]]>
      • </handler>
    • </videotogglebutton>
    • <view name="timedisplay" ...>
      • <view name="background" ... />
      • <text name="recordtimefield" .../>
    • </view>
    • <view name="audiometer" ...>
      • <view name="background" .../>
      • <view name="g" ...>
      • </view>
    • </view>
      • visible="${!classroot.cam.allowed}"
      • onclick="classroot.cam.showSettings()"/>
    • <text name="t1" ...visible="${!classroot.cam.allowed}"/>
    • <text name="t2" ...visible="${!classroot.cam.allowed}"/>
  • </class>
* 2011.9.30

* synaptic * http://www.openlaszlo.org/archive
  • 4.7.1
  • edit .bashrc
    • insert export JAVA_HOME=/usr/lib/jvm/java-6-sun
    • source .bashrc

* red5-0.9.1.tar.gz
  • red5 index.html
  • red5-server restart
  • click install
  • select item -> install box click
  • ¿À·ù°¡ ¹ß»ýÇÒ ¼ö ÀÖÀ½.
  • ´Ù½Ã ¼³Ä¡¸¦ ÇÏ·Á¸é, ¼³Ä¡µÇ¾ú´Ù´Â ¿À·ù ¸Þ½ÃÁö°¡ ³ª¿È.

* manually install

openlaszlo


<canvas debug="true">
        <rtmpconnection src="rtmp://localhost/oflaDemo" autoconnect="true">
        <handler name="onconnect">
                Debug.write("connected");
        </handler>
        <handler name="onerror">
                Debug.write("error");
        </handler>
    </rtmpconnection>
    <videoview id="v" url="avatar.flv" type="rtmp" autoplay="true"/>
  <button x="10" y="200" text="play" onclick="v.stream.play()"/>
  <button x="80" y="200" text="stop" onclick="v.stream.stop()"/>
</canvas>

* log
2011-09-30 16:40:55,737 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:session x-event:connect c-ip:127.0.0.1 c-client-id:26
2011-09-30 16:40:55,737 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - oflaDemo appConnect
2011-09-30 16:40:55,737 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appConnect: RTMPMinaConnection from 127.0.0.1 : 41566 to localhost (in: 3416 out 3073 )
2011-09-30 16:40:55,738 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appJoin: Client: 26 >> [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:40:55,738 [NioProcessor-1] INFO  org.red5.server.jmx.JMXFactory - Object name: org.red5.server:type=RTMPMinaConnection,connectionType=persistent,host=localhost,port=1935,clientId=26
2011-09-30 16:40:55,801 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:0e28cc30-b954-477d-9330-75042add946d
2011-09-30 16:40:55,806 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:0e28cc30-b954-477d-9330-75042add946d x-name:avatar.flv
2011-09-30 16:40:55,812 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:a434d3ac-b46f-44bb-ba38-2e43f705909e
2011-09-30 16:40:55,815 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:a434d3ac-b46f-44bb-ba38-2e43f705909e x-name:avatar.flv
2011-09-30 16:40:55,820 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:ee442403-0772-491b-895e-4fc463a1a4b2
...
2011-09-30 16:40:55,828 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:3938 sc-bytes:3387 x-sname:0e28cc30-b954-477d-9330-75042add946d x-file-length:0 x-file-size:6457675 x-name:avatar.flv
2011-09-30 16:40:55,829 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:3938 sc-bytes:3387 x-sname:a434d3ac-b46f-44bb-ba38-2e43f705909e x-file-length:0 x-file-size:6457675 x-name:avatar.flv
2011-09-30 16:40:55,830 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:3938 sc-bytes:3387 x-sname:0e28cc30-b954-477d-9330-75042add946d
2011-09-30 16:40:55,831 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:3938 sc-bytes:3387 x-sname:a434d3ac-b46f-44bb-ba38-2e43f705909e
2011-09-30 16:40:55,844 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:4005 sc-bytes:17141 x-sname:ee442403-0772-491b-895e-4fc463a1a4b2 x-file-length:0 x-file-size:6457675 x-name:avatar.flv
...
2011-09-30 16:41:21,526 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:4500 sc-bytes:236608 x-sname:2548e914-2c6f-498c-8011-50570a3d01d5
2011-09-30 16:41:21,527 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - disconnect: RTMPMinaConnection from 127.0.0.1 : 41566 to localhost (in: 4500 out 236615 ) << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:41:21,528 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:session x-event:disconnect c-ip:127.0.0.1 c-client-id:26
2011-09-30 16:41:21,528 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - oflaDemo appDisconnect
2011-09-30 16:41:21,528 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appDisconnect: RTMPMinaConnection from 127.0.0.1 : 41566 to localhost (in: 4500 out 236615 )
2011-09-30 16:41:21,528 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - leave: Client: 26 << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:41:21,528 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appLeave: Client: 26 << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']

servlet

* /red5-examples/oflaDemo/src/org/red5/demos/oflaDemo
  • Application.java: this is the main class
public class Application extends ApplicationAdapter {
    private IScope appScope;
    private IServerStream serverStream;

    public boolean appStart(IScope app) {
        super.appStart(app);
        appScope = app;
        return true;
    }
    public boolean appConnect(IConnection conn, Object[] params) {
        return super.appConnect(conn, params);
    }
    public void appDisconnect(IConnection conn) {
        if (appScope == conn.getScope() && serverStream != null) {
            serverStream.close();
        }
        super.appDisconnect(conn);
    }
}
  • DemoService.java
  • DemoServiceImpl.java
  • IDemoService.java
  • SecurityTest.java

XML files


* /var/lib/red5/webapps/oflaDemo/WEB-INF
:

root@enk:/var/lib/red5/webapps/oflaDemo/WEB-INF# ls -R
.:
classes  lib  red5-web.properties  red5-web.xml  web.xml

./classes:
applications  logback-oflaDemo.xml  org

./classes/applications:
demoservice.js	demoservice.rb	main.js  main.rb
demoservice.py	main.groovy	main.py

./classes/org:
red5

./classes/org/red5:
demos

./classes/org/red5/demos:
oflaDemo

./classes/org/red5/demos/oflaDemo:
Application.class  DemoServiceImpl.class  SecurityTest.class
DemoService.class  IDemoService.class

./lib:

* red5-web.properties
  • included by red5-web.xml
  • webapp.contextPath will be the path to our application at connection
    • ( not the folder name under webapps!!! )
webapp.contextPath=/oflaDemo
webapp.virtualHosts=*, localhost, localhost:8088, 127.0.0.1:8088

* red5-web.xml
<bean id="web.handler" class="org.red5.demos.oflaDemo.Application" />
<bean id="demoService.service" class="org.red5.demos.oflaDemo.DemoService" />

* web.xml
        <context-param>^M
                <param-name>webAppRootKey</param-name>^M
                <param-value>/oflaDemo</param-value>^M
        </context-param>^M

demo log

* http://localhost:5080/demos/ofla_demo.html
  • connect
  • select avatar.flv
  • playing
  • disconnect

* 0.0.0.0_access.2011-09-30.log
127.0.0.1 - - [30/Sep/2011:16:49:12 +0900] "GET /demos/ofla_demo.html HTTP/1.1" 200 861
127.0.0.1 - - [30/Sep/2011:16:49:12 +0900] "GET /demos/assets/swfobject.js HTTP/1.1" 304 -
127.0.0.1 - - [30/Sep/2011:16:49:12 +0900] "GET /demos/ofla_demo.swf HTTP/1.1" 200 130194

* red5.log
2011-09-30 16:50:20,702 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:session x-event:connect c-ip:127.0.0.1 c-client-id:27
2011-09-30 16:50:20,702 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - oflaDemo appConnect
2011-09-30 16:50:20,702 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appConnect: RTMPMinaConnection from 127.0.0.1 : 52563 to localhost (in: 3394 out 3073 )
2011-09-30 16:50:20,702 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appJoin: Client: 27 >> [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:50:20,702 [NioProcessor-1] INFO  org.red5.server.jmx.JMXFactory - Object name: org.red5.server:type=RTMPMinaConnection,connectionType=persistent,host=localhost,port=1935,clientId=27
2011-09-30 16:50:27,320 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:1204e0d5-5cd4-40b1-ae9b-7e26f4bbd2f2
2011-09-30 16:50:27,322 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:play c-ip:127.0.0.1 x-sname:1204e0d5-5cd4-40b1-ae9b-7e26f4bbd2f2 x-name:avatar.flv
2011-09-30 16:50:40,239 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:stream x-event:stop c-ip:127.0.0.1 cs-bytes:3700 sc-bytes:466225 x-sname:1204e0d5-5cd4-40b1-ae9b-7e26f4bbd2f2
2011-09-30 16:50:40,239 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - disconnect: RTMPMinaConnection from 127.0.0.1 : 52563 to localhost (in: 3700 out 466225 ) << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:50:40,240 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - W3C x-category:session x-event:disconnect c-ip:127.0.0.1 c-client-id:27
2011-09-30 16:50:40,240 [NioProcessor-1] INFO  org.red5.demos.oflaDemo.Application - oflaDemo appDisconnect
2011-09-30 16:50:40,240 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appDisconnect: RTMPMinaConnection from 127.0.0.1 : 52563 to localhost (in: 3700 out 466225 )
2011-09-30 16:50:40,240 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - leave: Client: 27 << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']
2011-09-30 16:50:40,240 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.Application - appLeave: Client: 27 << [WebScope@e05ad6 Depth = 1, Path = '/default', Name = 'oflaDemo']

* oflademo.log
2011-09-30 16:50:20,714 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - getting the FLV files
2011-09-30 16:50:20,715 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvName: avatar.flv
2011-09-30 16:50:20,715 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - lastModified date: 30/09/11 12:53:29
2011-09-30 16:50:20,715 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvBytes: 6457675
2011-09-30 16:50:20,715 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - -------
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvName: toystory3.flv
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - lastModified date: 30/09/11 12:53:29
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvBytes: 1665121
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvBytes: 1665121
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - -------
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvName: toystory3-vp6.flv
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - lastModified date: 30/09/11 12:53:29
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvBytes: 3755607
2011-09-30 16:50:20,716 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - -------
2011-09-30 16:50:20,717 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvName: avatar-vp6.flv
2011-09-30 16:50:20,717 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - lastModified date: 30/09/11 12:53:28
2011-09-30 16:50:20,717 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - flvBytes: 8130415
2011-09-30 16:50:20,717 [NioProcessor-1] DEBUG org.red5.demos.oflaDemo.DemoService - -------

ID
Password
Join
Love is in the offing. Be affectionate to one who adores you.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2011-10-08 16:33:17
Processing time 0.0142 sec