Media Transfer Protocol Implementation Details

Slides:



Advertisements
Similar presentations
Connecting Web Services to Microsoft Office Applications: An Introduction to Information Bridge Framework Darren Neimke Senior Consultant Readify Limited.
Advertisements

Microsoft Standard TCP/IP Port Monitor Futures
WEB AND WIRELESS AUTOMATION connecting people and processes InduSoft Web Solution Welcome.
Device Virtualization Architecture
Optimizing Device Drivers For Terminal Servers Plug And Play Device Redirection Framework Gaurav Daga Program Manager Windows Terminal Server Microsoft.
Bring your own machines, connectivity, software, etc. Complete control Complete responsibility Static capabilities Upfront capital costs for the.
Designing InfoPath Forms: The Dos and Donts Deploying InfoPath Forms: Making the right choice Adding custom business logicin case the built-in stuff isnt.
Faith Allington Program Manager Microsoft Corporation WSV322.
Windows Vista Presentation Advances Daniel Moth Developer & Platform Group, Microsoft Ltd
Windows Server Terminal Services Easy Print
4/6/ :35 AM © 2004 Microsoft Corporation. All rights reserved.
Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.
Craig Murphy Program Manager Microsoft Corporation.
TANDBERG Content Server January Organizational Challenges Corporations have struggled in the past:  Achieving unified communications within a global.
Microsoft Windows XP SP2 Urs P. Küderli Strategic Security Advisor Microsoft Schweiz GmbH.
Auxiliary Display Platform in Longhorn Andrew Fuller Lead Program Manager Mobile PC microsoft.com Microsoft Corporation.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 10: Server Administration.
Final Presentation Spring 2003 Project ID: D0822 Project Name: WinCE integrating BT media share application Supervisor: Evgeny Rivkin Performed by: Maya.
WDK Driver Test Manager. Outline HCT and the history of driver testing Problems to solve Goals of the WDK Driver Test Manager (DTM) Automated Deployment.
Windows Media DRM Device Porting Kit Review Scott Plette Program Manager Media Technology Group microsoft.com Microsoft Corporation.
Advanced Deployment Topics – MSI Enhancements Om Sharma Program Manager, Windows Installer Microsoft Corporation.
Windows Media DRM Device Ecosystem For Windows Vista Milan Gada – Program Manager Kevin Lau – Program Manager Windows Media (Content Access Technologies)
Winter Consolidated Server Deployment Guide for Hosted Messaging and Collaboration version 3.5 Philippe Maurent Principal Consultant Microsoft.
Adding Applications and Services to Windows Media Center John Canning Technical Evangelist Windows eHome Division Microsoft Corporation.
Case Study: ATI Device Power Management In Windows Vista Phil Mummah Software Architect ATI.
Walter Pitrof Technology Solution Professional Microsoft Switzerland Backup, Restore und Disaster Recovery mit Data Protection Manager 2012 Philipp Witschi.
New Document Lifecycle Opportunities N. Gregg Brown Lead Program Manager Digital Documents microsoft.com Microsoft Corporation.
Purpose Intended Audience and Presenter Contents Proposed Presentation Length Intended audience is all distributor partners and VARs Content may be customized.
OFC302 Building Smart Document Solutions in Word & Excel Martin Sawicki Lead Program Manager.
Crystal Hoyer Program Manager IIS Team Preview of features that will be announced at MIX09 Please do not blog, take pictures or video of session.
OFC304 Excel 2003 Overview: XML Support Joseph Chirilov Program Manager.
OFC 200 Microsoft Solution Accelerator for Intranets Scott Fynn Microsoft Consulting Services National Practices.
Advances in Windows Printing Daniel Emerson Program Manager Digital Documents Platform and Solutions Microsoft Corporation.
Jerry D. Smith Senior Program Manager Microsoft Corporation.
ADM 331 Administrative Scripting for IIS 6.0 Using WMI Alexis Eller Program Manager Internet Information Services (IIS)
Device And PC Integration With Discovery, Plug And Play, Publication, And Network Explorer Roland Ayala, Cameron Brodeur, and Aaron Cunningham Program.
How To Design A PlaysForSure Device Jerry D. Smith Program Manager Windows Media Devices Group microsoft.com Microsoft Corporation.
91% of windows users have devices …but the Windows device experience has been limited…
Enabling Protected and Premium Broadcast Content in Windows Jay Kapur & Jan Hofmeyr Windows TV Group Microsoft Corporation.
Firmware Storage : Technical Overview Copyright © Intel Corporation Intel Corporation Software and Services Group.
Slide 1.NET Development for Project 2003 Samples from the Project 2003 SDK Jim Corbin Programmer Writer Office Developer Documentation Microsoft Corporation.
Microsoft Sync Framework Content flow for the enterprise.
Windows Media Connect and PlaysForSure for Network Devices Jason Flaks Program Manager Digital Media Division microsoft.com Microsoft Corporation.
Storage Device Design Pattern JEFF MEISSNER; KEN HARDY Windows Program Management.
Error Management Solutions Synergy With WHEA John Strange Software Design Engineer Core OS microsoft.com Microsoft Corporation.
Network Location Awareness Vision And Scenarios Tracey Yao Program Manager Windows Wireless Networking microsoft.com Microsoft Corporation.
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
DAT300 SQL Server Notification Services: Application Development Ken Henderson Technical Lead, SQL Server Support Microsoft Corporation
Goodbye SMI - ACPI and Graphics Driver/System Firmware Interface Paul Blinzer Staff Engineer ATI Research, Inc.
Longhorn Search and Organize User And Developer Experience Paul Cutsinger – Lead Program Manager Kerem Karatal – Lead Program Manager Microsoft Corporation.
Service Pack 2 System Center Configuration Manager 2007.
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
The 2007 Microsoft Office System Servers Enterprise Content Management, Workflow and Forms Martin Parry Developer and Platform Group, Microsoft Ltd
Jim Barber Sr. Program Manager Windows Rally. Be a leader in advancing 64-bit computing Adopt best practices and new tools Let’s partner on new hardware.
5/20/2018 2:53 AM © 2006 Microsoft Corporation. All rights reserved.
5/25/2018 2:39 AM © 2006 Microsoft Corporation. All rights reserved.
Imaging and Deployment
I/O Manager, 64-bit Porting, and New Driver Models
Chapter 2 Objectives Identify Windows 7 Hardware Requirements.
Migration Strategies – Business Desktop Deployment (BDD) Overview
Windows Phone multitasking
Design Patterns for Connected Specialized Devices
Building a great Metro style device app for your camera
Windows Summit /27/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
Tooling and Diagnostics
What's New in Visual Studio 2005
An Introduction to Software Architecture
Microsoft Standard TCP/IP Port Monitor Futures
Delivering great hardware solutions for Windows
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Media Transfer Protocol Implementation Details Blake Manders Program Manager Windows Portable Devices Microsoft Corporation Donby Mathieu Program Manager DMD Deployment Microsoft Corporation

Session Outline Session Outline Background Implementation Details What is MTP? MTP Fundamentals Implementation Details Suggested Schedule Hardware Requirements Resources Available Identifying Device Capabilities Using MTP with Windows Media Player Using MTP with Image Acquisition Designing for success - Gotchas Future directions

Background – What is MTP? A protocol for intelligent storage devices Based on and compatible with Picture Transfer Protocol (PTP) Enables: Metadata-based enumeration Object transfer Command & control Eventing Optimized for: Very large storages Multifunction devices High-power initiators, low-power responders A key part of WMDRM10-PD and PlaysForSure

Background – MTP Fundamentals Binary protocol Initiator-responder model Initiator initiates, responder must respond Initiator builds model of responder contents Transport-independent Implemented over USB, IP Multi-session aware Device UI is a session Extensible

Background – MTP Fundamentals (con’t) Device contents exposed as objects Identified by session-based 32-bit object handles Device described by device properties Provide description & control Objects described by object properties Provide description & constraints Device-initiated events Multi-session support

Implementation – Suggested Schedule Phase 1: Installation Install, setup & respond to GetDeviceInfo Phase 2: Browsing Add support for storage(s) Object enumeration using GetObjectInfo Phase 3: Object Transfer SendObject, GetObject DeleteObject Phase 4: Object Properties GetObjectPropDesc, GetObjectPropValue, SetObjectPropValue Phase 5: Round out support Miscellaneous remaining operations Phase 6: Optimize Enable optimized enumeration (GetObjectPropList, SendObjectPropList) Enable transport optimizations

Implementation – Suggested Schedule In parallel: Set up a simulation system: MTP Simulator MTP Monitor DirectMTP Develop device-side metadata store Database recommended Optimize for MTP row retrieval Optimize database use and data transformations Transform on the fly where possible No buffering of responses

Implementation – Hardware Requirements Mass Storage Optimized MTP Compatible not suitable for MTP With MSC, content storage is managed by the PC Driver Framework Driver Framework MTP MSC USBScan USBStor PC Device USB controller USB/ATAPI Bridge File Transfer using DMA Automatic Switch Device CPU Device Storage Device Player CPU With MTP, the Device CPU actively manages content storage Device Storage

Implementation – Available Resources MTP Specification MTP Porting Kit: DirectMTP MTPMon MTP Simulator MTP sample ANSI-C implementation PlaysForSure test kit

Identifying Device Capabilities Basic device format support in DeviceInfo Device playback capabilities exposed indirectly through Object Properties Object Properties are not only descriptive metadata, they are also functional To get device capabilities, call GetObjectPropDesc Property Description dataset contains constraints on allowed property values in FORM section Allowed property values imply encoding parameters Some parameters are interdependent GetInterdependentPropDesc

Using MTP With Windows Media Player There is a Windows Media Player-specified MTP extension Windows Media Player puts an XML file in root directory Windows Media Player arranges content in an Artist -> Album -> Title file path hierarchy Windows Media Player will leverage the device friendly name device property Use MTPMon to profile Windows Media Player interaction with expected device setup (storage size, format support, etc.) and optimize accordingly

Using MTP for Image Acquisition PTP compatibility No MTP-specific USB optimizations Don’t limit functionality to enhanced operations Implement SendObjectInfo as well as SendObjectPropList Implement GetObjectInfo as well as GetObjectPropList Refer to PIMA 15740 for complete specification Support thumbnails For dedicated imaging device, identify as USB PTP camera.

Designing for Success – Gotchas Architect for your system Architect per the MTP specification, using MTP Porting Kit as a reference. Identify high risk performance issues early. Hashing algorithms? Memory management? Minimizing storage access? Run PlaysForSure test kit early and often Even if PlaysForSure isn’t a goal, it provides valuable feedback on performance and MTP conformance. Read the documentation A majority of answers to MTP questions can be found in the documentation In the MTP specification In the “Overview Of Portable Device Design” help file In the “Portable Device Installation Considerations” document

Future direction Support for IP connected devices Support more object types More media types Personal Information Management (PIM) data Property definitions Enhanced abstract object support Additional functions Media playback control Auxiliary display Sync primitives

Community Resources Windows Hardware & Driver Central (WHDC) www.microsoft.com/whdc/default.mspx Technical Communities www.microsoft.com/communities/products/default.mspx Non-Microsoft Community Sites www.microsoft.com/communities/related/default.mspx Microsoft Public Newsgroups www.microsoft.com/communities/newsgroups Technical Chats and Webcasts www.microsoft.com/communities/chats/default.mspx www.microsoft.com/webcasts Microsoft Blogs www.microsoft.com/communities/blogs

Additional Resources MTPInfo @ microsoft.com Web Resources: MTP Specification available at http://download.microsoft.com MTP Porting Kit available at http://download.microsoft.com Plays For Sure test kit available at http://www.microsoft.com/windows/windowsmedia/ consumerelectronics/p4skit/p4s_why.aspx Related Sessions PlaysForSure: A Key Asset for Your Device and Windows PC Cellular Phone connectivity in Longhorn Auxillary Display Platform for Longhorn

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.