Flash-based audio and video communication widget
This project was migrated from https://code.google.com/p/flash-videoio on May 17, 2015
Keywords: Flash Player, Recorder, Video, RTMP, RTMFP, FLV, Conferencing, VideoIO, Facebook, Stratus, Google App Engine
Members: kundan10 (owner), theintencity, voipresearcher, mamtasingh05
Links: Support, Tutorial, Download, Wiki
License: GNU Lesser GPL
Others: starred by 73 users
This project implements example applications for Flash-based audio and video communication using the Flash-VideoIO component. The software is licensed as LGPL, so if you make a modification to the source you should contribute back the modifications. The Flash-VideoIO component is a reusable generic Flash application to record and play live audio and video content. It can be used for a variety of use cases in audio and video communication, e.g., live camera view, recording of multimedia messages, playing video files from web server or via streaming, live video call and conferencing using client-server as well as peer-to-peer technology. This project web site provides several examples applications and tutorial with (open) source code on how to do these scenarios.
New: The VideoIO sources are now checked in and available as LGPL. It is our humble request to please please contribute back any improvements or modifications. If you have major improvements, we will be happy to add you as a committer/contributor. Thank you!
IMPORTANT Please send any bug/support request to the support group instead of directly to the owner
Please see my slides on flash based audio and video communication presented at VoIP conference and expo at Illinois Institute of Technology in Oct 2010.
Our white paper on Flash based audio and video communication in the cloud gives an overview of why Flash Player for communication? motivation for our API and how various example application scenarios are built on top of our API?
Follow the links below for a tutorial on how to use VideoIO.
- How to embed VideoIO in your web page?
- How to show live camera view?
- How to work with media server?
- How to record and play a video message?
- How to play a video file?
- How to do two-party video call?
- How to do one-to-many video broadcast?
- How to do multi-party video conference?
- How to do peer-to-peer video call?
- How to use the VideoIO API?
- How to do SIP-based VoIP call?
- How to embed VideoIO in your Flex application?
- How to do video broadcast using multicast group?
- How to take snapshot image as binary data?
After you have gone through the above tutorial you can click on the demonstration and testing of VideoIO API page to try out and test the various properties of VideoIO. The test page allows you to see the behavior of various properties as you set some properties. Before you use this project, please check the FAQ page for common gotchas!
You can download the example applications source code in this project under the source tab. You can get the latest version of VideoIO.swf from the download page.
If you are a developer who wants to add a new feature to VideoIO or use the software in your project, feel free to post a message to the support group to let us know. The goal is to make VideoIO independent of the example applications, so that developers do not need to understand or know Flash programming.
You can post a message to the support group. You don't need to subscribe to that group to post a message. I look forward to hearing from you!
These examples are available in SVN under
- IIT Web Conference: This web-based application allows you to do multiparty conference and slides presentation using Flash based real-time audio and video. It has been tested on Chrome, Safari, Firefox and IE8, using Flash Player 10.3. It is built as part of the Voice and Video on Web project at IIT Chicago, and is an open source project and source code is available here. It uses RESTful Websocket (and Socket.io)-based signaling for web communications and Flash VideoIO for audio and video communication. Please see a demo video on youtube at http://www.youtube.com/watch?v=O2kJbI9sETU. Keywords: web conference, slides presentation, distance education, websocket, REST.
- Intencity AIRphone: This is a free desktop video phone application built on Adobe Integrated Runtime (AIR) platform. It uses the Flash-VideoIO component to handle end-to-end media path, and resource-oriented web service of IIT web conference to handle the signaling. It presents a device user interface on desktop and allows two party video call. This is not an open source application. Please see a demo video on youtube at http://www.youtube.com/watch?v=MeJX-qs5ztY. Keywords: video phone, AIR-based video call.
iVideoChat and Face Talk: (Does not work after Facebooks recent change in authentication API.) These are face-to-face two-party video chat applications on Facebook. They allow you to video chat with your online friends. They use Adobe Stratus for peer-to-peer media streams, and Facebook's text chat and live messaging for signaling. A friend of mine and I created these projects as demonstrations of Flash VideoIO on Facebook. The main source file is available as index.php. Please replace the app-id and secret based on your Facebook API developer key. Please see the demo video using VLC media player on how to get started. Keywords: video call, facebook, adobe stratus, live messaging.
- Random-Face: This is a chatroulette-type application built using the Flash VideoIO component on Adobe Stratus service and Python-based Google App Engine. This site is just a demonstration of how such services can be built using the generic Flash-VideoIO component. It uses the Channel API of the App Engine for asynchronous XMPP-style messaging and events. You can view the source code of two files, index.html that renders the front end user interface and main.py that forms the back-end service. Keywords: random video call, google app engine, adobe stratus, channel api.
with-pollingdirectory in SVN. Please see the demo video on youtube on how to use the system. Alternatively, please see the demo video using VLC media player on how to get started. Keywords: video conference, google app engine, adobe stratus, channel api, ajax polling.
- Video Office: This is a web-based video office that allows others visit my office to talk to me. It uses Adobe Stratus for peer-to-peer media streams, Google App Engine for back-end service, its Channel API for asynchronous events, and its XMPP module for interacting with Google chat. When someone visits my video office, I get a Google chat notification, so that I can open my office for live video chat. The application allows you to create your own video office using your Google Mail account. The source code is available in SVN under
django-appsdirectory. Keywords: video office, video call, adobe stratus, google app engine, channel api, xmpp.
- Talk to Experts: This is an extension of Video Office project, that allows you to also search for experts based on a topic, see their calendar, sign up to talk to them in their calendar, and video chat with them in real-time. It uses Adobe Stratus for peer-to-peer media streams, Google App Engine for back-end service, its Channel API for asynchronous events, and its XMPP module for interacting with Google chat. The can get notified on Google chat when a visitor wants to chat with him. The application allows you to sign up as an expert on some topic, and potentially monetize your time giving expert advice. The source code is available in SVN under
django-appsdirectory. Keywords: video office, talk to experts, video call, adobe stratus, google app engine, channel api, xmpp.