Blackmagic device and WebRTC are not compatible - google-chrome

I can not use an external camera connected via BlackMagic in WebRTC.
I tried it in my source code, web versions of Google Hangout, appear.in (whereby.com), etc in Chrome, Firefox, Safari. Anything worked.
Any idea how I can make it work at least for one browser?

You can't.
Unfortunately, most Blackmagic hardware has proprietary APIs and cannot be used as a standard device. This is by design. They only want to support software that fully utilizes the capabilities of their hardware.
The only product I know of that they make that isn't proprietary in nature is the "Web Presenter" which is standard UVC, allowing you to use standard OS-provided drivers and capabilities.

Related

Are Google Chrome and Chromium equivalent for web design/development?

This is probably a silly question, however: from a Web Design/Development point of view (I mean support for web standards and web technologies), could Google Chrome and Chromium be considered equivalent?
I know that they are essentially the same browser, the former being the branded version of the latter, but they also have some functional differences, and Google Chrome features some additions not present in the base Chromium browser (detailed on the Chromium page on Wikipedia).
They use the Blink engine, which is in turn also used by other Chromium-based browsers like MS Edge and Opera; and all these browsers have an uneven support for many different web technologies, as detailed on https://caniuse.com.
I'm working on a Linux machine, and my distro ships Chromium by default, providing it from its standard repo; for the sake of simplicity and keeping things clean, I would prefer to avoid adding another external repo and install Chrome just for this task, if I can rely Chromium to behave exactly the same and not have any compatibility issue.
Like I said, this question is probably silly, but given the differences between other Chromium-based browsers, maybe this doubt of mine could be justified.
EDIT: Please note that I'm not interested in the differences between Google Chrome and Chromium from an user point of view or in details of their history and so on; I only wish to know if from a website development point of view, they are fully compatible or if they support the same set of features. In other words, if I test a site from Chromium, can I be sure that it will work also in Google Chrome? Do they support the same exact set of CSS, JS (and other web-related technologies) features?
Chromium is an open-source browser project that forms the basis for the Chrome web browser. It's maintained by the Chromium Project, while Chrome is maintained by Google. Aside from code-opennes, the main difference (for your concerning question) between the two browsers is that Google adds a number of proprietary features to Chrome like automatic updates and support for additional video formats. Also added is AAC, H.264, and MP3 support. Giving you acess to a wider variety of media content, like sites using HTML5 to stream H.264 videos. Both browsers include Opus, Theora, Vorbis, VP8, VP9, and WAV codecs. Chrome also includes a sandboxed Adobe Pepper API (PPAPI) Flash plug-in that updates along with.
From a programmatic side, both support Google DevTools protocol with all of the flexibility and possibilities this brings, like browser automation using the popular puppeteer Node.js runtime, allowing you to run automated tests either in head or headless environments. Both browsers use the Blink rendering engine and the V8 JavaScript engine, so both will give you same support for CSS, HTML and DOM parsing/rendering, and same JavaScript compatibility, functionality and performance. So the real difference is if you're developing media-content centric web apps, in that case you will benefit more from Chrome since it includes all of the above mentioned extra plugins and supported formats, all of this makes the web more accessible to it and provides a wider range of things you could do.

more insights on how PWA works

might be very basic question but just wanted to clear out my doubt, since I'm seeing PWA is like alternative for native application.
What if browser fail to read/understand manifest file?
what if user is having other/older browser? (most of the time I see e.g of chrome)
after installation what are the browser dependencies for PWA?
Please guide me with the above.
Thanks
One of the more important concepts in a PWA is that it is built following the principle of progressive enhancement, this means that the website would function ordinarily on older browsers (including Safari) and then gain PWA abilities if the user's browser supports them.
Therefore in answer to your three questions:
Website would function as normal without the option to "Add to HomeScreen"
Same.
The PWA runs using the browser, therefore any functionality supported by the browser will be included in your PWA.

Casting without dongle and multi device "screen sharing"

Since the Chromecast dongle is using a lightweight version of chrome and able to display (cast;-) content from the cloud, would it not make sense that the fuller version of chrome (on windows, Android, and other platforms) would also be able to be a display device?
In other words, it would allow to cast from a smart phone to a tablet, laptop, or anything that runs Chrome. Simply have these devices added to the list of castable mediums...
Additionally, it looks like a simple and great way to make the technology also support multiple screen sharing...
I suspect you are confusing chrome the web browser (https://en.wikipedia.org/wiki/Google_Chrome) with chrome the operating system (http://en.wikipedia.org/wiki/Chrome_OS).
Chromecast as currently available is only good for accepting comands from compatible software (chrome the browser, the youtube app on android or ios etc) at which point it then streams the requested data from the internet, not from your phone/tablet/computer.
Your idea is not supported, which is stunning as Android has had built in support for screen mirroring via miracast since v4.2.
There's also no mention of direct content streaming, for instance via DLNA, an open protocol designed for EXACTLY THAT.
In fact, a better approach here would have been to make the chromecast dongle a DLNA device and then implement support for it on the google play music and youtube ends.
https://developers.google.com/cast/devprev - don't notice that ability off-hand... it mentions having to email mac addresses and websites and things to 'whitelist' for development, if you could just use your browser I wouldn't guess the dev proccess would be so convoluted.

Why there are so few browser extensions developed by npapi?

I want to develop extensions for some main browsers like chrome and firefox. Extensions written using npapi can work in different browsers, however, there are very few browser extensions developed with npapi. Can you tell me the reasons? Thank you.
Your question confuses extensions and plugins; they are very different, and have completely different goals. You cannot develop an extension using NPAPI, only a plugin. You cannot write a single extension that works across browsers.
If you are asking why very few extensions include plugins, it's because plugins are much harder to write than extensions, are platform-specific, are not necessary for the vast majority of problems that extensions are trying to solve, are much more dangerous to users (since they have access to run arbitrary code on the machine), and aren't even allowed in extensions in some browsers (e.g., Safari).
If you didn't mean extensions at all, and are asking why there are few stand-alone NPAPI plugins, most of the list above still applies.

Are there any web standards for voice over IP?

Web browser plug-ins such as Flash already provide VoIP functionality in a web browser, but is it possible to have browser VoIP without any plug-ins?
Ericsson Labs has posted information using the device element to allow for microphone input. This, in addition with WebSockets could be used to implement VoIP. However, the device element is not implemented in any web browser yet.
No there isn't but the device element will likely be the way in the future, as you mentioned. I don't think it will take too long for browsers to look into it however. There are also the WAC APIs, but they are only on mobile, and not shipping quite yet.
Update: There is now a standard in development called WebRTC. Drafts of this spec are supported by Chrome and Firefox. Microsoft have made an alternative proposal called CU-RTC-Web