<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>146985</bug_id>
          
          <creation_ts>2015-07-15 15:45:07 -0700</creation_ts>
          <short_desc>In getUserMedia(), make sure a request has titles of devices which user can choose from.</short_desc>
          <delta_ts>2016-01-25 14:16:38 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Matthew Daiter">mdaiter</reporter>
          <assigned_to name="Matthew Daiter">mdaiter</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jeremyj-wk</cc>
    
    <cc>jonlee</cc>
    
    <cc>mdaiter</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1109745</commentid>
    <comment_count>0</comment_count>
    <who name="Matthew Daiter">mdaiter</who>
    <bug_when>2015-07-15 15:45:07 -0700</bug_when>
    <thetext>When presenting getUserMedia, the user should be informed of the device he or she is opening. This patch enables the passing of a list of strings from WebCore to WebKit2, enabling browsers to pull an available list of devices so a user can see options from which he or she can choose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109747</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-07-15 15:46:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/21844415&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109751</commentid>
    <comment_count>2</comment_count>
      <attachid>256871</attachid>
    <who name="Matthew Daiter">mdaiter</who>
    <bug_when>2015-07-15 15:52:22 -0700</bug_when>
    <thetext>Created attachment 256871
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109817</commentid>
    <comment_count>3</comment_count>
      <attachid>256871</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2015-07-15 20:08:51 -0700</bug_when>
    <thetext>Comment on attachment 256871
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=256871&amp;action=review

&gt; Source/WebCore/Modules/mediastream/UserMediaRequest.cpp:127
&gt;  void UserMediaRequest::constraintsValidated()
&gt;  {

Is this necessary to get titles?

&gt; Source/WebCore/Modules/mediastream/UserMediaRequest.cpp:134
&gt; +            Vector&lt;RefPtr&lt;TrackSourceInfo&gt;&gt; trackSourcesInfo = AVCaptureDeviceManager::singleton().getSourcesInfo(&quot;&quot;);

If so, this code is cross platform so I think you need to add a new virtual method to RealtimeMediaSourceCenter that calls [platform manager].getSourcesInfo()

&gt; Source/WebCore/Modules/mediastream/UserMediaRequest.cpp:138
&gt; +                    AVCaptureDeviceManager::singleton().verifyConstraintsForMediaType(RealtimeMediaSource::Audio, protectedAudio.get(), invalidConstraint);

Ditto, but for verifyConstraintsForMediaType.

&gt; Source/WebCore/Modules/mediastream/UserMediaRequest.cpp:145
&gt; +                    AVCaptureDeviceManager::singleton().verifyConstraintsForMediaType(RealtimeMediaSource::Video, protectedVideo.get(), invalidConstraint);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1158499</commentid>
    <comment_count>4</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2016-01-25 14:16:38 -0800</bug_when>
    <thetext>This is handled elsewhere.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256871</attachid>
            <date>2015-07-15 15:52:22 -0700</date>
            <delta_ts>2015-07-15 20:08:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146985-20150715155114.patch</filename>
            <type>text/plain</type>
            <size>4336</size>
            <attacher name="Matthew Daiter">mdaiter</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2ODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmM4NzQzOTY0NGRhZGQw
NDNmYWM2NTllMDQ1ZDA4OTYxZDQzM2U2Ny4uYTQ1MWExNmJkMDk2OGFiZGE1NmY0NDNkZDQ2YjUy
MTJkZWE1OGNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTA3LTE1ICBNYXR0
aGV3IERhaXRlciAgPG1kYWl0ZXJAYXBwbGUuY29tPgorCisgICAgICAgIEVuYWJsZSBVc2VyTWVk
aWFSZXF1ZXN0IHRvIHNlZSB0aXRsZXMgb2YgZGV2aWNlcyBhdmFpbGFibGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0Njk4NQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMjE4NDQ0MTU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdDo6Y29uc3RyYWludHNWYWxpZGF0
ZWQpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5oOgor
ICAgICAgICAoV2ViQ29yZTo6VXNlck1lZGlhUmVxdWVzdDo6bGFiZWxzKToKKwogMjAxNS0wNy0x
NSAgSmlueW91bmcgSHVyICA8aHVyLmltc0BuYXZlcmNvcnAuY29tPgogCiAgICAgICAgIFtXaW5D
YWlyb10gZm9udCBmYWxsYmFjayBub3Qgd29ya2luZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vVXNlck1lZGlhUmVxdWVzdC5jcHAKaW5kZXggMmRlMjU5
YTFiNjY0YmE5MmM1MTA3ODg2Y2FkNDYwODRiNzljMzkwOS4uMzk1ODM3YjU0MTA3ZjNiYjVlYmQy
ZWMzODhlZmM3NmYxYzRkYWU3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuY3BwCkBAIC0zNyw2ICszNyw3IEBACiAK
ICNpbmNsdWRlICJVc2VyTWVkaWFSZXF1ZXN0LmgiCiAKKyNpbmNsdWRlICJBVkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiRGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkRvY3VtZW50
LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgpAQCAtNDYsNiArNDcsNyBAQAogI2luY2x1
ZGUgIk1lZGlhQ29uc3RyYWludHNJbXBsLmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW0uaCIKICNp
bmNsdWRlICJNZWRpYVN0cmVhbVByaXZhdGUuaCIKKyNpbmNsdWRlICJNZWRpYVN0cmVhbVRyYWNr
U291cmNlc1JlcXVlc3RDbGllbnQuaCIKICNpbmNsdWRlICJOYXZpZ2F0b3JVc2VyTWVkaWFFcnJv
ckNhbGxiYWNrLmgiCiAjaW5jbHVkZSAiTmF2aWdhdG9yVXNlck1lZGlhU3VjY2Vzc0NhbGxiYWNr
LmgiCiAjaW5jbHVkZSAiUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oIgpAQCAtMTI0LDEwICsx
MjYsMzEgQEAgdm9pZCBVc2VyTWVkaWFSZXF1ZXN0OjpzdGFydCgpCiB2b2lkIFVzZXJNZWRpYVJl
cXVlc3Q6OmNvbnN0cmFpbnRzVmFsaWRhdGVkKCkKIHsKICAgICBSZWZQdHI8VXNlck1lZGlhUmVx
dWVzdD4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKLSAgICBjYWxsT25NYWluVGhyZWFkKFtwcm90ZWN0
ZWRUaGlzXSB7CisgICAgUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+IHByb3RlY3RlZEF1ZGlvKG1f
YXVkaW9Db25zdHJhaW50cyk7CisgICAgUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+IHByb3RlY3Rl
ZFZpZGVvKG1fdmlkZW9Db25zdHJhaW50cyk7CisgICAgY2FsbE9uTWFpblRocmVhZChbcHJvdGVj
dGVkVGhpcywgcHJvdGVjdGVkVmlkZW8sIHByb3RlY3RlZEF1ZGlvXSB7CiAgICAgICAgIC8vIDIg
LSBUaGUgY29uc3RyYWludHMgYXJlIHZhbGlkLCBhc2sgdGhlIHVzZXIgZm9yIGFjY2VzcyB0byBt
ZWRpYS4KLSAgICAgICAgaWYgKFVzZXJNZWRpYUNvbnRyb2xsZXIqIGNvbnRyb2xsZXIgPSBwcm90
ZWN0ZWRUaGlzLT5tX2NvbnRyb2xsZXIpCisgICAgICAgIGlmIChVc2VyTWVkaWFDb250cm9sbGVy
KiBjb250cm9sbGVyID0gcHJvdGVjdGVkVGhpcy0+bV9jb250cm9sbGVyKSB7CisgICAgICAgICAg
ICBWZWN0b3I8UmVmUHRyPFRyYWNrU291cmNlSW5mbz4+IHRyYWNrU291cmNlc0luZm8gPSBBVkNh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0b24oKS5nZXRTb3VyY2VzSW5mbygiIik7CisgICAg
ICAgICAgICBmb3IgKGF1dG8gdHJhY2sgOiB0cmFja1NvdXJjZXNJbmZvKSB7CisgICAgICAgICAg
ICAgICAgaWYgKHByb3RlY3RlZEF1ZGlvKSB7CisgICAgICAgICAgICAgICAgICAgIFN0cmluZyBp
bnZhbGlkQ29uc3RyYWludDsKKyAgICAgICAgICAgICAgICAgICAgQVZDYXB0dXJlRGV2aWNlTWFu
YWdlcjo6c2luZ2xldG9uKCkudmVyaWZ5Q29uc3RyYWludHNGb3JNZWRpYVR5cGUoUmVhbHRpbWVN
ZWRpYVNvdXJjZTo6QXVkaW8sIHByb3RlY3RlZEF1ZGlvLmdldCgpLCBpbnZhbGlkQ29uc3RyYWlu
dCk7CisgICAgICAgICAgICAgICAgICAgIGlmICghaW52YWxpZENvbnN0cmFpbnQuaXNFbXB0eSgp
KQorICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIGlmIChwcm90ZWN0ZWRWaWRlbykgewor
ICAgICAgICAgICAgICAgICAgICBTdHJpbmcgaW52YWxpZENvbnN0cmFpbnQ7CisgICAgICAgICAg
ICAgICAgICAgIEFWQ2FwdHVyZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpLnZlcmlmeUNvbnN0
cmFpbnRzRm9yTWVkaWFUeXBlKFJlYWx0aW1lTWVkaWFTb3VyY2U6OlZpZGVvLCBwcm90ZWN0ZWRW
aWRlby5nZXQoKSwgaW52YWxpZENvbnN0cmFpbnQpOworICAgICAgICAgICAgICAgICAgICBpZiAo
IWludmFsaWRDb25zdHJhaW50LmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnRpbnVlOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIHByb3RlY3RlZFRo
aXMtPm1fbGFiZWxzLmFwcGVuZCh0cmFjay0+bGFiZWwoKSk7CisgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBjb250cm9sbGVyLT5yZXF1ZXN0UGVybWlzc2lvbigqcHJvdGVjdGVkVGhpcy5nZXQo
KSk7CisgICAgICAgIH0KICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9Vc2VyTWVkaWFSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAppbmRleCAwZDBkNDRhOGZjNTM3
YmNmM2EzODcyYmQwMWZkNzNkZjA5NjBiNzUxLi4zMDQ2OTYyZmE1NGJkMTdkOWQ1NDM0M2ZjYmVj
Y2I1MmI0NmQ0NDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL1VzZXJNZWRpYVJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL1VzZXJNZWRpYVJlcXVlc3QuaApAQCAtNjksNiArNjksOCBAQCBwdWJsaWM6CiAKICAg
ICBib29sIHJlcXVpcmVzQXVkaW8oKSBjb25zdCB7IHJldHVybiBtX2F1ZGlvQ29uc3RyYWludHM7
IH0KICAgICBib29sIHJlcXVpcmVzVmlkZW8oKSBjb25zdCB7IHJldHVybiBtX3ZpZGVvQ29uc3Ry
YWludHM7IH0KKyAgICAKKyAgICBWZWN0b3I8U3RyaW5nPiBsYWJlbHMoKSBjb25zdCB7IHJldHVy
biBtX2xhYmVsczsgfQogCiBwcml2YXRlOgogICAgIFVzZXJNZWRpYVJlcXVlc3QoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIFVzZXJNZWRpYUNvbnRyb2xsZXIqLCBQYXNzUmVmUHRyPE1lZGlhQ29u
c3RyYWludHM+IGF1ZGlvQ29uc3RyYWludHMsIFBhc3NSZWZQdHI8TWVkaWFDb25zdHJhaW50cz4g
dmlkZW9Db25zdHJhaW50cywgTWVkaWFEZXZpY2VzOjpQcm9taXNlJiYpOwpAQCAtODYsNiArODgs
OCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxNZWRpYUNvbnN0cmFpbnRzPiBtX2F1ZGlvQ29uc3Ry
YWludHM7CiAgICAgUmVmUHRyPE1lZGlhQ29uc3RyYWludHM+IG1fdmlkZW9Db25zdHJhaW50czsK
IAorICAgIFZlY3RvcjxTdHJpbmc+IG1fbGFiZWxzOworICAgIAogICAgIFVzZXJNZWRpYUNvbnRy
b2xsZXIqIG1fY29udHJvbGxlcjsKIAogICAgIE1lZGlhRGV2aWNlczo6UHJvbWlzZSBtX3Byb21p
c2U7Cg==
</data>
<flag name="review"
          id="281986"
          type_id="1"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
      

    </bug>

</bugzilla>