Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why...

28
Media Transfer Media Transfer Protocol Protocol supported supported

Transcript of Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why...

Page 1: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

Media Transfer ProtocolMedia Transfer Protocolsupported supported

Page 2: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

22

Session OutlineSession Outline OverviewOverview

Why use a class protocol?Why use a class protocol? Core scenarios & functionalityCore scenarios & functionality Non-goalsNon-goals OriginsOrigins

Technical detailsTechnical details FundamentalsFundamentals Objects, properties, enumeration, referencesObjects, properties, enumeration, references

Implementation detailsImplementation details USB optimizations & design considerationsUSB optimizations & design considerations Implementation exampleImplementation example

Development resourcesDevelopment resources Direct MTPDirect MTP MTP MonitorMTP Monitor MTP SimulatorMTP Simulator

SummarySummary Additional resourcesAdditional resources Questions & AnswersQuestions & Answers

Page 3: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

33

Why Use A Class Protocol?Why Use A Class Protocol?

No driver requiredNo driver required No driver development, installation or support costsNo driver development, installation or support costs

Match communication paradigm to APIMatch communication paradigm to API MTP mirrors current and future device connectivity APIMTP mirrors current and future device connectivity API

Better user experienceBetter user experience ““Just works”Just works”

InteroperabilityInteroperability Future-compatibleFuture-compatible Device ecosystem developmentDevice ecosystem development

Page 4: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

44

Core ScenariosCore Scenarios

Plug and Play experiencePlug and Play experience Self-describing protocolSelf-describing protocol

Device content synchronizationDevice content synchronization Send and retrieve media on portable playersSend and retrieve media on portable players Synchronize contacts/messages/schedules on PIMsSynchronize contacts/messages/schedules on PIMs Acquire images from a digital still cameraAcquire images from a digital still camera

Device control and managementDevice control and management Set device clock, volume, display optionsSet device clock, volume, display options Play, pause, rewind media playerPlay, pause, rewind media player

Remote content browsingRemote content browsing Identify objects by metadataIdentify objects by metadata View representative samples of objectsView representative samples of objects Metadata-defined abstract objectsMetadata-defined abstract objects

Page 5: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

55

Core FunctionalityCore Functionality

Rich object enumerationRich object enumeration Does not require a standard acceleration fileDoes not require a standard acceleration file Retrieve metadata separately from dataRetrieve metadata separately from data Representative samplesRepresentative samples

Generic object transferGeneric object transfer Abstract, opaque and combination objectsAbstract, opaque and combination objects

Device descriptionDevice description Device capabilitiesDevice capabilities Device metadataDevice metadata

Page 6: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

66

Non-GoalsNon-Goals

StreamingStreaming Requires and ensures bit-correctnessRequires and ensures bit-correctness Has no quality of service guaranteesHas no quality of service guarantees Playback from device requires bufferingPlayback from device requires buffering

Device discovery, pairingDevice discovery, pairing Relies on underlying transportRelies on underlying transport

DRMDRM Enables, but does not define, DRMEnables, but does not define, DRM

Page 7: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

77

OriginsOrigins

Origins in Picture Transfer ProtocolOrigins in Picture Transfer Protocol Dominant protocol for digital still camerasDominant protocol for digital still cameras Used in PictBridgeUsed in PictBridge MTP = PTP and ExtensionsMTP = PTP and Extensions

Bi-directionally compatibleBi-directionally compatible MTP devices can work with PTP devicesMTP devices can work with PTP devices PTP devices will work with MTP devicesPTP devices will work with MTP devices

MTP Enhanced and BasicMTP Enhanced and Basic Devices designed for Windows should implement MTP EnhancedDevices designed for Windows should implement MTP Enhanced MTP Basic is an OS-neutral subset, proposed for standardizationMTP Basic is an OS-neutral subset, proposed for standardization

Page 8: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

88

Connect, identifies as using MTPConnect, identifies as using MTP

Device capabilityDevice capability

Request device informationRequest device information

Request list of contentsRequest list of contents

Request metadata describing contentRequest metadata describing content

Array of handles to contentArray of handles to content

Send metadataSend metadata

Object exchangeObject exchange

Connection Walk-ThroughConnection Walk-Through

Page 9: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

99

FundamentalsFundamentals

BinaryBinary ActionsActions

Operation Operation Response Response EventsEvents

Device roles: Initiator-ResponderDevice roles: Initiator-Responder Initiator can send OperationsInitiator can send Operations Responder responds, fires eventsResponder responds, fires events

Device content represented by objectsDevice content represented by objects Device represented by device propertiesDevice represented by device properties File system, file structure and transport neutralFile system, file structure and transport neutral Device UI can remain activeDevice UI can remain active

Page 10: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1010

ObjectsObjects

All data is represented by objectsAll data is represented by objects Audio, Video, Image, File, Album, etc.Audio, Video, Image, File, Album, etc.

Objects can be binary, abstract or bothObjects can be binary, abstract or both Abstract objects have no binary data, such as albums Abstract objects have no binary data, such as albums

and playlistsand playlists

Objects are identified by 32-bit handlesObjects are identified by 32-bit handles Objects are described by propertiesObjects are described by properties

Device-constrained valuesDevice-constrained values Interdependent properties enabledInterdependent properties enabled

Data, Properties and References are sent and Data, Properties and References are sent and retrieved independentlyretrieved independently

Page 11: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1111

Object ComponentsObject Components

Array of Object References that refer to other Array of Object References that refer to other related objects on the device.related objects on the device.

Set of Object Properties, which define metadata and Set of Object Properties, which define metadata and properties. These values are understood by and properties. These values are understood by and restricted by the device.restricted by the device.

Static and overview set of fundamental information Static and overview set of fundamental information about this object, included for PTP compatibility.about this object, included for PTP compatibility.

Binary Object contentsBinary Object contents

Page 12: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1212

Object ReferencesObject References

File system neutral → objects identified by File system neutral → objects identified by 32-bit object handles32-bit object handles

References used to associate objectsReferences used to associate objects Playlists, Albums, etc.Playlists, Albums, etc.

UnidirectionalUnidirectional Meaning derived from contextMeaning derived from context Reference maintenance performedReference maintenance performed

by deviceby device

Page 13: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1313

Object ReferencesObject References

Page 14: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1414

Object enumerationObject enumeration

Quickly enumerate interesting contentQuickly enumerate interesting content Select bySelect by

Object formatObject format Desired propertiesDesired properties Folder hierarchyFolder hierarchy

Example return setsExample return sets All properties for all objectsAll properties for all objects Title, Artist and Duration for all WMA filesTitle, Artist and Duration for all WMA files

Optimized forOptimized for Full (or sub-range) enumerationsFull (or sub-range) enumerations High bandwidthHigh bandwidth High transaction costHigh transaction cost Processing power imbalanceProcessing power imbalance

Page 15: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1515

Object Enumeration – One At A TimeObject Enumeration – One At A Time

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavoritesFavorites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

HandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

Page 16: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1616

Object Enumeration – Prop By Prop By FormatObject Enumeration – Prop By Prop By Format

HandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavoritesFavorites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

Page 17: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1717

Object Enumeration – All By FormatObject Enumeration – All By Format

HandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavoritesFavorites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

Page 18: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1818

Object Enumeration – All By PropertyObject Enumeration – All By Property

HandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavoritesFavorites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

Page 19: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

1919

Object Enumeration – All By GroupObject Enumeration – All By Group

HandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavouritesFavourites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

Page 20: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2020

Object Enumeration – AllObject Enumeration – AllHandleHandle FormatFormat TitleTitle ArtistArtist DurationDuration FileNameFileName

WMAWMA

MP3MP3

MP3MP3

MP3MP3

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMAWMA

WMVWMV

WPLWPL

WMVWMV

UnknownUnknown

Title1Title1

Title2Title2

Title3Title3

Title4Title4

Title5Title5

Title6Title6

Title7Title7

Title8Title8

Title9Title9

Title10Title10

Title11Title11

Title12Title12

Title13Title13

Artist1Artist1

Artist2Artist2

Artist3Artist3

Artist2Artist2

Artist4Artist4

Artist3Artist3

Artist1Artist1

Artist5Artist5

Artist2Artist2

Artist4Artist4

Artist6Artist6

180000180000

200000200000

137000137000

257000257000

171000171000

148000148000

36000003600000

3700037000

130000130000

550000550000

110000110000

Song1.wmaSong1.wma

Song2.mp3Song2.mp3

Song3.wmaSong3.wma

Song4.wmaSong4.wma

Song5.mp3Song5.mp3

Vid1.wmvVid1.wmv

Song7.wmaSong7.wma

FavouritesFavourites

Vid2.wmvVid2.wmv

Song8.mp3Song8.mp3

WinHec.pptWinHec.ppt

Song9.wmaSong9.wma

Song6.wmaSong6.wma

0x000000010x00000001

0x000000020x00000002

0x000000030x00000003

0x000000040x00000004

0x000000050x00000005

0x000000060x00000006

0x000000070x00000007

0x000000080x00000008

0x000000090x00000009

0x0000000A0x0000000A

0x0000000B0x0000000B

0x0000000C0x0000000C

0x0000000D0x0000000D

Page 21: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2121

OptimizationsOptimizations

Data aligned with packet boundariesData aligned with packet boundaries No object size limitNo object size limit Property datasets are unorderedProperty datasets are unordered Property datasets may be pipedProperty datasets may be piped

without pre-compilationwithout pre-compilation Datasets designed to avoidDatasets designed to avoid

back-referencingback-referencing

Page 22: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2222

Implementation Details – Implementation Details – Hardware ConsiderationsHardware Considerations

Device StorageDevice Storage

USB controllerUSB controller

Driver FrameworkDriver Framework

USBScanUSBScan

MTPMTP

Device CPUDevice CPU

Device StorageDevice Storage

USBUSB //ATAPI BridgeATAPI Bridge

PCPC

DeviceDevice

Driver FrameworkDriver Framework

USBStorUSBStor

Portable Media PlayerPortable Media PlayerCPUCPU

AutomaticAutomaticSwitchSwitch

MTP CompatibleMTP Compatible Mass Storage OptimizedMass Storage Optimizednot suitable for MTPnot suitable for MTP

File File Transfer Transfer

using using DMA DMA

MSCMSC

Page 23: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2323

Development ResourcesDevelopment Resources

Direct MTPDirect MTP Useful for sending MTP operations to the deviceUseful for sending MTP operations to the device All operation parameters can be fully specifiedAll operation parameters can be fully specified Device responses are displayed in the UIDevice responses are displayed in the UI

MTP MonitorMTP Monitor Monitors & logs USB bus traffic for MTP exchangesMonitors & logs USB bus traffic for MTP exchanges Parses and interprets MTP operations/responses/eventsParses and interprets MTP operations/responses/events

MTP SimulatorMTP Simulator Software MTP deviceSoftware MTP device Requires simulator board to expose as device to the PCRequires simulator board to expose as device to the PC Provides a protocol referenceProvides a protocol reference Useful for debugging device behavior with the MTP driverUseful for debugging device behavior with the MTP driver

Page 24: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2424

Development Resources – Development Resources – Direct MTPDirect MTP

Page 25: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2525

Development Resources – Development Resources – MTP MonitorMTP Monitor Simple bus analyzerSimple bus analyzer Displays and parses Displays and parses

MTP trafficMTP traffic Very useful for Very useful for

debugging device debugging device implementationsimplementations

Page 26: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2626

SummarySummary

A class protocol for portable media devicesA class protocol for portable media devices Digital Cameras, Portable Media Players, Cellular Digital Cameras, Portable Media Players, Cellular

Phones, etcPhones, etc Enable hybrid devices, generic firmwareEnable hybrid devices, generic firmware

Based on Picture Transfer Protocol (PTP)Based on Picture Transfer Protocol (PTP) Widely used standard for digital still camerasWidely used standard for digital still cameras

MTP enablesMTP enables Generic object transfer between devicesGeneric object transfer between devices Rich object descriptionRich object description Device management and controlDevice management and control

File system, transport, file structure neutralFile system, transport, file structure neutral

Page 27: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2727

Call To ActionCall To Action

Use MTP as a connectivity protocol for portable Use MTP as a connectivity protocol for portable media playersmedia players Support shipping in the next Windows Media Player Support shipping in the next Windows Media Player

(codenamed Crescent)(codenamed Crescent)

Consider MTP as an upgrade path for Digital Still Consider MTP as an upgrade path for Digital Still CamerasCameras PTP will continue to be fully supported and endorsedPTP will continue to be fully supported and endorsed

Consider MTP as an object transfer & control Consider MTP as an object transfer & control protocol any intelligent portable device with storageprotocol any intelligent portable device with storage Cellular handsets, hybrid devicesCellular handsets, hybrid devices Supported in VistaSupported in Vista

Page 28: Media Transfer Protocol supported. 2 Session Outline Overview Overview Why use a class protocol? Why use a class protocol? Core scenarios & functionality.

2828

Community ResourcesCommunity Resources

Community SitesCommunity Sites http://www.microsoft.com/communities/default.mspxhttp://www.microsoft.com/communities/default.mspx

List of NewsgroupsList of Newsgroups http://communities2.microsoft.com/communities/newsgroups/en-uhttp://communities2.microsoft.com/communities/newsgroups/en-u

s/default.aspxs/default.aspx

Attend a free chat or webcastAttend a free chat or webcast http://www.microsoft.com/communities/chats/default.mspxhttp://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/seminar/events/webcasts/default.mspxhttp://www.microsoft.com/seminar/events/webcasts/default.mspx

Locate a local user group(s)Locate a local user group(s) http://www.microsoft.com/communities/usergroups/default.mspxhttp://www.microsoft.com/communities/usergroups/default.mspx

Non-Microsoft Community SitesNon-Microsoft Community Sites http://www.microsoft.com/communities/related/default.mspxhttp://www.microsoft.com/communities/related/default.mspx