Re: Microphone and sip video

2013-03-05 Thread Maxim Solodovnik
what line are you refering to?
This code was changed recently (this particular line is in case of
fallback: enchanced microphone is not available)


On Tue, Mar 5, 2013 at 3:41 PM, Artyom Horuzhenko akhor...@gmail.comwrote:

 Hello Maxim,

 When I test video restreaming from sip to red5, it hangs at the first
 frame, but when I comment next line:
 _micro = Microphone.getMicrophone(valMic);
 in WebContent/swf10/video/editRecordStreamSWF10.lzx it works normal.
 Do you know why the video depends on microphone settings?




-- 
WBR
Maxim aka solomax


Re: Microphone and sip video

2013-03-05 Thread Maxim Solodovnik
I have corrected this, thanks
Committed revision 1452705.

not sure why it hangs with normal microphone :(


On Tue, Mar 5, 2013 at 4:04 PM, Artyom Horuzhenko akhor...@gmail.comwrote:

 line No. 240

 2013/3/5 Maxim Solodovnik solomax...@gmail.com:
  what line are you refering to?
  This code was changed recently (this particular line is in case of
  fallback: enchanced microphone is not available)
 
 
  On Tue, Mar 5, 2013 at 3:41 PM, Artyom Horuzhenko akhor...@gmail.com
 wrote:
 
  Hello Maxim,
 
  When I test video restreaming from sip to red5, it hangs at the first
  frame, but when I comment next line:
  _micro = Microphone.getMicrophone(valMic);
  in WebContent/swf10/video/editRecordStreamSWF10.lzx it works normal.
  Do you know why the video depends on microphone settings?
 
 
 
 
  --
  WBR
  Maxim aka solomax




-- 
WBR
Maxim aka solomax


[red5phone] r101 committed - Video support is added to red5sip

2013-03-05 Thread codesite-noreply

Revision: 101
Author:   solomax...@gmail.com
Date: Tue Mar  5 01:52:05 2013
Log:  Video support is added to red5sip
http://code.google.com/p/red5phone/source/detail?r=101

Added:
 /branches/red5sip/src/java/org/red5/codecs/SIPCodecH264.java
 /branches/red5sip/src/java/org/red5/sip/app/RTPStreamVideoReceiver.java
 /branches/red5sip/src/java/org/red5/sip/app/RTPStreamVideoSender.java
 /branches/red5sip/src/java/org/red5/sip/app/RTPVideoStream.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPVideoConverter.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPVideoLauncher.java
Modified:
 /branches/red5sip/src/java/org/red5/codecs/SIPCodec.java
 /branches/red5sip/src/java/org/red5/codecs/SIPCodecFactory.java
 /branches/red5sip/src/java/org/red5/sip/app/Application.java
 /branches/red5sip/src/java/org/red5/sip/app/IMediaReceiver.java
 /branches/red5sip/src/java/org/red5/sip/app/PlayNetStream.java
 /branches/red5sip/src/java/org/red5/sip/app/RTMPRoomClient.java
  
/branches/red5sip/src/java/org/red5/sip/app/RTPStreamMultiplexingSender.java

 /branches/red5sip/src/java/org/red5/sip/app/RTPStreamSender.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPTransport.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPUserAgent.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPUserAgentProfile.java
 /branches/red5sip/src/java/org/red5/sip/app/SdpUtils.java

===
--- /dev/null
+++ /branches/red5sip/src/java/org/red5/codecs/SIPCodecH264.java	Tue Mar  5  
01:52:05 2013

@@ -0,0 +1,114 @@
+package org.red5.codecs;
+
+public class SIPCodecH264 implements SIPCodec {
+
+   private static final String codecName = H264;
+   private static final int codecId = 35;
+   private static int defaultEncodedFrameSize = 160;
+private static int defaultDecodedFrameSize = 160;
+   private int outgoingPacketization = 9;
+private int incomingPacketization = 9;
+
+   @Override
+   public void encodeInit(int defaultEncodePacketization) {
+   if (this.outgoingPacketization == 0) {
+this.outgoingPacketization = defaultEncodePacketization;
+}
+   }
+
+   @Override
+   public void decodeInit(int defaultDecodePacketization) {
+   if (this.incomingPacketization == 0) {
+this.incomingPacketization = defaultDecodePacketization;
+}
+   }
+
+   @Override
+   public String codecNegotiateAttribute(String attributeName,
+   String localAttributeValue, String 
remoteAttributeValue) {
+   // TODO Auto-generated method stub
+   return null;
+   }
+
+   @Override
+   public int getCodecBlankPacket(byte[] buffer, int offset) {
+   // TODO Auto-generated method stub
+   return 0;
+   }
+
+   @Override
+   public int pcmToCodec(float[] bufferIn, byte[] bufferOut) {
+   // TODO Auto-generated method stub
+   return 0;
+   }
+
+   @Override
+   public int codecToPcm(byte[] bufferIn, float[] bufferOut) {
+   // TODO Auto-generated method stub
+   return 0;
+   }
+
+   @Override
+   public int getIncomingEncodedFrameSize() {
+		return (defaultEncodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION) *  
incomingPacketization;

+   }
+
+   @Override
+   public int getIncomingDecodedFrameSize() {
+		return (defaultDecodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION) *  
incomingPacketization;

+   }
+
+   @Override
+   public int getOutgoingEncodedFrameSize() {
+		return (defaultEncodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION) *  
outgoingPacketization;

+   }
+
+   @Override
+   public int getOutgoingDecodedFrameSize() {
+		return (defaultDecodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION) *  
outgoingPacketization;

+   }
+
+   @Override
+   public int getSampleRate() {
+   return 9;
+   }
+
+   @Override
+   public String getCodecName() {
+   return codecName;
+   }
+
+   @Override
+   public int getCodecId() {
+   return codecId;
+   }
+
+   @Override
+   public int getIncomingPacketization() {
+		return (defaultEncodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION) *  
incomingPacketization;

+   }
+
+   @Override
+   public int getOutgoingPacketization() {
+		return 2048;//( defaultDecodedFrameSize / SIPCodec.DEFAULT_PACKETIZATION  
) * outgoingPacketization;

+   }
+
+   @Override
+   public void setLocalPtime(int localPtime) {
+   // TODO Auto-generated method stub
+
+   }
+
+   @Override
+   public void setRemotePtime(int remotePtime) {
+   // TODO Auto-generated method stub
+
+   }
+
+   @Override
+   public String[] getCodecMediaAttributes() {
+   // TODO Auto-generated method stub
+   return null;
+   }
+
+}

Re: How to change the font style

2013-03-05 Thread Alexei Fedotov
IMHO styles are part of openlaszlo. You can recompile openmeetings to
anothger style by specifying a different style directory to openlaszlo
compiler.

Please take a note that openlaszlo is to be switched to html5 in
openmeetings 3.0
05.03.2013 22:58 пользователь Behzad Rezaie behzadrezai...@gmail.com
написал:

 Hello dear,

  I am working as a developer on OpenMeetings. Now, I want to change the
 font style of the project for almost all labels. With this in mind, I was
 wondering if you'd mind telling me which file(s) I should modify for such
 an action.

  Thanks in advance!

 Yours Sincerely,
 Behzad Rezaie



Sun SDK

2013-03-05 Thread Smoeker
hi guys,

could you give me a hint, why the sun sdk is required   for running om (not 
openJDK)?

thanks in advance!

cheers  



Re: Sun SDK

2013-03-05 Thread Alexei Fedotov
Hallo Smoeker,

OpenJDK works, yet it is a bit less stable than Sun due to higher memory
concumption.
05.03.2013 23:46 пользователь Smoeker smoe...@gmail.com написал:

 hi guys,

 could you give me a hint, why the sun sdk is required   for running om
 (not openJDK)?

 thanks in advance!

 cheers




[red5phone] r102 committed - Video: video stream switching is added;...

2013-03-05 Thread codesite-noreply

Revision: 102
Author:   solomax...@gmail.com
Date: Tue Mar  5 21:44:18 2013
Log:  Video: video stream switching is added;
logs cleanup
http://code.google.com/p/red5phone/source/detail?r=102

Modified:
 /branches/red5sip/src/java/org/red5/sip/app/PlayNetStream.java
 /branches/red5sip/src/java/org/red5/sip/app/RTMPRoomClient.java
 /branches/red5sip/src/java/org/red5/sip/app/SIPVideoConverter.java

===
--- /branches/red5sip/src/java/org/red5/sip/app/PlayNetStream.java	Tue Mar   
5 01:52:05 2013
+++ /branches/red5sip/src/java/org/red5/sip/app/PlayNetStream.java	Tue Mar   
5 21:44:18 2013

@@ -7,6 +7,7 @@
 import org.red5.server.net.rtmp.event.IRTMPEvent;
 import org.red5.server.net.rtmp.event.SerializeUtils;
 import org.red5.server.net.rtmp.event.VideoData;
+import org.red5.server.net.rtmp.event.VideoData.FrameType;
 import org.red5.server.stream.AbstractClientStream;
 import org.red5.server.stream.IStreamData;
 import org.slf4j.Logger;
@@ -24,10 +25,17 @@
private IMediaSender videoSender;

private IMediaStream videoStream;
+
+   private RTMPRoomClient client;
+
+   private int currentStreamID = -1;
+
+   private boolean keyframeReceived = false;

-   public PlayNetStream(IMediaSender audioSender, IMediaSender 
videoSender) {
+	public PlayNetStream(IMediaSender audioSender, IMediaSender videoSender,  
RTMPRoomClient client) {

this.audioSender = audioSender;
this.videoSender = videoSender;
+   this.client = client;
}

public void close() {
@@ -56,8 +64,6 @@
videoSender.deleteStream(getStreamId());
}
}
-
-   private long sipStream = -1;

public void dispatchEvent(IEvent event) {

@@ -79,9 +85,25 @@
}

if (rtmpEvent instanceof VideoData) {
-   if (sipStream == -1)
-   sipStream = rtmpEvent.getHeader().getStreamId();
-   if (rtmpEvent.getHeader().getStreamId() != sipStream) 
return;
+   int newStreamId = client.getActiveVideoStreamID();
+   if (rtmpEvent.getHeader().getStreamId() != newStreamId) 
{
+   return;
+   }
+
+   if (currentStreamID != newStreamId) {
+   logger.debug(switching video to a new stream: 
 + newStreamId);
+   currentStreamID = newStreamId;
+   keyframeReceived = false;
+   }
+
+   if (((VideoData) rtmpEvent).getFrameType() == 
FrameType.KEYFRAME) {
+   keyframeReceived = true;
+   }
+
+   if (!keyframeReceived) {
+   logger.debug(Keyframe is not received. Packet is 
ignored.);
+   return;
+   }

int videoTs = rtmpEvent.getTimestamp();
 			IoBuffer videoData = ((VideoData)  
rtmpEvent).getData().asReadOnlyBuffer();

===
--- /branches/red5sip/src/java/org/red5/sip/app/RTMPRoomClient.java	Tue  
Mar  5 01:52:05 2013
+++ /branches/red5sip/src/java/org/red5/sip/app/RTMPRoomClient.java	Tue  
Mar  5 21:44:18 2013

@@ -82,6 +82,7 @@
final private int roomId;
final private String context;
final private String host;
+   private int activeVideoStreamID = -1;

public RTMPRoomClient(String host, String context, int roomId) {
super();
@@ -154,6 +155,10 @@
protected void listBroadcastIds() {
invoke(listRoomBroadcast, this);
}
+
+   public int getActiveVideoStreamID() {
+   return activeVideoStreamID;
+   }

private void createPlayStream(long broadCastId) {

@@ -177,12 +182,15 @@
if (conn != null  streamIdInt != null
 	 (publishStreamId == null || streamIdInt.intValue() !=  
publishStreamId)) {

clientStreamMap.put(broadCastId, streamIdInt);
-   PlayNetStream stream = new 
PlayNetStream(audioSender, videoSender);
+PlayNetStream stream = new PlayNetStream(audioSender, videoSender,  
RTMPRoomClient.this);

stream.setConnection(conn);
stream.setStreamId(streamIdInt.intValue());
conn.addClientStream(stream);
play(streamIdInt,  + broadCastId, -2000, 
-1000);
stream.start();
+   if (activeVideoStreamID == -1) {
+   activeVideoStreamID = streamIdInt;
+   }
}
}
}
@@ -345,6 +353,13 @@

OM stress testing

2013-03-05 Thread Vasya

Hello all!

Please see below weekly stress test report:


Tested server configuration is:

OS:Ubuntu 10.04.3 LTS

 *   RAM 2 GB
 *   CPU Intel(R) Celeron(R) E3300 @ 2.50GHz

Java VM parameters is -Xms1024M -Xmx1024M 

Revision: 1453110


Tested scenario is:

 * Start OM conference
 * Start recording with 1280x1024 resolution
 * Start screen sharing
 * Connect to conference while server is not crashed.

Today results is.

Maximum number of the users in the system -- 19

Maximum number of the users in one room of the type Conference with 
the screen sharing and recordings turned on -- 18.


All the users were logged from five Windows workstations with Adobe 
Flash Player 11.


Result: After 19 connections server is down. Recoding is not stored.

No error messages in log files.


Graphics and statistic files  are attached.


sar.tar.gz
Description: GNU Zip compressed data


Re: OM stress testing

2013-03-05 Thread Alexei Fedotov
Vasya,
I cannot see your main discovery in your lettter on thread safety of Flash
11,

--
With best regards / с наилучшими пожеланиями,
Alexei Fedotov / Алексей Федотов,
http://dataved.ru/
+7 916 562 8095


On Wed, Mar 6, 2013 at 10:43 AM, Vasya va...@unipro.ru wrote:

  Hello all!

 Please see below weekly stress test report:


 Tested server configuration is:

 OS:Ubuntu 10.04.3 LTS

-  RAM 2 GB
-  CPU Intel(R) Celeron(R) E3300 @ 2.50GHz

 Java VM parameters is -Xms1024M -Xmx1024M 

 Revision: 1453110


  Tested scenario is:

- Start OM conference
- Start recording with 1280x1024 resolution
- Start screen sharing
- Connect to conference while server is not crashed.

 Today results is.

 Maximum number of the users in the system – 19

 Maximum number of the users in one room of the type “Conference” with the
 screen sharing and recordings turned on – 18.

 All the users were logged from five Windows workstations with Adobe Flash
 Player 11.

  Result: After 19 connections server is down. Recoding is not stored.

 No error messages in log files.


  Graphics and statistic files  are attached.