VideoTag Video Display and Recording Aaron Shepler.

Slides:



Advertisements
Similar presentations
Video Object Tracking and Replacement for Post TV Production LYU0303 Final Year Project Spring 2004.
Advertisements

Virtual Network Computer Recorder A Tool for Remote Learning.
®® Microsoft Windows 7 for Power Users Tutorial 2 Customizing Microsoft Windows 7.
Chapter 9 Integrating Video. Digital video is a series of bitmap images that, when played back, create the illusion of movement. The quality and overall.
© by Pearson Education, Inc. All Rights Reserved.
Video Object Tracking and Replacement for Post TV Production LYU0303 Final Year Project Spring 2004.
SWE 423: Multimedia Systems Chapter 7: Data Compression (1)
DSA Processing. Links Processing.org My Processing page Ben Fry Ben Fry’s Thesis on Computational Information DesignThesis Casey Reas siteCasey Reas Casey.
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System Supervisor: Prof Michael Lyu Presented by: Lewis Ng,
I have lost all my vacation pictures due to memory card corruption. Can I get them back? I have accidently deleted some important Photos, Music files.
ActEyes IP Cam Training Part 2: Basic Camera Features.
Digital Video An Introduction to the Digital Signal File Formats Acquisition IEEE 1394.
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
A Scalable Framework for the Collaborative Annotation of Live Data Streams Thesis Proposal Tao Huang
Platforms for Learning in Computer Science July 28, 2005.
It is helpful to break up the word ‘multimedia’ in order to gain a better understanding of its meaning. “Multi” means more than one e.g. a multi storey.
Lab 8 – C# Programming Adding two numbers CSCI 6303 – Principles of I.T. Dr. Abraham Fall 2012.
CamStudio Written By: Daniel Ontiveros. STARTUP This is the interface for Cam Studio Very Easy to use.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Movie Maker in the High School Classroom Professional Development Workshop September 1, 2009 Facilitator: Heidi Camp Swartz Creek High School.
1 Shawlands Academy Higher Computing Software Development Unit.
Capture Devices and Video Encoding Standards B.Sc. (Hons) Multimedia ComputingMedia Technologies Video Capture and Editing.
Metadata Creation with the Earth System Modeling Framework Ryan O’Kuinghttons – NESII/CIRES/NOAA Kathy Saint – NESII/CSG July 22, 2014.
1 Direct Manipulation Proposal 17 Direct Manipulation is when physical actions are used instead of commands. E.g. In a word document when the user inputs.
IE 411/511: Visual Programming for Industrial Applications
Research For Both Hardware And Software Required In Digital Graphics. By Joanne Hocking.
CHAPTER FOUR COMPUTER SOFTWARE.
The Effectiveness of Web Components Presented By: Geoffrey Zimmerman Computer Science Capstone Fall 2004/Spring 2005 Mentor: Dr. C. David Shaffer.
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
Addison Wesley is an imprint of © 2010 Pearson Addison-Wesley. All rights reserved. Chapter 5 Working with Images Starting Out with Games & Graphics in.
1 FlexTraining in a Nutshell Welcome to a brief introduction of the FlexTraining Total e- Learning Solution. This short sample course will outline the.
MULTIMEDIA DEFINITION OF MULTIMEDIA
Object Oriented Programming Lecture 4: Refactoring, An Applet Example, Idiom - Animation applets, Introduction to the Laboratorial exercise www2.hh.se/staff/jebe/oop2005/
University of Sunderland CDM105 Session 6 Dreamweaver and Multimedia Fireworks MX 2004 Creating Menus and Button images.
Visualization and analysis of microarray and gene ontology data with treemaps Eric H Baehrecke, Niem Dang, Ketan Babaria and Ben Shneiderman Presenter:
Animation Portfolio Student Name :. Task 1 – Learn the Basics Your task is to complete a simple 3 second animation to get used to the interface and the.
Module 1: Getting Started. Introduction to.NET and the.NET Framework Exploring Visual Studio.NET Creating a Windows Application Project Overview Use Visual.
Chapter 2 – Introduction to the Visual Studio .NET IDE
Making Python Pretty!. How to Use This Presentation… Download a copy of this presentation to your ‘Computing’ folder. Follow the code examples, and put.
Digital Graphics. Formats: BMP – Bitmap image file which is used to store Bitmap digital images PNG – Portable Network Graphics GIF – Graphics Interchange.
© All rights reserved. U.S International Tech Support
The Software Development Process
Joe Cohen Presentation Overview  Project definition and requirements  Solution process and explanation  Methodology.
Real-Time Cyber Physical Systems Application on MobilityFirst Winlab Summer Internship 2015 Karthikeyan Ganesan, Wuyang Zhang, Zihong Zheng Shantanu Ghosh,
Wiimote/Kinect Lab Midterm Update Senior Design December 2011, Group 16 Adviser: Dr. Tom Daniels Brenton Hankins Rick Hanton Harsh Goel Jeff Kramer.
File Types. Terms Multimedia- the integration of text, sound, video and/or animation into a document Letters, brochures, newsletters, web pages or presentations.
Multimedia Encoder and Converter. SUPER©  SUPER = Simplified Universal Player Encoder & Renderer.  The full version of SUPER can be downloaded from.
TEMPLATE DESIGN © E-Eye : A Multi Media Based Unauthorized Object Identification and Tracking System Tolgahan Cakaloglu.
Reconfigurable Communication Interface Between FASTER and RTSim Dec0907.
Overview of Previous Lesson(s) Over View 3 Program.
Project Information Abstract Project Objectives The objective of this project is to: Create a visual designer that will allow inexperienced end- users.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
How to Burn ISO Files to DVD Disc From:
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Etere MTX IT Based Playout. Why MTX  Our vision is to deliver an integrated framework  MTX follow this vision not a simple video device but an integrated.
SMART NOTE TAKER Presented By M.SIRISHA.  Smart note taker is a very useful product that could satisfy the needs of people in today's technological and.
HTML5 and CSS3 Illustrated Unit F: Inserting and Working with Images.
PUBLISHING CAPTIVATE INSTRUCTIONAL VIDEOS FOR MOBILE DELIVERY BY RENÉE LESAGE AND MATTHEW BACZ, MA ED. TECH. Information Technology Services Training McGill.
Overview Presentation December 2007 MKT-NVO-P-002E.
DaVinci Overview (features and programming) Kim dong hyouk.
Etere MTX IT Based Playout.
Usability Testing 3 CPSC 481: HCI I Fall 2014 Anthony Tang.
1. Introduction to Visual Basic
Release 3.0 User Interface and Highlights
Module 1: Getting Started
Remote Demos Remote Demo.
Year 7 Programming Project - Design Notebook
Presentation transcript:

VideoTag Video Display and Recording Aaron Shepler

Motivation Enable the user to view real-time video from the camera Allow the user to annotate on top of the video image Facilitate simple video recording

Previous / Related Work Point Grey Research has written a C++ wrapper for reading/writing to an AVI Microsoft is working on an InkCanvas control (to be released in Vista) that would potentially allow for something similar – inking on multimedia

Challenges How do I use the camera in C# when the interface is in C? –The.NET framework allows for easy integration between different managed types of code: i.e. Managed C++ and Managed C# –Integration between unmanaged code and managed code is not very well documented

Challenges How do I place the image on the screen once I have data using C#? –Lower level operations, such as direct access to screen are not available

Challenges How do I manage the recording of the video –C# does not have built-in AVI recording functionality –Function calls from C would also have to be wrapped

Camera Approach / Solution Two possible approaches that allow for use of camera in C# –Link in flycapture camera methods directly Large blocks of unsafe { } code due to use of pointers –Link in a library that simplifies the interface Few lines of unsafe { } code

Camera Approach / Solution Mistake… –First tried to link in flycapture camera methods directly Unsafe { } blocks of code were everywhere due to the use of pointers Became a C-based program –Learned my lesson the hard way

Camera Approach / Solution Encapsulated lower level camera functionality in a library… –Created a small library of methods Interface was well defined Less time spent matching compatible types

Camera Approach / Solution CameraLib –Library with basic camera functionality void initialize(); –Initializes the first camera on the FireWire bus, creates context, etc void* grabImage(unsigned char*); –Retrieves an image based on the camera context void destroy(); –Destroys the camera context –Pure C library for use in managed code

Video Approach / Solution In order to place the image onto the screen, the InkPicture control was used –Allows the background image to be changed while maintaining the ink on top. –Create thread in C# continuous capturing / refreshing the image

Recording Approach Record to Avi using C# wrapper class –Same refresh thread adds the current bitmap to the next frame in the AVI –Pro: Easy to access bitmaps out of the AVI later –Con: Large file is unhandy Avi wrapper written orginally by René Nyffenegger (modified by John Corinna), located at: –

Demonstration

Discussion How can we reduce the slight flicker with the video/ink? –Double buffering? –User Drawn Control?

Discussion What methods of encoding the video data would be faster and more robust than AVI? –Various compression models? –Existing codecs?