Showing posts with label Videos. Show all posts
Showing posts with label Videos. Show all posts

Wednesday, June 15, 2011

Video Shadering with Direct3D

Introduction
This project started as a testing application for another project I am developing and since I needed some code for rendering YUV420 pixel data and was curious about how Direct3D could be used for 2D graphics - I decided to give it a try. But before I jump into the video implementation details, I will briefly describe some background of 2D graphics with a low-level 3D API. I assume you have a basic knowledge of Direct3D 9 API and HLSL programming.

2D Graphics with Direct3D API
Direct3D is around since 1995 and for a long time was considered a gaming playground. With the rise of the GPU processing power, more and more applications started to take advantage of Direct3D API to facilitate the capabilities of parallel processing and floating point calculations - areas where the GPU outperforms CPU. Image and video processing is one of these areas where GPU may dramatically improve performance and user experience.
Direct3D is a low level API which allows you to design your application by exact needs of your business - therefore, as a developer, you have to write more code and take care of all the rendering details which are usually not trivial to understand. By the way, with the release of Windows 7, Microsoft introduced a new 2D API called, not surprisingly, Direct2D. It is also a GPU accelerated API and much easier to use, however it does not include (for now) support for YUV surfaces and is therefore less suitable for video rendering. Nevertheless, I recently wrote a video rendering implementation with Direct2D which can be found here.

Pixel Formats
Video decoders usually output frames in YUV pixel format which is more suitable for video processing since it divides each video frame into luminance - the black and white data, and into chrominance - the colored data. The most used formats are I420 (also called IYUV) and YV12, both belong to YUV420 type which means each frame has W(width) x H(height) number of luma bytes followed by W x H / 2 chroma bytes. Direct3D allows you to convert those frames into RGB format using graphics device, thus saving CPU power and boosting performance.

Read more: Codeproject

Sunday, June 05, 2011

Silverlight TV 75: Quick and Dirty UX Testing (Design Tips Mini Series)

Susan shares her insights on how to do quick and dirty UX testing to help your application be more successful. Susan (who works with great people on the UX team, including Corrina Black, Tsitsi Gora, and Arturo Toledo) has a lot of experience working on usability and spends a lot of time working with designers and application users to help determine what makes a good user experience for products like Visual Studio, Silverlight, and Windows Phone apps. In this episode, Susan discusses the following quick and easy ways to improve UX:
  • Cognitive Walkthrough (does your work flow make sense to the user?)
  • Heuristic Evaluations (testing the UI for consistency, visual design, communication, ease, error prevention)
  • Valuable Usability Studies (choosing your audience, how many people, how to operate them)
Read more: Channel9

Monday, May 30, 2011

ASP.NET Data Binding

I have recently completed to cover the ASP.NET Data Binding topic in my ASP.NET course. You can find its community version available for free personal usage at www.abelski.com. The following video clips were prepared in order to explain the basics of this topics. Both the source code shown in these clips and the slides can be found at www.abelski.com.

Read more: Life Michael

Monday, May 23, 2011

Summer of NHibernate Screencast Series

Welcome to the homepage for the Summer of NHibernate screencast video series.
The purpose of this site is to provide one-stop easy access to direct downloads of the screencasts. If you have feedback, comments, questions, etc. please visit my blog and post them there.
This content is not in any way endorsed or supported by the NHibernate project team.

The opinions and viewpoints expressed in these screencasts are not necessarily those of Microdesk or its employees. These screencasts are produced by Stephen A. Bohlen who is solely responsible for their content.

(more...)


Monday, May 16, 2011

Silverlight 4 Training

Overview
The Silverlight 4 Training Course includes a whitepaper explaining all of the new Silverlight 4 features, several hands-on-labs that explain the features, and a 8 unit course for building business applications with Silverlight 4. The business applications course includes 8 modules with extensive hands on labs as well as 25 accompanying videos that walk you through key aspects of building a business application with Silverlight. Key aspects in this course are working with numerous sandboxed and elevated out of browser features, the new RichTextBox control, implicit styling, webcam, drag and drop, multi touch, validation, authentication, MEF, WCF RIA Services, right mouse click, and much more!

Read more: MS Download

Great Free Video Training on ASP.NET Web Forms and ASP.NET MVC

We’ve recently published some great end-to-end ASP.NET video training courses on the http://asp.net web-site.

Created by Pluralsight (a great .NET training company), these video courses are available free of charge and provide a great way to learn (or brush-up your knowledge of) ASP.NET Web Forms 4 and ASP.NET MVC 3.  Each course is taught by a single trainer, and provides a nice end-to-end curriculum (from basic concepts to working with the new Entity Framework “code first” model to security, deployment, and testing).  

Below are some details on the two free training courses we published this weekend (and links for how to watch them):

ASP.NET MVC 3 Training
This weekend we posted the final videos in a brand new 10 part ASP.NET MVC 3 training course taught by K Scott Allen.  You can now watch the entire series for free on the http://asp.net/mvc page (it is on the left-hand side within the “Essential Videos” section):

Read more: ScottGu's Blog

Monday, April 18, 2011

MIX'11: более сотни видео докладов доступны для загрузки

8fe1ef71d15225f6e5d72e0e1c769ed7.png

Состоялась конференция MIX’11, которая принесла массу анонсов и новостей по мобильным и веб-технологиям. Подробнее об анонсах можно прочитать тут: первый день и второй день.  В ходе MIX’11 было прочитано более ста двадцати технических докладов на десятки тем разработки, дизайна, технологий. Ознакомиться с темами докладов с группировкой по технологиям можно в этой записи.
Очень приятно, что организаторы конференции не замедлили с обработкой материалов. Уже сейчас через несколько дней опубликовано более сотни видео докладов в HD-качестве и с удобным представлением докладчика и его доклада одновременно:

Read more: microGeek

Sunday, April 10, 2011

ASP.NET Site Map

I am working these days on the community version of my ASP.NET course. I have recently completed to develop the Site Maps topic. This course is available for free personal and academic usage at www.abelski.com. The following video clips were prepared as a complementary training aid in order to assist you with understanding this topic.

Read more: Life Michael

ASP.NET State Management

I am working these days on the community version for my ASP.NET course. I have recently completed to develop the State Management topic. This course is available for free personal and academic usage at www.abelski.com. The following video clips were prepared as a complementary training aid in order to assist you with understanding this topic.

Read more: Life Michael

ASP.NET Validation Controls

I am working these days on the community version of my ASP.NET course. I have recently completed to develop the Validation Controls topic. This course is available for free personal and academic usage at www.abelski.com. The following video clips were prepared as a complementary training aid in order to assist you with understanding this topic.

Read more: Life Michael

Friday, April 08, 2011

c# and SQL interview question :- What is the difference between unique key and primary key?

Unique key can have nulls
Primary key cannot have nulls.
In a single table we can create multiple unique keys.In a single table we can have only one primary key.
=============================================
Unqiue key creates a non-clustered index by default.Primary Key created a clustered index by default.
================================================
Both unique keys and primary keys can be referenced by foreign key.

Read more: Youtube

ASP.NET HTML Controls

I have recently completed to develop the seventh topic in my ongoing ASP.NET course. It focuses on the ASP.NET HTML controls. You can find the community version of this ongoing course available for free at www.abelski.com. The professional version is available at www.xperato.com. You can download the slides and watch the relevant video clips below.

Read more: Life Michael

ASP.NET Web Controls

I have recently completed to develop the eighth topic in my ongoing ASP.NET course. It focuses on the ASP.NET web controls and explains how to use the more complicated ones. You can find the community version of this ongoing course available for free at www.abelski.com. The professional version is available at www.xperato.com. You can download the slides and watch the relevant video clips below.

Read more: Life Michael

Mastering in Visual Studio 2010 Debugging


Introduction
In the software development life cycle, testing and defect fixing take more time than actually code writing. In general, debugging is a process of finding out defects in the program and fixing them. Defect fixing comes after the debugging, or you can say they are co-related. When you have some defects in your code, first of all you need to identify the root cause of the defect, which is called the debugging. When you have the root cause, you can fix the defect to make the program behavior as expected.
Now how to debug the code? Visual Studio IDE gives us a lot of tools to debug our application. Sometimes debugging activity takes a very long time to identify the root cause. But VS IDE provides a lot of handy tools which help to debug code in a better way. Debugger features include error listing, adding breakpoints, visualize the program flow, control the flow of execution, data tips, watch variables and many more. Many of them are very common for many developers and many are not. In this article, I have discussed all the important features of VS IDE for debugging like Breakpoint, labeling and saving breakpoints, putting conditions and filter on breakpoints, DataTips, Watch windows, Multithreaded debugging, Thread window, overview of parallel debugging and overview of IntelliTrace Debugging. I hope this will be very helpful for beginners to start up with and for becoming an expert on debugging. Please note, targeted Visual Studio version is Visual Studio 2010. Many things are common in older versions, but many features such as Labeling breakpoint, Pinned DataTip, Multithreaded Debugging, Parallel debugging and IntelliTrace are added in VS 2010. Please provide your valuable suggestions and feedback to improve my article.

How to Start?
You can start debugging from the Debug menu of VS IDE. From the Debug Menu, you can select “Start Debugging” or just press F5 to start the program. If you have placed breakpoints in your code, then execution will begin automatically.


Tuesday, April 05, 2011

Virtual Function in C#

Unlike Java, when developing in C# the functions we define aren't automatically virtual. Turning a function into a virtual one involves with several steps. The following video clip (hebrew) explains how to define a virtual function and explains its meaning. 

Read more: Life Michael

Wednesday, March 23, 2011

YouTube Video Editor gets impressive stabilization and 3D Video Creator

youtubevideoeditor.jpg


Google has just updated its cloud-based YouTube video editor to include the fruits of its recent purchase, plus a bit of 3D thrown in for good measure. The in-browser editor can now dramatically reduce camera shake using technology acquired from Green Parrot Pictures. It works by charting the best camera path for you, as if you were using a dolly or tripod, using a 'unified optimization technique.' In essence, it gives you a one-click solution for clearing up your shaky camera work, and the best bit is that you can preview it in real-time before you publish. Considering how much processing power video optimization like this demands, Google's pushing some impressive cloud computing here, distributing the load across a range of servers.

If video stabilization wasn't enough to sate your demands for a cloud-based video editor, how about a bit of 3D? Google's integrated 3D video production using two separate streams -- the kind of thing you get when you bolt two cameras together filming at a set distance apart at the same time. It's been quite difficult to create a 3D video from two cameras using just free tools, but now Google has integrated it into the YouTube 3D Video Creator and made it compatible with YouTube's 3D features.

Read more: DownloadSquad

Sunday, March 20, 2011

Binding Media Resource Streams to XAML Controls

I came across an interesting problem as I was working on the Windows Phone 7 client code for my next installment of the WCF Data Services blog post series on streaming. In this series, I have been using a property on my PhotoInfo entity named StreamUri to hold the URI of the image used for binding in the client UI. However, because we are dealing with a Media Link Entry (MLE), I was reminded that the correct way to get the URI of the related Media Resource (MR) on the client is by calling the GetReadStreamUri method on the DataServiceContext. This returns the value of the edit-media link for the MLE in the feed, which the service guarantees to be correct. When you rely on some property that has “Uri” in the name, your mileage may vary.

At any rate, I had thought that the obvious way to bind to the true edit-media link URI value was to extend my entity definition (since it’s a partial class) to add a StreamUri property that calls the GetReadStreamUri method in the getter. This works great for read-only binding. However, there is a flaw to doing it this way. Can you guess it? When you create a new MLE with a binary MR stream, the client first sends a POST to create the MR followed by the MLE, with default values. The client sends second a MERGE request to update the new MLE with client values. The problem is that the client doesn’t know that the StreamUri extension property isn’t part of the entity defined in the data service. Hence, poof! An error in the data service during the MERGE operation “I don’t know what to do with this StreamUri property.”

Since my client application (in this case WP7) is XAML-based, value converters to the rescue! Instead, I defined a converter that takes my entity object binding and returns the URI to which to bind, as follows:

public class StreamUriConverter : IValueConverter 
    public object Convert(object value, Type targetType, 
        object parameter, System.Globalization.CultureInfo culture) 
    { 
        // Return the URI of the media resource stream for binding. 
        return App.ViewModel.Context.GetReadStreamUri(value); 
    }
    public object ConvertBack(object value, Type targetType, 
        object parameter, System.Globalization.CultureInfo culture) 
    { 
        throw new NotImplementedException(); 
    } 
}

And here’s what the XAML looks like (I should mention that because the root DataContext of the page is set to my DataServiceCollection<PhotoInfo> binding collection and the Image is in a ListBox control, the default binding is to a PhotoInfo object):

… 
<StackPanel.Resources> 
    <converter:StreamUriConverter x:Key="getStreamUri" /> 
</StackPanel.Resources> 
<Image Source="{Binding Converter={StaticResource getStreamUri}}" 
        Height="75" Width="50" />  
… 

Wednesday, March 09, 2011

Introduction to the Nmap Security Scanner

A talk presented by SkullSpace member Mak Kolybabi at Winnipeg Code Camp 2011 on February 26th.
In recent years, the Nmap Security Scanner has evolved from a simple port scanner written during the Internet`s infancy into the most widely used security scanning tool in the world. We`ll look at Nmap`s past, present, and future, paying special attention to the embedded scripting language that`s been the most important factor in Nmap`s evolution, and how the community`s contributions, particularly a group of Winnipeg programmers, have shaped Nmap`s history.

Read more: Vimeo video

Windows Forms Training Videos (114)

Monday, March 07, 2011

Video Tutorial: Android Application Development - StatusData

Class 4, Part 1. This video comes from Marakana's 5-Day Android Bootcamp Training Course which Marko Gargenta taught in San Jose, CA earlier this year

In the previous tutorial, Class 3, Part 3, you learned how to create a local database for your Android app. Now, Marko will show you how to create the service (UpdaterService) that pulls data from the cloud and then inserts it into your local database.

In this tutorial, you will learn:

How to create the service that will pull data from the cloud and store it in your local database
How to verify that your database was created
How to use sqlite3 - A tool that ships with Android which gives you access to your database

Read more: marakana