Silverlight 5 WinRT

  public sealed class AudioDeviceController
  : __ComObject, IAudioDeviceController, IMediaDeviceController
  public virtual Boolean Muted { get; set; }
  public virtual Single VolumePercent { get; set; }
  public virtual IReadOnlyList`1<IMediaEncodingProperties> GetAvailableMediaStreamProperties(MediaStreamType MediaStreamType);
  public virtual IMediaEncodingProperties GetMediaStreamProperties(MediaStreamType MediaStreamType);
  public virtual SetMediaStreamPropertiesOperation SetMediaStreamPropertiesAsync(MediaStreamType MediaStreamType, IMediaEncodingProperties mediaEncodingProperties);

  public sealed enum AudioDeviceRole
  : IComparable, IFormattable, IConvertible
  { Console, Multimedia, Communications }

  public sealed class CallControl
  : __ComObject, ICallControl
  public virtual Boolean HasRinger { get; }
  public virtual event CallControlEventHandler AnswerRequested;
  public virtual event CallControlEventHandler AudioTransferRequested;
  public virtual event DialRequestedEventHandler DialRequested;
  public virtual event CallControlEventHandler HangUpRequested;
  public virtual event KeypadPressedEventHandler KeypadPressed;
  public virtual event RedialRequestedEventHandler RedialRequested;
  public virtual void EndCall(UInt64 callToken);
  static public CallControl FromId(String deviceInterfaceId);
  static public CallControl GetDefault();
  public virtual void IndicateActiveCall(UInt64 callToken);
  public virtual UInt64 IndicateNewIncomingCall(Boolean enableRinger, String callerId);
  public virtual UInt64 IndicateNewOutgoingCall();

  public sealed class CallControlEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(CallControl sender);

  public sealed class DialRequestedEventArgs
  : __ComObject, IDialRequestedEventArgs
  public virtual Object Contact { get; }
  public virtual void Handled();

  public sealed class DialRequestedEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(CallControl sender, DialRequestedEventArgs e);

  public abstract interface IMediaDeviceController
 
  public abstract virtual IReadOnlyList`1<IMediaEncodingProperties> GetAvailableMediaStreamProperties(MediaStreamType MediaStreamType);
  public abstract virtual IMediaEncodingProperties GetMediaStreamProperties(MediaStreamType MediaStreamType);
  public abstract virtual SetMediaStreamPropertiesOperation SetMediaStreamPropertiesAsync(MediaStreamType MediaStreamType, IMediaEncodingProperties mediaEncodingProperties);

  public abstract interface IVideoDeviceController
  : IMediaDeviceController
  public abstract virtual MediaDeviceControl BacklightCompensation { get; }
  public abstract virtual MediaDeviceControl Brightness { get; }
  public abstract virtual MediaDeviceControl Contrast { get; }
  public abstract virtual MediaDeviceControl Exposure { get; }
  public abstract virtual IReadOnlyDictionary`2<Guid, IMediaDeviceControl> ExtendedProperties { get; }
  public abstract virtual MediaDeviceControl Focus { get; }
  public abstract virtual MediaDeviceControl Hue { get; }
  public abstract virtual MediaDeviceControl Pan { get; }
  public abstract virtual MediaDeviceControl Roll { get; }
  public abstract virtual MediaDeviceControl Tilt { get; }
  public abstract virtual MediaDeviceControl WhiteBalance { get; }
  public abstract virtual MediaDeviceControl Zoom { get; }
  public abstract virtual Boolean TryGetPowerlineFrequency(out PowerlineFrequency& value);
  public abstract virtual Boolean TrySetPowerlineFrequency(PowerlineFrequency value);

  public sealed class KeypadPressedEventArgs
  : __ComObject, IKeypadPressedEventArgs
  public virtual TelephonyKey TelephonyKey { get; }

  public sealed class KeypadPressedEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(CallControl sender, KeypadPressedEventArgs e);

  public abstract sealed class MediaControl
  : __ComObject
  static public event MediaControlEventHandler ChannelDownSelected;
  static public event MediaControlEventHandler ChannelUpSelected;
  static public event MediaControlEventHandler FastForwardSelected;
  static public event MediaControlEventHandler MediaFocusLost;
  static public event MediaControlEventHandler MediaFocusReceived;
  static public event MediaControlEventHandler NextTrackSelected;
  static public event MediaControlEventHandler PauseSelected;
  static public event MediaControlEventHandler PlayPauseToggleSelected;
  static public event MediaControlEventHandler PlaySelected;
  static public event MediaControlEventHandler PreviousTrackSelected;
  static public event MediaControlEventHandler RecordSelected;
  static public event MediaControlEventHandler RewindSelected;
  static public event MediaControlEventHandler StopSelected;

  public sealed class MediaControlEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(Object sender);

  public abstract sealed class MediaDevice
  : __ComObject
  static public String GetAudioCaptureSelector();
  static public String GetAudioRenderSelector();
  static public String GetDefaultAudioCaptureId(AudioDeviceRole role);
  static public String GetDefaultAudioRenderId(AudioDeviceRole role);
  static public String GetVideoCaptureSelector();

  public sealed class MediaDeviceControl
  : __ComObject, IMediaDeviceControl
  public virtual MediaDeviceControlCapabilities Capabilities { get; }
  public virtual Boolean TryGetAuto(out Boolean& value);
  public virtual Boolean TryGetValue(out Double& value);
  public virtual Boolean TrySetAuto(Boolean value);
  public virtual Boolean TrySetValue(Double value);

  public sealed class MediaDeviceControlCapabilities
  : __ComObject, IMediaDeviceControlCapabilities
  public virtual Boolean AutoModeSupported { get; }
  public virtual Double Default { get; }
  public virtual Double Max { get; }
  public virtual Double Min { get; }
  public virtual Double Step { get; }
  public virtual Boolean Supported { get; }

  public sealed class RedialRequestedEventArgs
  : __ComObject, IRedialRequestedEventArgs
  public virtual void Handled();

  public sealed class RedialRequestedEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(CallControl sender, RedialRequestedEventArgs e);

  public sealed enum TelephonyKey
  : IComparable, IFormattable, IConvertible
  { D0, D1, D2, D3, D4, D5, D6, D7, D8, D9, Star, Pound, A, B, C, D }

  public sealed class VideoDeviceController
  : __ComObject, IVideoDeviceController, IMediaDeviceController, IAdvancedVideoCaptureDeviceController
  public virtual MediaDeviceControl BacklightCompensation { get; }
  public virtual MediaDeviceControl Brightness { get; }
  public virtual MediaDeviceControl Contrast { get; }
  public virtual MediaDeviceControl Exposure { get; }
  public virtual IReadOnlyDictionary`2<Guid, IMediaDeviceControl> ExtendedProperties { get; }
  public virtual MediaDeviceControl Focus { get; }
  public virtual MediaDeviceControl Hue { get; }
  public virtual MediaDeviceControl Pan { get; }
  public virtual MediaDeviceControl Roll { get; }
  public virtual MediaDeviceControl Tilt { get; }
  public virtual MediaDeviceControl WhiteBalance { get; }
  public virtual MediaDeviceControl Zoom { get; }
  public virtual IReadOnlyList`1<IMediaEncodingProperties> GetAvailableMediaStreamProperties(MediaStreamType MediaStreamType);
  public virtual Object GetDeviceEncoderProperty(String propertyId);
  public virtual Object GetDeviceProperty(String propertyId);
  public virtual IMediaEncodingProperties GetMediaStreamProperties(MediaStreamType MediaStreamType);
  public virtual void SetDeviceEncoderProperty(String propertyId, Object propertyValue);
  public virtual void SetDeviceProperty(String propertyId, Object propertyValue);
  public virtual SetMediaStreamPropertiesOperation SetMediaStreamPropertiesAsync(MediaStreamType MediaStreamType, IMediaEncodingProperties mediaEncodingProperties);
  public virtual Boolean TryGetPowerlineFrequency(out PowerlineFrequency& value);
  public virtual Boolean TrySetPowerlineFrequency(PowerlineFrequency value);