What is this string Chrome appends to the label in MediaDeviceInfo? - google-chrome

In the device list returned by enumerateDevices, instead of FaceTime HD Camera (Built-in), Chrome labels this device FaceTime HD Camera (Built-in) (05ac:1254) for me. It does the same for some other microphones and some other speakers but not all.
FireFox does not appear to do this at all, which is why I assume this is a Chrome-specific behavior.
I can't find any information about what this string means and why it's appended. Can anyone fill me in?

Related

why are the widgets not displayed

I have a simple web page that contain a widget
http://www.mccdepot.com.au/index6.html
This works on chrome, IE, firefox and safari.
But on a samsung TV I have the inbuilt browser does not show anything at all.
The browser is launched with an application called 'URL Launcher'
The model number is DM40E and it is using a browser called 'Hospitality browser' but the underlying browser is tizen.
When i checked the browser using whatbrowser.org it told me it was 'webkit nightly 537'
Can anyone help? any way to get these widegts shown on my tv.. I have no control of the widget code..
Any help is apprceiated
TV Model - http://displaysolutions.samsung.com/digital-signage/detail/431/DM40E
Ta
Vik
What happens if you try to access the iFrame source URL (https://cdnres.willyweather.com.au/widget/loadView.html?id=43747) directly?
If that works, it probably has something to do with the TV browser not supporting or purposely preventing iFrame content.

Append string to UserAgent on Chrome?

I want to append a string to the UserAgent of a PC running Chrome, and not change the UserAgent altogether because I still want the browser to be recognized as the correct Chrome version. I could just use a UserAgent switcher and enter in the current UserAgent but then it wouldn't be correct after a few updates. The website contains some WebRTC elements so it's imperative that the correct version of Chrome is detected.
The reason is this, we have developed a website for an apartment complex of elderly people. They can use it at home, but the owner of the complex has also put two all-in-one PCs in the lobby for people without PCs to use.
Those PCs run Chrome in kiosk mode, and I need to be able to detect visits coming from those PCs. Outgoing links have to be opened in an iframe (since they can't open/close tabs) and I run some javascript that automatically logs people out after 5 min. But all that only has to run on those 2 specific PCs, I don't want people to get logged out at home.
I tried detecting it simply by checking the screen height like so:
if (screen.availHeight || screen.height-30) <= window.innerHeight) {
// code
}
But that breaks when people use Ctrl-+ to zoom in. The window.innerHeight will change and the if statement won't work. Any other methods of detecting a fullscreen website didn't work, or only detect if the browser supports fullscreen.
Is there a plugin/method of appending a string to the UserAgent so I can check for it using Javascript? Or any other way of detecting Chrome in kiosk mode? I don't want to add a query to the url, that's technically impossible for our website.

HTML5 Camera access not working in Microsoft Edge

I've used this code (reference to source code) where I try to show a stream of video for the user and allow him to take a snapshot, this is working fine on Chrome for example but does not work on Microsoft Edge at all and no errors are shown. Any idea why this is not working and maybe reference a different approach I should take?
I'm pretty sure it does not work on Safari either...
Even the Microsoft's Demo page is not working! here is a screenshot of the error I get:
And my device manager:
EDIT (3 Sep 15): I have turned on "Let apps use my Camera" in my Windows Settings and now this demo works well on all browsers but Safari. Anyone know what is the best approach to capturing an image from a webcam stream in Safari?
You need to open Privacy Settings. Enable Camera and Microphone for Edge, otherwise you will get a permission error.
I tried the Photo Capture using webcam demo on Edge and it is working quite fine. you can check the below screenshot.
You need to use navigator.mediaDevices.getUserMedia. Even though Chrome 45 has navigator.mediaDevices and a getUserMedia function which returns a Promise, it does not accept spec-style constraints.
Note: Make sure to turn on the Camera setting "Let apps use my
camera" and from the list of apps that can use your camera turn on Microsoft Edge as well.
for me #Michael Wanyoike hit it on the head. You have to enable camera permissions. The weird thing is that no prompt requesting permission appeared, simply a black screen. It could be that previously I had click deny but still not a smooth flow.

iOS 8 html input file control black screen when selected "Take Photo" option

Does anybody face problem of black screen when selected the option to "Take Photo" on iOS 8 with html input file control?
For example, if you try http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_fileupload_get
click on "choose file" on iOS 8 (iphone 6 device) select "Take Photo" option, the screen goes black.
Thanks
In case if anybody faces the same problem, enable safari to access camera under Settings>Privacy>Camera. Somehow on my device it is disabled, may be i must have disabled it at some point and forgot it.
Late to the game, but I was having a similar issue. iOS requires camera access to be over SSL to work properly, otherwise you'll just get a blacked out camera UI.
I agree with Giacomo that it is related to the app losing focus, i.e. going into the background. To restore operation, you have to close the app then re-launch. Once another app takes the foreground, the camera stops. At least this is true of PWA apps.
ios 13.4 resolves this.

How can I cast an HTML page with the Google Cast Chrome extension?

I'm building a simple web application that I want to be able to display on a TV screen using the Google Cast SDK, the Chrome browser and a Chromecast. I know with the Chromecast extension for Chrome Browser, I can cast a tab to a Chromecast device, which, from my laptop works perfectly. However, I want this exact same functionality, but available from iOS devices (iPads and iPhones) running the Chrome Browser.
It seems since Chrome v36 the Cast ability is baked into the iOS versions of Chrome. I have pulled in the Google Cast SDK per these instructions: https://developers.google.com/cast/docs/chrome_sender. I am able to get my iPad to connect to the Chromecast, but when I try to pass in a URL to a web page...
var mediaInfo = new chrome.cast.media.MediaInfo('http://google.com');
var request = new chrome.cast.media.LoadRequest(mediaInfo);
session.loadMedia(request, onMediaDiscovered.bind(this, 'loadMedia'), onMediaError);
I get an error...
invalid_parameter
I have found other, somewhat dated examples, saying I can build a custom Cast Receiver that holds an iFrame and renders the page in there, but I do not want to build a custom Cast Receiver.
Can I accomplish this with just a Cast Sender?
You always need a receiver on the chromecast; that is what gets loaded there. In general, you can either use a default/styled receiver or a custom one. The Default or Styled receivers can only handle media so you are left with the Custom option and having an iframe is the way to go.
Chrome on iOS doesn't support casting. There's a post from early 2016 saying this on the google product forums. (But my reputation is too low to post more than two links).
If it DID work, then all you would need to do is go to this site and choose the ChromeCast option and press Launch after typing in your website. This does work on Chrome on desktop.
The source for this sender/receiver is here: https://github.com/boombatower/chromecast-dashboard
I've used the boombatower.github.io receiver with my own code as sender in an iOS app. I'm also looking at whether an app extension would work, but I suspect not because of app extension limitations.