Video Streaming
VideoWhisper Video Recorder
The video recorder allows site users to record webcam videos easily from website pages. This can be use on various sites to implement online features like:
+ video sharing, on demand video content
+ video messaging, video email
+ video content on member profiles, video teasers, video questionnaires
+ video comments for online posts and items, video discussions, video forums
Videos are recorded as flv files on the rtmp server and can be played trough the rtmp protocol or by http players as on youtube (if published to a web accessible location).
For more details check the home page of VideoWhisper web based Video Recorder.
Related Posts:
Live Streaming v2 by VideoWhisper
VideoWhisper.com upgraded the Live Streaming application bringing several improvements and optimizations requested by users.

Some of the improvements:
- advanced webcam settings (change realtime resolution, framerate, audio rate)
- fullscreen button for video watching interface
- fullscreen on click for embedded plain video stream interface
- generate updated jpg snapshots for each live stream
- timers (displayed on each interface depending on settings) can be used to control access, integrate in pay per view systems
- multiple new options and parameters passed from script side
Also some RTMP application improvements should be mentioned like external player support and live video archiving as FLV for the Red5 application.
Upgrades are available for download on VideoWhisper.com and do not involve any costs for free or paid licenses.
First edition available with the upgrade is the PHP edition. The rest should follow shortly.
Related Posts:
Online Video Consultation Solution by VideoWhisper
VideoWhisper Video Consultation is a premium high definition video communication software designed for online video consultations, trainings, webinars, coaching and online collaboration.
It was designed for few to many 2 way moderated video communication. Moderators control what participant is displayed on main screen (speaker) and can also add an additional participant (inquirer) to ask questions or assist. Participants can change their public status (i.e. request to speak), upload and download room files, text and video chat.
Related Posts:
Installing VideoWhisper Video Conference on your Windows Computer
This was originally posted on http://www.videowhisper.com/forum.php?ftid=58&t=Basic-install by rustynails and explains how to installing VideoWhisper Video Conference and all required servers on your Windows computer.
Related Posts:
Install latest Red5 on Linux Server
Updated for Red5 1.0 RC1 +
Updated for JDK 1.6.31 (32bit/64bit).
Updated for ANT 1.8.3 .
Here is how we installed latest Red5 and JDK on a server with Linux CentOS . These hints can help you install on many linux VPS or Dedicated enviroments.
You will need root access to deploy new software on the server. On some dedicated/vps configuration providers only give a regular account that you can use to access root indirectly with su root. Process is more complicated as you have write access with first account only on your home: you need to exchange any files with a tool like WinSCP using that location.
We use WinSCP and PuTTy on Windows and muCommander & Terminal on MacOS.
First, know your server (linux distribution and processor type ie. x86_64):
cat /etc/*release*
uname -a
Then, make sure there are all prerequisites to install the rpm:
yum install rpm-build redhat-rpm-config
Allow required ports (not necessary if already opened): 3690 (svn), 5080, 1935, 1936, 8088. See more details at the end of this tutorial.
JAVA INSTALLATION
Easiest java to install is with:
yum install java-1.6.0-openjdk*
Or install latest JDK from http://www.oracle.com/technetwork/java/javase/downloads/index.html .
You can install latest Java6 JDK (scroll down) or latest (top) depending on applications you plan to use.
Use uname -a to see if you need to download a 64 bits version.
Went to root/tmp folder for downloads:
cd /root/tmp
We got Java SE Development Kit, JDK 6 Update 31. We selected linux multilanguage, right clicked > properties on the jdk-6u31-linux-i586-rpm.bin and downloaded it with wget url on the server. It downloaded with a big name with parameters (ls to see after download). We use WinSCP so we right clicked, refreshed from there and then renamed the new file that showed up in the root home directory.
You can also rename it from shell. Make sure you use mv “old_long_name” new_name for the long name as it uses special characters.
Make sure you install JDK and not JRE.
wget http://download.oracle.com/otn-pub/java/jdk/6u31-b04/jdk-6u31-linux-x64-rpm.bin
Made it executable and executed it:
chmod a+x jdk-6u31-linux-i586-rpm.bin
./jdk-6u31-linux-i586-rpm.bin
If it’s just .rpm install it with rpm -Uhv file :
rpm -Uhv jdk-7-linux-x64.rpm
Press space or enter to scroll terms and when it asks you type yes and hit enter.
If needed confirm Java DB update, yes ENTER.
We installed it on multiple servers and had to change some shortcuts on ones that already had an older java, so it runs the new one. Usually if preinstalled it’s located in a java or jdk folder in /usr or /usr/local .
Make sure the shortcuts in /usr/local point to the new locations (/usr/local/jdk to /usr/java/jdk1.6.0_14 and /usr/local/jre to /usr/java/jdk1.6.0_14/jre) .
ln -s /usr/java/latest /usr/local/jdk
ln -s /usr/java/latest/jre /usr/local/jre
Also /usr/bin/java shortcut should point to /usr/java/latest (not /etc/alternatives/java):
rm /usr/bin/java
ln -s /usr/java/latest/bin/java /usr/bin/java
export JAVA_HOME=/usr/java/latest/
Make sure this is the one used if you also have older versions installed:
java –version
ANT INSTALLATION
Downloaded ant (can be done from any mirror – see http://ant.apache.org/bindownload.cgi), unpacked it, moved it to a good location and added variable, shortcut.
Get ANT
wget http://archive.apache.org/dist/ant/binaries/apache-ant-1.8.3-bin.tar.gz
tar zxvf apache-ant-1.8.3-bin.tar.gz
mv apache-ant-1.8.3 /usr/local/ant
If older ANT is preferred get latest from http://archive.apache.org/dist/ant/binaries/ .
i.e. ANT 1.7.1
wget http://www.apache.org/dist/ant/binaries/apache-ant-1.7.1-bin.tar.gz
tar zxvf apache-ant-1.7.1-bin.tar.gz
mv apache-ant-1.7.1 /usr/local/ant
Configure
export ANT_HOME=/usr/local/ant
ln -s /usr/local/ant/bin/ant /usr/local/bin/ant
Replace old ant
rm /usr/bin/ant
ln -s /usr/local/ant/bin/ant /usr/bin/ant
Checked ant version:
ant –version
If this can’t find java, make sure you run export JAVA_HOME=/usr/java/latest/.
Error: JAVA_HOME is not defined correctly.
We cannot execute /usr/local/jdk/bin/java
SUBVERSION INSTALLATION
yum install subversion
If that doesn’t work because of something like Missing Dependency: perl(URI) >= 1.17 is needed by package subversion … maybe this can help:
Fix: Install perl uri:
wget http://mirror.centos.org/centos/5/os/i386/CentOS/perl-URI-1.35-3.noarch.rpm
rpm -Uvh perl-URI-1.35-3.noarch.rpm
Fix: This time got “Error: Cannot retrieve repository metadata (repomd.xml) for repository: atrpms. Please verify its path and try again” .
Solution: yum –disablerepo=atrpms install subversion .
RED5 BUILD AND INSTALLATION
Then we downloaded Red5:
svn co http://red5.googlecode.com/svn/java/server/trunk red5
Update1: This downloads latest Red5. On this installation (update1) Red5 1.0 RC1 + revision 4315 was downloaded.
If latest trunk has bugs or does not work fine with your required software you can download other versions from http://red5.googlecode.com/svn/java/server/tags/ .
Example:
svn co http://red5.googlecode.com/svn/java/server/tags/0_8_0/ red5
or
svn co http://red5.googlecode.com/svn/java/server/tags/0_9rc1/ red5
Built red5 :
cd red5
ant prepare
ant dist
You could also remove sample applications if you don’t plan to use these:
rm -rf /opt/red5/dist/webapps/live
rm -rf /opt/red5/dist/webapps/installer
rm -rf /opt/red5/dist/webapps/vod
rm -rf /opt/red5/dist/webapps/installer
rm -rf /opt/red5/dist/webapps/root/demos
rm -rf /opt/red5/dist/webapps/root/WEB-INFWhen upgrading, copy webapps to new build:
cp -rf /opt/red5/dist/webapps/* /root/tmp/red5/dist/webapps/
Then rename old red5 (backup).
Move Red5 from home folder:
cd ..
mv red5 /opt/red5
Start Red5:
cd /opt/red5/dist
./red5.sh > start.log &
The > start.log is to have it output the logs in the file and & is to keep it running in the background.
Verified that Red5 is running:
ps aux | grep red5
This should report a long line with java and many options and this command. Check start.log if it failed to start.
Make sure these ports are active and red5 (java) is listening:
netstat -anp | grep 1935
netstat -anp | grep 5080
If 1935 shows up and 5080 doesn’t it probably means web server is not running. On latest versions Red5 no longer includes tomcat. See Red5 JEE Container Plugins for details.
You will need to overwrite conf/jee-container.xml with one extracted from plugin jar and create a plugins/ folder with multiple jars (get this from older red5 distributions).
START RED5 ON BOOT
The nice way would be to run Red5 as a service by adding a red5 file with execution permissions to /etc/rc.d/init.d :
#!/bin/bash
#
# For RedHat and cousins:
#
# chkconfig: 2345 85 85
# description: Red5 flash streaming server
# processname: red5
#PROG=red5
RED5_HOME=/opt/red5/dist
DAEMON=$RED5_HOME/$PROG.sh
PIDFILE=/var/run/$PROG.pid# Source function library
. /etc/rc.d/init.d/functions[ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5
RETVAL=0
case “$1″ in
start)
echo -n $”Starting $PROG: ”
cd $RED5_HOME
$DAEMON >/dev/null 2>/dev/null &
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo $! > $PIDFILE
touch /var/lock/subsys/$PROG
fi
[ $RETVAL -eq 0 ] && success $”$PROG startup” || failure $”$PROG startup”
echo
;;
stop)
echo -n $”Shutting down $PROG: ”
killproc -p $PIDFILE
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG
;;
restart)
$0 stop
$0 start
;;
status)
status $PROG -p $PIDFILE
RETVAL=$?
;;
*)
echo $”Usage: $0 {start|stop|restart|status}”
RETVAL=1
esacexit $RETVAL
Then you can use service red5 start|stop|restart .
Or add these lines to to /etc/rc.d/rc.local so it starts on each server start:
cd /opt/red5/dist
/opt/red5/dist/red5.sh > restart.log &
Make sure your run it from the right folder. The one in /opt/red5 will not work – you must run it from /opt/red5/dist/ .
When Red5 is running you should be able to access http://your-server-domain-or-ip:5080/ .
If it works first thing go to http://your-server:5080/installer/and install admin. Then to http://your-server:5080/admin/register.html and register an username and password. Then you can check application statistics anytime from http://your-server:5080/admin/ with server ip and the registered username, password.
RED 5 RESTART
Restart Red5 anytime you update files in the /opt/red5/dist/webapps folder – where all applications should be installed.
Usually these should work and should be used each time you add a new application.
1. Check if red5 is running:
ps aux | grep red5
2. Go to its folder and shut red5 down:
service red5 stop
or
cd /opt/red5/dist
./red5-shutdown.sh
3. See if it’s still running or not:
ps aux | grep red5
4. Restart it, and also make it output the logs into a file of your choice:
service red5 start
or
./red5.sh > start.log &
5. Make sure it’s back online:
ps aux | grep red5
We also noticed that red-shutdown.sh sometimes does not close it down to allow restart when webapps are added or updated. This usually occurs when red5 freezes becasue it encounters errors like running out of memory. So we run ps aux | grep red5 to see process id (first number: PID) and then run kill process id if it’s still alive.
ALLOWING PORTS
On some systems root cannot bind ports above the early 1000′s so red5 must be run from another account.
Verify that Red5 is listening on port 5080 if you can’t get http://yourserver:5080/:
netstat -anp | grep 5080
If using iptables enable these ports:
iptables -A INPUT -p tcp -m tcp -—dport 3690 -j ACCEPT
iptables -A INPUT -p tcp -m tcp —-dport 5080 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -—dport 1935 -j ACCEPT
iptables -A INPUT -p tcp -m tcp —-dport 1936 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -—dport 8088 -j ACCEPT
Sometimes ports need to be configured in a hardware firewall. Contact server provider / administrator for more details about enabling ports.
This info provided by a host could also be helpful.
Please be advised that custom iptables rules should be placed in the directory listed below.
/etc/sysconfig/iptables-customThe software firewall rule is listed as follows:
# cat /etc/sysconfig/iptables-custom/99Red5 *filter-A INPUT -p tcp -m tcp –dport 1935 -j ACCEPT
-A INPUT -p tcp -m tcp –dport 1936 -j ACCEPT
-A INPUT -p tcp -m tcp –dport 5080 -j ACCEPT
-A INPUT -p tcp -m tcp –dport 8088 -j ACCEPTCOMMIT
RED5 & VIDEOWHISPER
This was done for the installation of VideoWhisper applications. To do that just download the latest videowhisper rtmp application, unzip it on your computer and copy the videowhisper folder and all its contents to/opt/red5/dist/webapps . As verification, check that you have a /opt/red5/dist/webapps/videowhisper/WEB-INF/ folder on your server. After copying/updating this, restart the Red5 server (as explained above) and you can install the videowhisper video conferencing / live streaming scrips to use the new rtmp application.
The Red5 VideoWhisper RTMP Application has some cool settings, like enabling access with external players / archiving of all video streams as flv files / limiting access to certain domains / setting absolute paths for live streams and recordings to be able to share videos with other applications (i.e. video sharing). Edit all these in WEB-INF/red5-web.properties and restart the Red5 server.
If we forgot to mention something here, or you have any questions about this submit your inquiries on Video Whisper Contact Page or comment below.
An alternative to doing the red5 installation yourself would be to order red5 installation .
If you don’t have the time and experience to run your own server or vps, you should use managed red5 hosting .
cp -rf /opt/red5/dist/webapps/* /root/tmp/red5/dist/webapps/
Related Posts:
Red5 Support for VideoWhisper Projects
VideoWhisper.com released a Red5 open source version for the RTMP application serving the VideoWhisper projects. This can be downloaded from the downloads section including java source code and eclipse project files. Application was tested with Red5 v7 Final.
Red5 is a free, open source, Java based, alternative to Adobe’s Flash Media Server. To install Red5 you need a dedicated server. You can not install Red5 on a shared hosting plan. Red5 is available both for Windows and Linux servers.
Red5 is the free solution to host RTMP if you have your own dedicated/semi-dedicated server or VPS: Download Red5 v7 Final .
VideoWhisper provides managed plans with full installation and setup including premium rtmp hosting with dedicated ip, free installation of video streaming software (including standard fantastico scripts like wordpress/joomla), unlimited connections on Red5 starting from 10Gb space and 200Gb bandwidth at $50/month.
Related Posts:
Live Streaming, Video Broadcasting Software by VideoWhisper
This live video streaming software is designed for 1 to many video broadcasting. It is very useful for adding features like on justin tv, ustream tv, mogulus, stickam, blog tv, yahoo live or their clones .
This software was designed for 1 to many video streaming so there are 3 different interfaces:
1. Live Broadcast (for publisher),
2. Live Video Watch (for active viewers, discuss online),
3. Live Video Streaming (for passive viewers, simple live video).
Software is available with PHP source code for easy integration and as joomla component and module. Free trial available for download and testing on your own server. 




Video Broadcast
Enter Presentation
Enter Conference