Webcams, Streaming Video, and the Future Beth Kettenacker Cully Radvillas Sam Javner
Webcams
What A Webcam Is A camera connected to the internet Most use the USB (Universal Serial Bus) to connect the camera to their computer
Personal Webcams This is the most common type of camera Used to share moving images of themselves or others Users can access this image by knowing a specific address to connect to Cameras are only available when the camera is connected and an internet connection exists
Buying a Webcam Personal Use—Logitech or Creative Labs We are using the Logitech QuickCam Pro Professional Use—Sony PCS1600 (recommended by entrepreneur.com) Need a high speed internet connection
Most posted webcams are available 24/7 Webcam Posting An online webcam pointed at a specific scene or location of interest to possible viewers Most posted webcams are available 24/7
Webcams Around the World Japan http://www.hbc.co.jp/susukino.html San Francisco http://cbs5.com/cams/citycam/jumbo.html London http://www.camvista.com/england/london/bigben.php3
Video Conferencing
How Video Conferencing Works Uses a decoder that changes analog video and audio signals into digital signals from cameras and microphones This digital signal is transmitted to a receiving site and is decoded back into the analog signal to be read
Analog Signals Digital Encoding Television receives these signals from cameras and microphones Used in old time televisions Uses Approximate copies of the signals Transfers to ones and zeros Creates an exact copy of the signal Used by video conferencing and has greatly increased its quality
The Basics Of Video Conferencing The combination of computer software, cameras, microphones, and other peripherals Uses digital phone lines (ISDN lines) to transmit and receive information
Benefits of Video Conferencing Allows interactive communication with people over any distance The quality has greatly increased in recent years
History of Video Conferencing First became available Not popular in the beginning because of high cost for such poor quality 1990’s Digital Communication through ISDN services started Started a foundational network capability that created many technologies—Video Conferencing History of Video Conferencing
Video Conferencing Today Network technologies are popular in most office environments Software and services are easily available to general public and is affordable It is a top choice for businesses because it is economical, safe, and saves time
Popular Types of Video Conferencing Systems Webcams Popular among consumers Set-Top Designs Popular for professional use Integrated Systems
Streaming
What is Streaming? Process of viewing media while it is being downloaded Usually refers to video or audio Audio is usually higher quality Smaller file size Less compression needed
Streaming Media Distribution Web Server TCP protocol Does not sacrifice data – not always real time Has to be able to determine bandwidth speed Media Server UDP protocol Sends data at a predetermined rate Allows for some lost information
Hardware and Software Needed for Broadcasting The device (a webcam) Media Server WWW connection Compression Software
FishCam Our HTTP FishCam
Options for Online Video Download entire video On-Demand Video Streaming “Live” Video Streaming
Downloading an Entire Video The only option before streaming video Problems Video files are large Large delays between starting downloading video and watching it Solution Streaming video
Benefits of Downloading an Entire Video Higher Quality Video can be saved to the computer and viewed at any time
On Demand Streaming PROCESS Media player program starts downloading a program Starts to fill a buffer When buffer is filled, playback begins
Benefits of On-Demand Streaming Video can be viewed at any time without waiting for the entire file to download Speed of the media is not constant, so placing the next frames in a buffer prepares them to be played smoothly
“Live” Streaming Video Process Frame is displayed to the screen as soon as it can after the frame is received Video quality is usually lower than buffered video due to variations in download speed Video also may look jerky because each frame has an individual download speed
Three Major Players for Streaming Video Widows Media Player by Microsoft QuickTime by Apple RealPlayer by RealNetworks
Most popular format for streaming Allows streaming different quality video from the same video source
Windows Media Player Has video of a higher quality than RealPlayer Disadvantage Requires different sources in order to vary quality
QuickTime Has the best and most consistent quality Used by the movie industry This version is the least popular format of streaming
Video Compression
Video Compression One minute of uncompressed DVD-quality video would require ~ 1.6 gigabytes Without compression, a DVD could only hold 3-12 minutes of video Nearly impossible to stream uncompressed video over the Internet – Compression is absolutely necessary
Interframe Compression Takes advantages of similarities between adjacent frames (temporal redundancy) Only store information on parts of video that are changing
Interframe Compression Techniques Sub-sampling Only store “necessary frames” Our brains can fill in the missing information Difference Coding Only store data on pixels that have changed Motion Compensation Store how fast an object (or block of pixels) is moving and which direction it is moving
Compression Difficulties Less movement, better compression A lot of motion in video or a rapidly moving camera makes it hard to compress – lots of pixels are changing
Compression Rate Vs. Quality
Experiments with Compression Rate We recorded a video We compressed it at various bit rates Observed how changing the bit rate affects video quality
Sample Videos Non-Moving Camera Moving Camera Video for Dial-up Video for ISDN Video for Broadband (low quality) Video for Broadband (high quality) Video for LAN Moving Camera Video for Dial-up Video for ISDN Video for Broadband (low quality) Video for Broadband (high quality) Video for LAN
Findings Higher bandwidth will allow for higher bit rates and less compression, which means higher quality Video taken with a non-moving camera has higher quality than video taken with a moving camera
Future of Webcams
Future of Video Compression: MPEG-4 Standard Creates files of same quality and half the size of MPEG-2 files. MPEG-2 files are used in DVDs It is supported in Apple, Microsoft, and RealNetworks video files
Artificial Intelligence (AI) It is in compression software Determines what information is needed to convey the message in the information For Example: A ball is bouncing on one side of the scene and a stationary object is on the other side. The pixels in the area of the moving object will change while the other side is not refreshed Also involved with downloading information from the server to the client
Future: Integration The goal is to have many different types of media (pictures, sounds, music, video, etc.) may be stored together in one file Information displayed depends on the type of device will be reading it Work has already begun using the MPEG-21 standard
Future: Solving Network Congestion AI uses the software to determine which part of the multimedia real-time transfer (audio and video) to remove information from Decreases bandwidth usage Ex: the frame rate or quality of video can be automatically reduced wile keeping the data transfer real-time and the sound quality consistent
Future: 3D Video Has become a topic of discussion Difficulties: File size Decoding of information by the user Think about a 3D movie where the image needed to be decoded by a device that separated images into right and left (stereographic)
Microsoft and 3D Video Currently developing software Uses two cameras to achieve a stereographic effect Uses an algorithm to separate the images into a 3D representation
Future: Bandwidth Bandwidth of most connections is increasing This means there will be more viability in streaming media because it will become available to more users
DDCam Project
How the Camera Works Process of developing camera image: Camera driver calls framecallback code Framecallback either manipulates the data or leaves it alone Image is then put back into memory User sees the image on the screen (information from Drew Demerath’s documentation)
Using Usercallback We took Drew’s source code and added our own callback routines Usercallback provides us with an array of raw video data Each pixel in this array is composed of red, green, and blue components We can change the values in this array to change the image that is displayed
Our Features Added Grayscale Flip Image Mirror Image Negative Image his code did not function correctly Flip Image Mirror Image Negative Image Adjust Red/Green/Blue Percentages