Archive for July, 2009

New AVChat 3 Build Availabale

Wednesday, July 29th, 2009

We’ve put a new build of AVChat 3 up today, this build (284 ) includes mostly bug fixes for the Red5 version of AVChat 3 and several small enhancements.

Enhancements:

  • new protection against spam messages (if a user sends the same message over and over again, he will be the only one seeing them, other users will only see the message once :D)
  • the Red5 server side files are now compiled to be compatible with Java 1.5
  • when autostartCameras is ON, you will not start to view your webcam automatically anymore (when you publish it)
  • the positioning algorithm for other people’s webcams has been updated
  • the “who is typing” messages shown in the text chat can now be disabled from the config file
  • several security enhancements
  • implemented workaround for Flash Player bug that prevented uploading files from working in the Joomla/Drupal and osDate plugins.

Bug fixes

  • some license keys were not properly recognized
  • sometimes the users list was not sorting properly by username
  • when the users list is sorted by username , the sorting is case insensitive
  • closing the chat software while you were typing would result in “X is typing” message being stuck in the text chat
  • the text messages over the video streams where not properly repositioned when resizing the video area (thanks Jannis)
  • missing mp3 sounds from the sounds folder caused the chat not to start
  • recordAudioVideoStreams was always true in the Settings panel when running AVChat 3 on Red5
  • The admin can not delete anymore rooms that are not empty
  • The external users list and number of users was not always properly updated

How to get the new AVChat 3 release

You can obtain the latest AVChat 3 files by downloading the software again using the download link from the delivery/trial email. You will automatically download the latest build which includes all the bug fixes and feature enhancements mentioned in this post .

After downloading them:

  • do a clean install or
  • overwrite all the old files including the FMS/Red5 server side files!

What’s next?

We are still working on adding support for Wowza, and the next build will include several new small features! We are also preparing a paper explaining all the security features implemented in AVChat 3!

New AVChat 3 documentation and more

Monday, July 27th, 2009

We have rearranged the documentation area on our website and we’ve added some new documentation for AVChat 3:

Last week we’ve also had some posts on some interesting features in AVChat 3, if you missed them here they are again:

We are also preparing a big paper on security features implemented in AVChat 3 and I tell you, it doesn’t get any more secure than this! :)

AVChat 3 Feature Highlight: Stream Trip Time Delay

Thursday, July 23rd, 2009

In the side menu for other people’s web cams, AVChat 3 now shows an estimation of how much it takes for the video and audio data to travel from the broadcaster to the viewer (trough the media server) . We call this value trip time but its also known as latency.

Video Stream Trip Time

Video Stream Trip Time

The value is not always 100% exact but it is a really good estimation!

For one to many broadcasts the trip time value  is not important, live TV broadcasts generally  have a 5-15 seconds delay to give broadcasters time to censor any audio needing censorship

A low trip time is really important when the audio/video communication goes both ways, for example when 2 people are in a video conference. Imagine what would happen if when talking with someone over the phone it would take 5 seconds for your voice to travel from you to the other person.

The trip time in AVChat 3 is influenced by

  • how close the broadcaster and the viewer are to the media server
  • sound quality (paradoxically the higher the better)
  • the Internet connection of the broadcaster and the viewer

Trip time values you are likely to get when your video chat users are close to the media server and have good, low latency, Internet connections:

  • 200 ms on audio+video streams
  • 50ms on video only streams

AVChat 3 feature highlight: Recording the Video Streams

Tuesday, July 21st, 2009

AVChat 3 uses a media server (like Red5 and FMIS) to stream audio and video between users. The audio and video data travels from the broadcaster user to the media server and from there to the receiver user. While it goes trough the server the audio and video data can be captured and stored in .flv files.

Codecs being used…

The audio data will be encoded with the NellyMoser codec and the video track will be encoded with the Sorenson Spark h.263 video codec. The audio and video encoding is done  by Flash Player (before it sends the data to the media server), and Flash Player can only encode with those codecs.

So when the audio and video data hits the media server it is already encoded, the media server just saves the data into .flv files!

Enabling audio/video streams recording

The feature is disabled by default because it tends to use large amounts of space over the time.

If you use Red5:

  1. edit avchat30/avchat3.properties
  2. set recordAudioVideoStreams=true
  3. restart Red5

You will find the new .flv files in Red5/webapps/avchat30/streams/_definst_

The flv files are named like this: username+ “_”+ unique user id assigned by FMS + “_”+ timestamp (from when the userstarted publishing ).

If you use FMIS:

  1. edit avchat30/settings.asc
  2. set recordAudioVideoStreams=true
  3. reload the avchat30 FMIS application using the FMIS Management Console (or restart FMIS)

You will find the new .flv files in FMS/applications/avchat30/streams/_definst_.

The flv files are named like this: username+ “_”+ unique user id assigned by FMS + “_”+ timestamp (from when the user connected to FMIS).

If you use Wowza:

  1. edit Wowza/conf/avchat30/Application.xml
  2. On line 25 change live-lowlatency with live-record and save
  3. Restart Wowza

You will find the new .flv files in Wowza/content/ .

The flv files are named like this: username+ “_”+ unique user id assigned by Wowza .

Audio Video Quality

On the media server it is recorded whatever gets sent from the client .swf file, so to increase the audio/video quality of the recordings you need to increase the audio/video quality used inside the video chat software.

Important: Because you are recording audio/video streams that are destined for live viewing, the quality of the recordings  is not as high as the quality that you get with a dedicated Flash video recording software like our Flash Video Recorder. Live streams are maintained as “live” as possible by Flash Player and the media server by dropping video frames and even stopping the video data from being sent to the media server because audio data has higher priority than video data (this will only happen over slow connections tough where audio+video data just doesn’t t fit trough in a “live” way).

Important 2: When you have auto bandwidth reduction turned on (it’s on by default) streams are passed trough the media server only when there is someone watching the respectiv stream. So even tough user X is broadcasting, his stream will only be recorded if he has one or more viewers. teh steram recording process will also stop when user X has no more viewers. You can turn off auto bandwidth reduction.

Playing back the recorded files

To play back the .flv files on your desktop you can use  this desktop flv player from Martijn de Visser.

To play back the .flv files on your website directly from the media server you can use any flash video player for websites that supports streaming. I recommend JW FLV Media Player or Flow Player. You can also move the .flv files from your media server to your web server and deliver them to your users via progressive download (YouTube in its first months)

.flv files with no meta data

Because of the way they are recorded, some .flv files will end up having no duration metadata, thus resulting in funny playback. To fix this run those flv files trough flvmdi or flvtool2.

AVChat 3 feature highlight: Dynamic Bandwidth Usage Reduction

Monday, July 20th, 2009

AVChat 3 , as all the other flash video chats out there, uses a media server (like Red5 and FMIS) to stream audio and video between users. The audio and video data travels from the broadcaster user to the media server and from there to the receiver user.

Even tough there is no receiver (if there is no one watching) the stream still travels from the broadcaster to the media server, thus consuming bandwidth on the media server and on the broadcaster’s Internet connection.

This is where AVChat 3’s “Dynamic Bandwidth Usage Reduction” kicks in. When this feature is activated (it is by default) the broadcaster streams audio and video to the media server ONLY WHEN IT HAS VIEWERS.

Here is bandwidth usage graph explaining how this feature works:

Dynamic bandwidth usage reduction in action

Dynamic bandwidth usage reduction in action

This feature will save a lot of bandwidth over time both on your media server ( or media server hosting account) and on your users Internet connections.

To disable it (now why would you want to do that? :) ) edit avc_setting.xxx and search for the automaticallyReduceBandwidthUsage variable. Set it to 0 to disable it.

AVChat 3 for Red5 0.8 now available

Monday, July 13th, 2009

Red5 0.8 support

We are glad to announce that AVChat 3 for Red5 0.8 is now available.

Only Red5 0.8 is supported! We do no plan to support Red5 0.7 or earlier versions because  0.8 is the most stable Red5 release yet and we encourage everyone to upgrade their Red5 installation if they have not done so already!

To purchase AVChat 3 now visit the purchase page! When you purchase AVChat 3 you will now get both the FMIS and the Red5 media server files.

Other Enhancements

  • after logging in the chat, when joining the first room the welcome message is shown at the bottom of the existing text chat (history)
  • you can now change the amount of lines of previous text (history) chat that you see when joining a room
  • the code in avc_settings.asp has been changed from JavaScript to vbScript
  • default text used throughout the software is now Tahoma instead of Verdana. Verdana caused RTL text to be displayed in an awquard way!
  • you can now configure the path to the .xml language file (translations) in avc_settings.xxx (languagefile variable)
  • you can now configure the software to automatically start broadcasting the users webcam and mics only if they have a webcam (if they have only a mic they dont start braodcasting, autoStartMyCamAndMicOnlyIfIHaveACam variable )
  • if you post a link to a image, the image will be automatically shown in the text chat

Bug fixes:

  • if you started braodcasting your webcam/mic while you were in two rooms, your broadcast could fail and other users could not see/hear you.
  • the external users list was not updated when a user started his webcam/mic
  • freevideotime=-1 in avc_settings.xxx now disables the free video time limit
  • the history shared object for each room became large over time and joining rooms took too long
  • the SEND text chat button did not have a translation in the language file
  • When using the Joomla component  or Drupal module you could not take a webcam fullscreen
  • when clicking the U/I/B buttons the text chat input box does not loose focus anymore

How to get the new AVChat 3 release

You can obtain the latest AVChat 3 files by downloading the software again using the download link from the delivery/trial email. You will automatically download the latest build which includes all the bug fixes and feature enhancements mentioned in this post and the Red5 0.8 server side files. After downloading them do a clean install or overwrite all the old files including the FMS server side files!

What’s next?

We will start working on adding support for Wowza.

We are also gathering feedback on what major/minor features to add so if you want any features implemented send us an email at contact@avchat.net or leave a comment!