| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| --> |
| |
| <canvas debug="true" width="100%" height="100%" fontsize="14" title="OpenMeetings - Computer testing"> |
| |
| <debug fontsize="14" oninit="Debug.showInternalProperties = true"/> |
| |
| <include href="lang/en.lzx"/> |
| |
| <include href="lib/"/> |
| <include href="content/"/> |
| |
| <tabs name="mainTabs"> |
| <tabpane selected="true" text="${mess.home}"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.welcome}" multiline="true" width="${this.parent.width - 20}" /> |
| <nextButton nextTabpane="${this.parent.parent.soundTab}" text="${mess.next}" /> |
| </tabpane> |
| |
| <tabpane text="${mess.sound}" name="soundTab" onselect="//Debug.write('focus'); audioplayer.play();"> |
| |
| <!-- define content areas which are |
| kind of component in classes --> |
| <audioTest name="_audiotest" /> |
| |
| </tabpane> |
| |
| <tabpane text="${mess.micro}" name="microTab"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.microRecord}" multiline="true" width="${this.parent.width - 20}" /> |
| <view> |
| <simplelayout axis="x" spacing="-1"/> |
| <button width="40" onclick="audioplayer.stop()"> |
| <view resource="resources/play.png" y="6" align="center"/> |
| </button> |
| <button width="40" onclick="audioplayer.play()"> |
| <view resource="resources/record.png" y="5" align="center"/> |
| </button> |
| </view> |
| |
| <view> |
| <simplelayout axis="x" spacing="-1"/> |
| <button width="40" onclick="audioplayer.setVolume( audioplayer.getVolume() -10)"> |
| -<view resource="resources/mix_volume.png" y="5" align="right"/> |
| </button> |
| <button width="40" onclick="audioplayer.setVolume( audioplayer.getVolume() +10)"> |
| +<view resource="resources/mix_volume.png" y="5" align="right"/> |
| </button> |
| </view> |
| <nextButton nextTabpane="${this.parent.parent.webcamTab}" text="${mess.next}" /> |
| </tabpane> |
| |
| <tabpane text="${mess.webcam}" name="webcamTab"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.webcamText}" multiline="true" width="${this.parent.width - 20}" /> |
| <view id="v1" layout="axis:y; spacing:4"> |
| <videoview id="live" type="rtmp" stream="$once{canvas.s1}" width="240" height="160"> |
| <camera id="cam" show="true" fps="20" width="240" height="160" |
| picturequality="0"/> |
| <microphone id="mic" capturing="false"/> |
| |
| </videoview> |
| </view> |
| <nextButton nextTabpane="${this.parent.parent.messTab}" text="${mess.next}" /> |
| </tabpane> |
| |
| <tabpane text="${mess.bandwidth}" name="messTab"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.bandwidthText}" multiline="true" width="${this.parent.width - 20}" /> |
| <nextButton nextTabpane="${this.parent.parent.latencyTab}" text="${mess.next}" /> |
| </tabpane> |
| |
| <tabpane text="${mess.latency}" name="latencyTab"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.latencyText}" multiline="true" width="${this.parent.width - 20}" /> |
| <nextButton nextTabpane="${this.parent.parent.synthesisTab}" text="${mess.next}" /> |
| </tabpane> |
| |
| <tabpane text="${mess.synthesis}" name="synthesisTab"> |
| <simplelayout axis="y" spacing="5"/> |
| <text text="${mess.synthesisText}" multiline="true" width="${this.parent.width - 20}" /> |
| </tabpane> |
| </tabs> |
| |
| |
| <rtmpconnection src="rtmp://192.168.0.1/'+canvas.webAppRootKey+'/test" autoconnect="true"/> |
| <mediastream name="s1" type="rtmp"/> |
| <mediastream name="s2" type="rtmp"/> |
| <simplelayout/> |
| |
| <!-- |
| <text multiline="true" width="100%"> Instructions: |
| <br/> 1. Either run a flash media server on localhost (127.0.0.1), or ssh tunnel to a |
| media server at a known host |
| <br/> 2. Press the broadcast button. (Grant camera access permission if needed.) The |
| button should change to say "stop broadcasting" |
| <br/> 3. Press the receive button. You should be receiving audio and video from |
| yourself and the button should say "stop receiving." |
| <br/> 4. Try out the audio and video mute buttons. The video mute should freeze the |
| received picture. The audio mute should silence the received sound. |
| <br/> 5. Press the receive button. The received video should freeze and the button |
| should say "stop receiving". |
| <br/> 6. Press the receive button again. The video should resume and the button should |
| say "receiving". |
| <br/> 7. Press the broadcast button. The received video should freeze and the button |
| should say "broadcast".<br/> <br/> The indicator below shows the status of the video |
| connection. |
| </text> |
| --> |
| </canvas> |