Shared publicly  - 
 
From the patches I see in 4.4.1, they'll be adding Android mirroring to Chromecast very soon.

Unfortunately that API is not available to anyone but Google and the OEM. Similar solutions to different hardware can't be built (Apple TV, etc). Kinda bullshit.
437
58
Sean Lynch's profile photoSebastian Haas's profile photoJesse Spangenberger's profile photoPaito Anderson's profile photo
69 comments
 
More like definite bullshit.
 
Very weird. This post was in my live stream for about 5 seconds, then it magically disappeared right in front of my eyes. I thought maybe you'd deleted it, but here it is on your profile.
 
You'd maybe be able to get it to work by writing a Chromecast emulator/bouncer on your Android, but if any DRM is used, that idea is bust.
 
Same happened to me.  I was midway through commenting and the post vanished, taking my comment with it too.  

Short form of that comment was: Yeah, absolutely bullshit. 
 
Serious question. What exactly is the issue with them not letting 3rd party applications use the API?
 
Playing touchy-feely with the OEM's, I'd imagine.

Of course, they'll butcher whatever they develop, as they always do.
 
Rather, they have to play nice with content gatekeepers, or else no movies or music in the Play Store. 
 
So... Google stole your idea and baked it into android... At least the chromecast might become useful again. Too bad they wouldn't just let your original app stand.
 
Let's hope they do it DRM-less WebRTC style as they do with TabCasting
 
+Sebastian Mauer I imagine that is how they implement, but any secure Surface will not be casted if that is the case.
Ryan R
+
2
3
4
3
 
Having been on the inside of this monster, I think it's probably both the OEMs and the content gatekeepers that need pleasing.

It is bullshit, but let's see any of you line up major content deals with the big studios/publishers. Go ahead. I'll wait here.

The way these deals get made -- how popular content winds up in Netflix or Google Play, etc. -- it's a series of concessions and handshakes. It's not really pleasant but it's how the world still works unfortunately.
 
+Ryan R The Android compositor allows you to mirror a display, and leave out any surfaces marked "secure"... it will not mirror any DRM'd surfaces.
http://developer.android.com/reference/android/view/SurfaceView.html#setSecure(boolean)

Ie, you'll see a black screen if you tried to mirror Netflix while only holding the CAPTURE_VIDEO_OUTPUT (vs CAPTURE_SECURE_VIDEO_OUTPUT). This API could have been exposed, and been DRM friendly, but it was not.

I've spent a lot of time in this code, and actually implemented my own variant of the Virtual Display API in 4.2 to get Airplay Mirroring working. My implementation was DRM friendly to boot. Suffice to say, I know what I'm talking about.
https://github.com/CyanogenMod/android_frameworks_base/commit/858d67d29f30a0256014d7a318b3586db10d0bb0

So,  present a legitimate reason why it wasn't made available. Go ahead. I'll wait here.
 
So, only Google and OEM can develop an app that can be mirror to Chromecast? What's the different from the current conditions? 

*sorry for the newbie questions 
 
+Koushik Dutta Do you know for certain that this specific API won't be available to developers? Nothing says that they won't revise the SDK before it comes out of preview ...
 
+Koushik Dutta I trust you to know what you're talking about. Content publishers, not so much. They have demonstrated that they will drag their feet on everything, and they don't wish to be confused with facts.
 
Just got my chromecast ystd. Can it be still rooted and flashed with modified ROM out of box (havent plug it yet)? Living in Russia we have just youtube to cast. netflix, hbo etc. not interesting beacause of language. when the SDK will be available, will it allow AllCast send local video files to chromecast? and by the way, can fling.jar still cast videos from computer?
 
I'm on 4.4.1 now and it has cast screen under display options :)
 
Chromecast is gonna be a killer little device :>
Ryan R
+
7
8
7
 
+Koushik Dutta "So,  present a legitimate reason why it wasn't made available. Go ahead. I'll wait here."

The content providers don't know who you are.

They don't understand what your app does.

You're not on the whitelist.

Unknown apps like yours that challenge their limited view of DRM, and how they think content licenses should work... these are Scary Things to them.

Imagine yourself in that meeting between lawyers from Hollywood and (non technical) executives at Google. Now try explaining the difference between CAPTURE_VIDEO_OUTPUT and CAPTURE_SECURE_VIDEO_OUTPUT. How do you think that meeting's gonna go?
 
+Sebastian Mauer CheapCast supports mirroring? You got the WebRTC bit working? I didn't think that was available in standard Android's webview. Thought you needed to use a newer version of webkit for those features (ChromeView or something).
 
+Ryan R Here's how I would explain it: "Android won't let you mirror record Hulu or Netflix or any protected content."
Ryan R
 
+Koushik Dutta Google didn't whitelist Hulu? Not sure I see the point you're trying to make.
Ryan R
 
+Koushik Dutta you edited your last comment after I had already replied to it... probably unintentional, but it makes for awkward conversation. ;)

If I understand correctly, you're asking for Google to whitelist your Android app because it respects existing DRM in Android?

[Puts Hollywood executive hat on]. Okay... but I heard you've also been working on tech that lets me stream any video from my Android device to my TV...
 
+Ryan R No, you misunderstand. The capture secure video should be available to "trusted" apps only. The insecure capture can be made available to anyone else. (This has nothing to do with the whitelist) So my statement still stands:

"Android won't let you record Hulu or Netflix or any protected content."
 
I think that may be the best plan for the moment. If it is introduced in 4.5, many applications won't be updated to prevent video recording and pirating. After a few months, they may open the API. Besides, Cyanogenmod or other ROMs should be able to use this tech.

I think their strategy mirrors that of the Chromecast; that is - get big players on board first.
 
May be they are just giving time for content providers to update their apps , so that their content won't be available to record. I think Google will make this public in time.

Right now it is just telling content providers," this is coming ;get your shit together. "
 
First thought, "Oh well the non-secure one will surely be... "

Hey, maybe they'll at least change the default chromecast app back to video_playback? haha
 
+Koushik Dutta It seems like Google keeps screwing up everything you've been trying to do lately. Do you harbor bad feelings against them?
 
Perfect spot to replace it with AllCast. Who cares about Chromecast anyway? US only and closed API. Any SmartTV can handle DLNA. Thanks for the idea Google, but you blew it.
 
I think you should take another look at Miracast. I know that you were frustrated with it, and so was I. It rarely worked at all, and when it did the video was full of artifacts and audio that stuttered every few seconds. Recent firmware updates to both the ScreenBeam and PTV3000 have made it more than just usable on my Nexus 5, Nexus 7 (2013), and even Tegra Note 7. I don't even care about the Chromecast any more.
 
+Stefan Tischler I care. It is $35, and a perfect gift for family members. I can turn my old TV into a smart TV, and make my smart TV much better.
 
+Martin Untch a Raspberry Pi costs about the same and can do much more. I didn't try yet, but I'm pretty sure you can stream to it using AllCast. Also, it can run a complete XBMC setup.
 
For me, that's great. For my parents and relatives though, I may as well not bother because it is not simple enough for them.
 
If you give them a ready formatted SD card it is ;)

I just think Chromecast could have been much better. Especially the "US-only" thing is really annoying...
 
+Koushik Dutta Perhaps they just don't feel its ready for primetime. They keep non-final apis private and always have. Look how long the calendar apis were private.
 
Who manufactures CC hardware?? Anyone know?
 
DRM ... that's why. It make OEM and content providers happy ... they have to or this will just be come blocked to the main-stream customer and be only to modders. It's sad to see this happening with such a device that could really change the way we watch content from our Android phones.
 
+Jesse Spangenberger  I suppose that could be the case, Google wants to keep the api private in order to give content providers a chance to update their code and set their service views to secure. shrug
 
It sounds like it's a DRM deal -- so you can't rip DRM movies/audio.
 
To everyone who keeps saying Google stole his app... are you serious or are you suffering from brain damage? 
 
There's an awful lot of butt-kissing going on in this thread. "Google stole your idea and baked it into android" Really? Because CyanogenMod totally invented screen sharing, right? /s
 
And here's a case where it's extremely unfair to be a small developer. You've been working on getting screen mirroring to chromecast and just waiting for the SDK to go live to release it. Before you even got a chance, Google takes it away.
 
+Jeff Simpson Implying Google hasn't been working on it all along, like only "small developers" (and come on, Cyanogenmod developers are anything BUT small) come up with ideas. 
 
No, I'm not saying it's a unique idea, just saying that this SDK delay isn't doing anyone any favors. The big names (Netflix, Hulu, Pandora, HBO) get special access to get their apps out first, while normal developers just have to keep waiting to see what markets don't get filled before they get a chance.

Had the SDK been open to developers like it was advertised to be, something like a screencast could have already sold many apps and built a name.
 
Why do you think this has anything to do with Chromecast vs. just allowing apps to control mirroring via the built-in Miracast?
 
Mirroring is a really lame experience. It ties up your phone and TV, draining your battery. The native, direct streaming approach of Chromecast is FAR superior. If Google opens up mirroring systemwide, I'm worried that devs will lean on that and not develop the superior casting experience.
 
Kevin - what about gaming? Web browsing? Any other app that isn't a streaming/cloud hosted media experience?

And as far as "Google open up mirroring systemwide", um there already is system-wide mirroring, it is just that an App can't choose to enable it. The user will have to go to settings and enable.
 
If a dev did pure mirroring for a game, that would be a completely awful experience. The ideal would be just a controller on the phone end and the actual game play on the screen. I guess I can see the use of direct mirrored web browsing, to share a page with your friends, but I just don't think it's that compelling.

I am specifically talking about Chromecast. Miracast devices are available but they just aren't that popular because they are far more expensive than Chromecast and the experience is just not good. I want Google to keep doing what they are doing with Chromecast to encourage devs to build good experiences.
 
Common guys... wait until it is officaly announced...
 
I am not sure what to think of things, +Koushik Dutta, seriously. I mean, did you really expect Google to let the CM installer app live on Play store, and do you really expect Google to take your code, while they are working on that functionality on their own.

Did you? Or is this just PR. One or both cases?

Anyway, while this question sounds critically, wanted to say that I totally love your work and wish commercial success to you.
 
When you release Mirror apk which work in Note 3 Kitkat for Apple tv mirroring .. all are waiting for this unique software

pl release ..
Add a comment...