Troubleshooting and Introduction to New Tests Yuk Lai Suen, Windows Sound Team February 26-28, 2008 1 Munich Windows Vista LogoFest.

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Fidelity Test – Import and Export Introduction and Troubleshooting Matthew van Eerde, Windows Sound.
Jeff McCashland. Agenda Supported Deployment Scenarios System Requirements Installing DTM Controller Installing the DTM Logo Tests Installing DTM Studio.
Feature: Purchase Requisitions - Requester © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Web RoleWorker Role At runtime each Role will execute on one or more instances A role instance is a set of code, configuration, and local data, deployed.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Co- location Mass Market Managed Hosting ISV Hosting.
Windows 7 Training. Windows ® 7 Compatibility Installer Detection.
Roland Saad Software Design Engineer in Test Microsoft Corporation.
DTM UI will only display the Windows Server 2008 R2 Server System Logo tests (for x64 and Itanium) Passing system gets both 64-bit System.
Paul Reed Program Manager – Windows Logo Program microsoft.com.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Multitenant Model Request/Response General Model.
Feature: Purchase Order Prepayments II © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
HD Audio 1.1 Overview David Flenniken Software Design Engineer Windows Media Devices Group microsoft.com Microsoft Corporation Soccer Liu Software.
Using The WDK For Windows Logo And Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Announcing Demo Announcing.
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
 Rico Mariani Architect Microsoft Corporation.
Using the WDK for Windows Logo and Signature Testing Craig Rowland Program Manager Windows Driver Kits Microsoft Corporation.
WinHEC /22/2017 © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Connect with life Connect with life
Windows Azure Connect Name Title Microsoft Corporation.
NEXT: Overview – Sharing skills & code.
demo Receive Inventory Export Parse and Normalize.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
announcing Dev Manager Do I understand what we’ve built? Developer Can I bet on using this shared component? Testers What’s changed since I last.
Ian Ellison-Taylor General Manager Microsoft Corporation PC27.
David Edfeldt Windows Logo Program February 26-28, 2008Munich Windows Vista LogoFest.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”

customer.
Gilbert Javier Program Manager. WLK 1.5 themes WLK 1.5 by the numbers WLK 1.5 highlights Logo programs affected WLK schedule.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
The CLR CoreCLRCoreCLR © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Sr. Dir. – Systems Architecture Inlet Technologies.

Segment CAGR Total Mobile PCs84,100114,850132,538162,958202,746234,612257, % % w/ Bluetooth37.2%32.1%34.8%37.5%38.9%40.1%40.5%
Windows 8 Hardware Certification Program and KIT Overview
Возможности Excel 2010, о которых следует знать
Testing mobile broadband devices
Windows Summit /27/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may.
Windows Summit /1/2018 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
Title of Presentation 12/2/2018 3:48 PM
Customizing WPA Trace Views
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Windows 8 Security Internals
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
Шитманов Дархан Қаражанұлы Тарих пәнінің
HD Audio 1.1 Overview David Flenniken
Title of Presentation 5/24/2019 1:26 PM
日本初公開!? Vista の新機能を実演 とっちゃん わんくま同盟 7/23/2019 9:09 AM
WCL425 App Compat for Nerds Chris Jackson.
Presentation transcript:

Troubleshooting and Introduction to New Tests Yuk Lai Suen, Windows Sound Team February 26-28, Munich Windows Vista LogoFest

 What Is Fidelity Test and How Does It Work?  When Must a New Log be Exported?  Something Went Wrong--What Do I Do?  Windows  Logo Kit 1.2 Preview February 26-28, Munich Windows Vista LogoFest

 We would like to make sure that end users have an acceptable experience with the quality of audio solutions on PCs.  We have set a minimum bar for the fidelity on PCs, and we would like to drive the industry with that standard:  SYSFUND-0018 (1-Jun-2006) - Premium system audio solution delivers a high-fidelity audio experience.  SYSFUND-0127 (1-Jun-2006) - System audio record and playback meet basic performance requirements for audio experience.  AUDIO-0006 (1-Jun-2007) - Audio solution delivers a premium high- fidelity audio experience.  To test devices and systems against these requirements, we implemented fidelity test for Windows Vista  RTM:  We shipped WLK for Windows Vista RTM. February 26-28, Munich Windows Vista LogoFest

 Standard Driver Test Manager (DTM) setup:  Controller.  Studio.  System under test.  Additionally:  Audio Precision analyzer.  Audio Precision host + APIB cable.  Audio cables. February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

 Same setup as “run locally”:  Test results exported to a specially-decorated log file.  This is the same as the.wtl (Windows Test Log) file on the DTM controller, but with an added hash.  The hash ensures that the file has not changed since it was created. Hash: SHA-1/Encrypted 408e96f2f46e35f916454ac3fad19567b6cb788 (from here on the file is the same as the.wtl file) (this line is important... more on this later) (basic or premium; desktop or mobile) (and so are these... more on this later) (PnP ID plus hash of topology) () February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

Setup changes from “run locally”: – No AP analyzer or audio cables necessary! – “AP host” is still necessary, but for DTM Scheduler reasons only. It takes no active role in the test - it is just a replica machine. – Fidelity Test must be able to reach and read the log file from the system under test. What about the log file? – Log file must be exactly the same as when it was exported (even white space, line breaks, and case). – Content of log file must match system being tested (more on this later). – Requirements must be compatible between log file and submission (for example, can't import a Basic pass into a Premium submission). February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

A premium log can be imported to both Premium and Basic submissions. The list of PnP IDs of audio devices must match between the system under test and the log file: – If you add a USB Webcam, you must export a log that includes the USB Webcam. – If the codec REV_ number is incremented, you must export a new log. – If the SUBSYS_ number changes, you must export a new log. The audio “topology” exposed by each audio device in the system under test must match the one recorded in the log file: – If you can connect a pin on the codec to either a “CD in” or an “AUX”, you must export a log each way. If you have a third-party driver for a HD Audio device, export a log with the third-party driver installed and a log with the Microsoft HD Audio class driver installed. February 26-28, Munich Windows Vista LogoFest

This is a screenshot of an audio filter, viewed in KSStudio.exe, available as part of the Windows Driver Kit. February 26-28, Munich Windows Vista LogoFest

 The topology provides a detailed map of how data flows:  For capture, from the hardware through the driver to the operating system.  For render, from the operating system through the driver to the hardware.  Topology is exposed by the audio driver.  Driver changes might change topology:  If a driver version changes, it may or may not affect the topology exposed by any given hardware. February 26-28, Munich Windows Vista LogoFest

 USB Audio Class Driver:  Uses USB descriptor stored in the device to expose topology.  If the descriptor changes, the topology might change.  HD Audio Class Driver:  Uses HD Audio pin configuration registers stored in the BIOS to expose topology.  If the BIOS changes, the topology will probably change.  Jack Presence Detection:  Some hardware can detect when a jack is plugged in.  Windows Vista allows the driver to expose filters dynamically.  Always plug in all audio jacks - including HDMI - when running any audio test.  Use Multimedia Control Panel to verify that there are no “unplugged” audio endpoints. February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

Error in log file: Could not import from file (...) (error 0x ). Export dry run failed (...) (error 0x ). – 0x is ERROR_FILE_NOT_FOUND. – 0x is ERROR_ACCESS_DENIED. Solution: Fidelity Test runs on the System Under Test... (has different C, D,... drives from the Studio machine)... as local user.\DTMLLUAdminUser (will likely not have permission to \\server\share paths)  Best practice: Place the file on the C drive of the system under test February 26-28, Munich Windows Vista LogoFest

“Requirements in the log do not match requirements for this test pass” – Importing Basic log into Premium submission. – Importing Desktop log into Mobile submission... or vice versa. – Look at REQUIREMENTS: and REPLAYED: REQUIREMENTS: log lines. – Note that the Fidelity requirements are different for Basic/Premium and Desktop/Mobile. – A Premium log can be imported into a Basic submission, but everything else must match. February 26-28, Munich Windows Vista LogoFest

“Some devices in this SUT, selected for test, do not appear in the log file” “This log file contains devices that do not exist in the SUT” – This means there is a mismatch, either in the list of PnP IDs or in some device's topology. – Make sure all jacks are plugged in; confirm via mmsys.cpl. – If that doesn't fix it, look at the DEVICE-INFO: and REPLAYED: DEVICE-INFO: lines - compare the PnP IDs. – If those all match, look at the Topology hashes and find the ones that don't match; then look at the Topology: lines and break them out. February 26-28, Munich Windows Vista LogoFest

 “This log file contains devices that do not exist in the SUT”  Compare DEVICE-INFO lines first:  DEVICE-INFO:  HDAUDIO\FUNC_01&VEN_VVVV&DEV_DDDD&SUBSYS_SSSSSSSS&REV_RRRR  Topology SHA-1 hash: f0a5d91d8a1497db a7535e5e1853  REPLAYED: DEVICE-INFO:  HDAUDIO\FUNC_01&VEN_VVVV&DEV_DDDD&SUBSYS_SSSSSSSS&REV_RRRR  Topology SHA-1 hash: 62d a8c8842bdc7e468ed4b4f88591  The PnP IDs have been sanitized, but they matched (trust me.) The Topology hashes, on the other hand, don't! February 26-28, Munich Windows Vista LogoFest

 Topology in SUT Topology: HD Audio CD in capture mixer (Pins: Filter, CD Audio; Nodes: CD Volume, CD Mute; Connections: CD Audio => CD Volume(1), CD Mute(0) => Filter, CD Volume(0) => CD Mute(1); ); HD Audio CD in capture (Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; ); HD Audio Headphone mixer (Pins: Filter, Headphones; Nodes: Speakers, Master Mute; Connections: Filter => Speakers(1), Master Mute(0) => Headphones, Speakers(0) => Master Mute(1); ); HD Audio Headphone (Pins: PC Speaker, Filter; Nodes: HD Audio line out; Connections: PC Speaker => HD Audio line out(1), HD Audio line out(0) => Filter; ); HD Audio Speaker mixer (Pins: Filter, Speakers; Nodes: Speakers, Master Mute; Connections: Filter => Speakers(1), Master Mute(0) => Speakers, Speakers(0) => Master Mute(1); ); HD Audio Microphone mixer (Pins: Filter, Microphone; Nodes: Mic Volume, Mic Mute, Microphone Boost; Connections: Microphone => Mic Volume(1), Microphone Boost(0) => Filter, Mic Mute(0) => Microphone Boost(1), Mic Volume(0) => Mic Mute(1); ); HD Audio Microphone (Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; ); HD Audio Digital in mixer (Pins: Filter, Digital Input Device (SPDIF); Nodes: ; Connections: Digital Input Device (SPDIF) => Filter; ); HD Audio Digital in (Pins: Filter, Filter; Nodes: SPDIF Interface; Connections: Filter => SPDIF Interface(1), SPDIF Interface(0) => Filter; ); HD Audio SPDIF out mixer (Pins: Filter, Digital Output Device (SPDIF); Nodes: Master Mute; Connections: Filter => Master Mute(1), Master Mute(0) => Digital Output Device (SPDIF); ); HD Audio SPDIF out (Pins: Filter, Filter; Nodes: SPDIF Interface; Connections: Filter => SPDIF Interface(1), SPDIF Interface(0) => Filter; ); Topology from file REPLAYED: Topology: HD Audio CD in capture mixer (Pins: Filter, CD Audio; Nodes: CD Volume, CD Mute; Connections: CD Audio => CD Volume(1), CD Mute(0) => Filter, CD Volume(0) => CD Mute(1); ); HD Audio CD in capture (Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; ); HD Audio Headphone mixer (Pins: Filter, Headphones; Nodes: Speakers, Master Mute; Connections: Filter => Speakers(1), Master Mute(0) => Headphones, Speakers(0) => Master Mute(1); ); HD Audio Headphone (Pins: PC Speaker, Filter; Nodes: HD Audio line out; Connections: PC Speaker => HD Audio line out(1), HD Audio line out(0) => Filter; ); HD Audio Speaker mixer (Pins: Filter, Speakers; Nodes: Speakers, Master Mute; Connections: Filter => Speakers(1), Master Mute(0) => Speakers, Speakers(0) => Master Mute(1); ); HD Audio Speaker (Pins: PC Speaker, Filter; Nodes: HD Audio line out; Connections: PC Speaker => HD Audio line out(1), HD Audio line out(0) => Filter; ); HD Audio Microphone mixer (Pins: Filter, Microphone; Nodes: Mic Volume, Mic Mute, Microphone Boost; Connections: Microphone => Mic Volume(1), Microphone Boost(0) => Filter, Mic Mute(0) => Microphone Boost(1), Mic Volume(0) => Mic Mute(1); ); HD Audio Microphone (Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; ); HD Audio Digital in mixer (Pins: Filter, Digital Input Device (SPDIF); Nodes: ; Connections: Digital Input Device (SPDIF) => Filter; ); HD Audio Digital in (Pins: Filter, Filter; Nodes: SPDIF Interface; Connections: Filter => SPDIF Interface(1), SPDIF Interface(0) => Filter; ); HD Audio SPDIF out mixer (Pins: Filter, Digital Output Device (SPDIF); Nodes: Master Mute; Connections: Filter => Master Mute(1), Master Mute(0) => Digital Output Device (SPDIF); ); HD Audio SPDIF out (Pins: Filter, Filter; Nodes: SPDIF Interface; Connections: Filter => SPDIF Interface(1), SPDIF Interface(0) => Filter; ); February 26-28, Munich Windows Vista LogoFest

Each line contains several filters. Each filter looks like: – Filter name (Pins:...; Nodes:...; Connections:...; ); Each filter corresponds to a KSStudio block. Recommended legible layout: Filter name ( Pins: Pin 1, Pin 2,...; (these are the things on the outside of the block) Nodes: Node 1, Node 2,...; (these are the things on the inside of the block) Connections: (Nodes have two sides, Node(0) and Node(1); Pins have one side) Pin 1 => Node 1(1), Node 1(0) => Node 2(0),...; ); Parse both topologies into the legible layout, then use a "diff" tool to see what changed (various tools available). February 26-28, Munich Windows Vista LogoFest

 Topology in SUT HD Audio CD in capture mixer ( Pins: Filter, CD Audio; Nodes: CD Volume, CD Mute; Connections: CD Audio => CD Volume(1), CD Mute(0) => Filter, CD Volume(0) => CD Mute(1); ); HD Audio CD in capture ( Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; );... (etc.)  Topology from file HD Audio CD in capture mixer ( Pins: Filter, CD Audio; Nodes: CD Volume, CD Mute; Connections: CD Audio => CD Volume(1), CD Mute(0) => Filter, CD Volume(0) => CD Mute(1); ); HD Audio CD in capture ( Pins: Recording Control, Filter; Nodes: Unnamed; Connections: Filter => Unnamed(1), Unnamed(0) => Recording Control; );... (etc.) February 26-28, Munich Windows Vista LogoFest

The following filter was exposed when the exported log file was created, but is not exposed in the system under test: HD Audio Speaker ( Pins: PC Speaker, Filter; Nodes: HD Audio line out; Connections: PC Speaker => HD Audio line out(1), HD Audio line out(0) => Filter; ); Diagnosis: there's something wrong with the “Speaker” endpoint, which is actually a line out. Checking mmsys.cpl confirms the diagnosis; the “Speaker” endpoint is listed as “Not plugged in.” February 26-28, Munich Windows Vista LogoFest

 Our vision:  Users have high-quality audio experience with PC entertainment and communication involving audio.  Applicable scenarios:  VoIP application, speech recognition, and dictation.  No buzzing and clicking with running graphic intensive programs, etc.  Requirements:  There are no new requirements; that is, requirements for our new tests have always been in place.  SYSFUND-0018 (1-Jun-2006) - Premium system audio solution delivers a high-fidelity audio experience.  SYSFUND-0127 (1-Jun-2006) - System audio record and playback meet Basic performance requirements for audio experience.  AUDIO-0006 (1-Jun-2007) - Audio solution delivers a Premium high- fidelity audio experience. February 26-28, Munich Windows Vista LogoFest

 Test cases:  Input Level Test  Dynamic Range Test  THD+N Test  Frequency Response Test  Skew Test  Running tests  No new hardware is required.  No new jobs or UI in DTM; just run the same jobs you were running before, and new test cases will be run:  Fidelity Test  HD Audio Class Driver Fidelity Test  Connect line-in and/or microphone jacks to Audio Precision (AP) Analyzer’s generator module through audio cables. February 26-28, Munich Windows Vista LogoFest

February 26-28, Munich Windows Vista LogoFest

 Again, no new hardware, job, or UI, same good old job.  Stress tool: RWS.exe:  Stress GPU, disk usage, memory, etc.  Fidelity test measures noise level during these system activity and makes sure that the result complies with our requirements for different programs.  Fidelity Test configures the stress profile at run time and saves the file at %temp%\fidelity.xml.  To reproduce an issue encountered during testing, you can save that file and reconfigure the stress. February 26-28, Munich Windows Vista LogoFest

1 >1 > February 26-28, Munich Windows Vista LogoFest

 Export and Import for the same release  ALLOWED  Export from 1.2 – Import to 1.1  ALLOWED … as long as 1.1 is not retired.  Export from 1.1 – Import to 1.2  NOT ALLOWED February 26-28, Munich Windows Vista LogoFest

 Dialog boxes will appear when the form factor of an endpoint is “Speaker”:  If the endpoint is indeed a line-out, tester should make sure to select to test that endpoint.  Audio tests will now show up in Device Console for a submission if system does not have audio device:  Specifically, this benefits testing Windows Server  2008 systems that do not ship with audio components, so if you don’t have audio device on your system, you don’t need to run Fidelity Test with an imitation AP Host. February 26-28, Munich Windows Vista LogoFest

 Audio Fidelity Testing   Windows Logo Kit requirements    Video for running fidelity test locally  Video demo for importing and exporting logs  Windows Driver Kit / Windows Logo Kit   System Error Codes  February 26-28, Munich Windows Vista LogoFest

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.