Profile cover photo
Profile photo
Muaz Khan
WebRTC/Web Developer
WebRTC/Web Developer

Muaz's posts

Post has shared content
Getting started with WebRTC for Android and iOS – two brilliant articles from Thomas Bruun and Dag-Inge Aas at :

Post has shared content
Awesome & Useful!
As you may already know, Content Settings allow you to customize Chrome's behavior on a per-site basis instead of globally. Good news is that the chrome.contentSettings Extension API features now more content settings in Dev Channel such as geolocation, fullscreen, mouse cursor, microphone, camera, unsandboxed plug-in access and automatic downloads.

Read the developer documentation¹ to learn how to retrieves fullscreen user setting or always allow camera access to specific websites.



Post has shared content
"Collaborative" Canvas Designer i.e. Canvas-Drawing tool added.

"Collaborative" Canvas Designer allows you draw bezier/quadratic curves, rectangles, circles and lines. You can also set strokes, back/forth colors and much more.

The speciality of this drawing-tool is that, it generates Canvas2D code for you; so simply draw and get the code and use it in your HTML5/Canvas2D applications!

Also, you can collaborate your drawing with up to 15 users; and everything is synced among all users. So, if you draw a line and your friend-A draws quadratic curve and friend-B draws rectangle then everything will be synced among all users!

Source code:

Gif demonstration:

Post has shared content
The Chrome WebRTC team has gotten new team members over the summer. And we are quite excited about it. But... we need more to deliver everything we have planned.

If you have an interest in RTC, signal processing, web or mobile and or  testing... and want to be part of a team that is defining the future of how people will communicate, please apply using these links!


Post has shared content
Just added getScreenId.js: A library, allows you use single screen-capturing chrome extension for/within all domains!


Simply use getScreenId.js and enjoy screen capturing from any domain. You don't need to deploy chrome extension yourself. You can refer your users to install this chrome extension ( instead. Also, getScreenId.js auto-fallbacks to command-line based screen capturing if chrome extension isn't installed or disabled. getScreenId.js throws clear exceptions which is helpful for end-user experiences.

<script src="//"></script>

getScreenId(function (error, sourceId, screen_constraints) {
---- // error    == null || 'permission-denied' || 'not-installed' || 'installed-disabled' || 'not-chrome'
--  // sourceId == null || 'string'

-- navigator.webkitGetUserMedia(screen_constraints, onSuccess, onFailure);

Post has shared content
I'll be using it :)
Object.observe() is now in Chrome stable! Observe objects & be notified of changes with ease

Post has shared content
Chrome's content-script's limitation is bypassed using iframes :) This hack works; however screen capturing limitation still applies e.g. HTTPs domain; though you can use a command-line flag to support screen capturing over HTTP (--allow-http-screen-capture).
A major update has been happened in "Pluginfree Screen Sharing" demo!

You can use same/single Google AppStore screen capturing extension within all your domains. You don't need to deploy it yourself :)

Simply copy HTML file and open in any domain; and you'll see that desktop-capturing extension still works  :)

Actually a trick has been used to make it work; an iframe has been loaded in background to get sourceId of the screen and that's it :)

Here is the "single" chrome extension:

Post has shared content
Amazing VP9 Youtube numbers presented yesterday. 60% of Youtube videos played in Chrome use VP9. Buffer times down, HD playbacks up across the board. Overall bandwidth and storage space required  down.

That number of playbacks is immensely huge for a codec that is only 1 year old and in the near future, we will bring it to WebRTC. 

Open innovation in the codec space is important. It allows you to move fast and bring users benefits very quickly.

Thank you to the WebM team and to +Renganathan Ramamoorthy for presenting these amazing numbers. #VP9    #openinnovation  

Post has attachment
navigator.getMediaDevices has been landed in chrome:canary, last week.

Obviously I'll prefer checking "kind:audiooutput" values so that I can prefer/suggest/use headphones for audio-output instead of speakers!

Input Devices:

audioinput Default
audioinput Microphone (ManyCam Virtual Microphone)
audioinput Microphone (Conexant SmartAudio HD)

Output Devices:
audiooutput Default
audiooutput Speakers (Conexant SmartAudio HD)

=> audioinput || audiooutput || videoinput || videooutput


Older implementation:

Post has shared content
Dudiptsar Lake or Dudipat Lake is a lake encircled by snow clad peaks in Lulusar-Dudipatsar National Park. The lake lies in the extreme north of the Kaghan Valley, in the Mansehra District, Khyber Pakhtunkhwa province, in northern Pakistan.

#Pakistan   #XperiencePakistan   #naturalbeauty  
Wait while more posts are being loaded