Tip:
Highlight text to annotate it
X
JAREK WILKIEWICZ: Hello, and welcome to
YouTube Developers Live.
We have a very exciting show for you today.
In fact, it's a little more exciting
than what we expected.
We are having a special guest joining us from Helsinki.
His name is Jussi Laakkonen.
And he's the founder and CEO of Applifier.
How are you doing, Jussi?
JUSSI LAAKKONEN: I'm doing very well.
Thanks for having me on the show.
JAREK WILKIEWICZ: Thank you for staying late.
I know it's late here now in Helsinki.
But we are very honored to have you on our show because I
understand that the Nordic countries is where the action
is in mobile nowadays.
Is that true?
JUSSI LAAKKONEN: Well, there's definitely a lot of excitement
in the area.
You have companies like Rovio, Supercell, King, and a number
of others that are creating great games in the region and
certainly kind of a break out, if you will.
Think of a region of just 15 million or so people.
And basically, all the top grossing spots on iOS are
being covered by Nordic games.
So it's a great time to be here working on games.
JAREK WILKIEWICZ: Great.
So it's a great segue to my next question.
How did you come up with the idea behind
Everyplay and Applifier?
JUSSI LAAKKONEN: Well Jarek, I asked myself, how do I find
games for our mobile device?
And, of course, I can go to the app store.
But it's pretty crowded.
And it's kind of created by somebody else.
And when I really thought about it, the answer was
pretty obvious that the best games I ever found came
through a friend.
I ask a friend.
A friend tells me.
Or even better, a friend shows me.
This is how I discovered a game called Flight Control
like three years ago.
And I'm still playing that game after three years.
JAREK WILKIEWICZ: Oh, great.
JUSSI LAAKKONEN: But the challenge with having a friend
pick up an iPhone and say like, hey Jussi, you really
got to play this game, is that I actually need to meet you in
order to see that.
So Everyplay is really about taking that moment, oh gee,
this game rocks.
I want to show everyone.
Or I'm doing so well in this game.
Look at me.
And taking that moment and making it shareable
by posting it online.
So that's what Everyplay really is.
It's about digitizing word of mouth and making it shareable.
JAREK WILKIEWICZ: So traditionally, this type of
sharing use case has already been done in console
games and PC games.
We have a lot of that type of content on YouTube.
It's extremely popular.
So how is mobile different?
JUSSI LAAKKONEN: Mobile is different in a
good number of ways.
First of all, these devices are considerably lower power
than your average high-end PC gaming rig.
On a PC, you have quite a lot of horsepower to spare for
video recording.
Whereas on a mobile device, it's actually a pretty hard
engineering problem to make it go fast.
Also what's very different from PC is that on a PC you
can actually download a separate software, like Fraps,
to record another software.
Whereas on an iOS and Android, the
applications are sandboxed.
What this means is that another application cannot
access the contents of another application.
So you actually cannot have a general purpose
screen casting tool.
Instead, what we do is we provide an SDK that's easily
integrated into the games and provides a seamless instant
replay and sharing solution.
JAREK WILKIEWICZ: I see.
So is it fair to say that for most of the PC titles today,
the videos that we see on YouTube are basically captured
using third party software, edited locally, and then
uploaded to YouTube?
Whereas with mobile, the way forward is to really
incorporate this functionality directly into the game?
JUSSI LAAKKONEN: That's absolutely true.
And it's a function of the limitations or say
restrictions and protections of the iOS and Android
operating systems.
And also I think what's interesting, as you mentioned,
it's very popular.
Let's Play videos are hugely popular.
And walkthroughs as well as reviews by user are extremely
influential on YouTube.
And what that really speaks to is that even though making of
these videos is not trivial, you need to have the software.
You need to record and edit separately and then upload.
There's a lot of people doing it.
And what we are aiming to do for mobile is to simplify this
by making it a completely transparent part of the game.
So you play the game.
And you get a replay.
You don't think about that, oh, I need a tool for this.
Or I want to do a replay.
Instead, you just get it.
And you can easily share it or comment on it or
put it out to YouTube.
And I think that's really going to unlock a number of
creators that would not have done it on PC because the
tools were too complicated.
JAREK WILKIEWICZ: Great.
So the discover use case and distribution use case is
definitely very important.
And I can totally see how this is going to help mobile game
developers.
So maybe we should switch gears now and have you show us
a little bit more about your product.
JUSSI LAAKKONEN: Definitely.
So let's jump into a screen share from my iPhone 5.
And hopefully this comes through.
So I'm going to show you a demo of a very
high-end Unity 4 game.
And I apologize in advance that this is going to be a
little choppy over hangout.
This actually runs at 30 frames per
second on my device.
So right now we are not yet recording this game.
And as I tap this button, we are now recording this game.
And there's actually zero difference on the frame rate
on this game.
And we cannot really see it on this live hangout because of
the way hangouts work.
But I encourage you to go to everyplay.com
to see it for yourself.
So I'm going to stop the recording now and open up our
editor user interface.
So the editor here shows the replay that was just captured.
And we can even comment on that by adding a forward
facing camera that actually shows me.
So this is [INAUDIBLE].
I'm in a Hangout that shows me from my iPhone
AirPlay to the Hangout.
So this is ability for us to add a video commentary by the
player himself into the game he's playing.
It's actually very exciting because that takes the video
of the game play into a personal story.
So this here was Unity.
We also work with a number of game engines.
You can use Everyplay with Cocoas a custom engine.
And most recently we've actually added support for
even Unreal Engine.
And unfortunately, I don't have the demo for an Unreal
Engine game on my phone.
But instead, I want to show you a very popular game right
now called Nimble Quest.
And Nimble Quest is made by a company called NimbleBit who
are best known for games like Tiny Towers and Pocket Planes.
They are a small studio out of San Diego where they've been
extremely successful.
And this is their latest game that was featured by Apple and
is out today actually on Android.
So you should get it from the Google Play Store.
So this game plays a little like the original snake game.
And this may be a little small on the screen.
But what happens here is that I'm controlling this snake
made out of my heroes.
And I'm trying to kill the monsters.
And as I move around, this game is actually capturing the
replay as it happens.
So there is no action the user needs to take.
Instead, the capture is done automatically.
And now, just for the purpose of this demo, I'm going to
kill my snake and die here miserably.
And you can see on the top left-hand corner, there's a
button called Share Replay.
And this is the replay of the game play we just created.
So it was captured in the background while the game
played without performance impact.
And now as the user, I can easily share this with my
friends and other game players through Everyplay.
So we're going to do that now live on air.
So I'm tapping on Share Replay.
And this opens up Everyplay.
And this is the Share screen.
So we're going to give this a title.
Let's say YouTube Developer Live On Air.
And let's use a hashtag to organize this contact.
We'll call it Jarek because this is a fan to
be there for Jarek.
And we're going to share it to Facebook, Twitter, YouTube.
I'm not going to send this in an email because you all know
how email sharing works.
But we'll see it being shared to all distributed networks.
So I'm going to tap on Share.
And what happens is that the upload starts in the
background.
And now I can share it to Facebook.
And I'm going to share this publicly on Facebook.
And we can post it.
And we're going to send it out as a tweet, going live
on air right now.
And because I was already connected to YouTube, this
actually has been uploaded to YouTube also.
So right now we're looking at Everyplay's social interface.
So this is me on Everyplay.
We use a nickname system with the follower paradigm.
So here are people I'm following who follow me.
And here's my previous actions.
So I'm going to go out and demonstrate a little bit about
Everyplay's social functions as the video is being encoded
on our servers.
So this here is my home feed, people I
follow, and their actions.
So I can see the replays from cool games
that they're playing.
So let's find out something interesting here.
Let's see.
OK, here's a BMX game.
So let's check out this game.
So we're currently streaming it down from our servers and
then playing back on my iPhone and then playing back to you
over the hangout.
So here's a BMX game.
This was captured by another player, shared on Everyplay,
potentially Facebook, Twitter, and YouTube.
And we can see the game play right here on Everyplay.
And we provide a number of social functions like ability
to comment.
And so that's my comment.
I misspelled it nicely.
You can obviously Like videos.
You can re-share videos.
So if you find something cool, I could re-share it to YouTube
under my own account.
And obviously, because everybody is geared towards
discovering content, we also provide an app store but on a
straight beam social interface.
And you can just install the game that you've discovered
straight through Everyplay.
And also for game developers who provide an ability to do
community management through Everyplay, so this is the
games community management page.
All the videos that have ever been shared from this game are
visible here.
And the community manager of this game could also re-share
these videos to YouTube or Facebook or
Twitter, for that matter.
So Everyplay provides basically a fully flexed
social infrastructure around mobile gaming and is geared
towards connecting the fans of the games together.
So why don't we now see if my video has completed encoding.
So here's the video that we just uploaded.
Let's see if it's been encoded.
There we go.
So it's been encoded.
And we can see it's YouTube Developers Live
On Air hashtag Jarek.
And we are now streaming it down from our servers to play
it back on this device.
And here it goes.
So this is the capture we just did.
We uploaded while we talked.
And it's now live, available for anybody to check out why
this game is cool.
And as you may recall, we shared it to Facebook,
Twitter, and YouTube.
So let's first open up Facebook.
And this is my personal Facebook account.
So you can see all of my gory details.
And as you can see here, we have YouTube Developers Live
On Air featuring Jarek.
And we could watch the video.
See?
It's ready to go.
And you can click to download from the app store.
And let's see if I have Twitter open.
I don't yet have Twitter open.
So let's open up Twitter.
And I'm going to go to my tweets.
As you can see, YouTube Developers Live On Air.
We support also Twitter cards.
So you can play directly from Twitter to watch this reply.
And of course, most importantly, we
also support YouTube.
So I'm going to go into--
these are my uploads.
Now let's see if it made it to YouTube.
Yes, it made it to YouTube.
But it says that this video is being processed.
So that's on YouTube.
The videos already been uploaded.
But we can watch an earlier upload I did from Nimble Quest
as I was testing this about 10 minutes ago.
So here's the replay.
So this is a very seamless system that enables the
players to share their best replays, connect socially on
services like YouTube, Facebook, and
Twitter within Everyplay.
And that's it.
JAREK WILKIEWICZ: Cool.
JUSSI LAAKKONEN: Hope you enjoyed the demo.
JAREK WILKIEWICZ: Yeah, this was great.
Thank you for doing this.
So let's talk a little bit more about how this system is
implemented.
So can you tell us a little more about the
technology behind it?
JUSSI LAAKKONEN: So certainly there are a couple of
components with this.
One is the SDK that goes inside the game.
And that's a native iOS code that we provide in the various
plug-ins for Unity, Cocoas, Unreal Engine 3, and custom
game engines.
We are also hard at work with our Android version.
And we hope to give you news about that in the not too
distant future.
JAREK WILKIEWICZ: That sounds great.
JUSSI LAAKKONEN: That actually captures the game play.
And then we have our server side which runs on a Note GS
Mobile DB on the various service and CDNs.
And basically, that's where the videos are uploaded to.
And the whole social interface you saw is all HTML5.
So there is no separate Everyplay app right now.
It's all HTML5, all the social stuff we looked at.
And we provide that on desktop browsers, mobile browsers as
we looked at within Facebook within Twitter.
JAREK WILKIEWICZ: Oh, great.
JUSSI LAAKKONEN: And then we provide integration to
services like YouTube where we upload the video.
It's always uploaded to the user's own account on YouTube.
So we want the users to be stars.
And so they can have them on their own channels.
JAREK WILKIEWICZ: Yeah.
Yeah, this is definitely the approach that we recommend.
We also find that these videos are more likely to go viral
because users have an incentive to actually share
their achievements.
So this fits the use case quite well.
So how do you use the YouTube API?
JUSSI LAAKKONEN: Excuse me.
You were breaking up a little.
JAREK WILKIEWICZ: My question was, how do you use the
YouTube API?
Can you tell a bit more about how you use it?
JUSSI LAAKKONEN: So we have a server-to-server
connection to YouTube.
So we use that for--
first, the user authenticates himself with OAuth2 to
authenticate that he has a YouTube account
and ability to publish.
And we store that access keys after that.
And as we have the video on the server, we use our
server-to-server integration to YouTube service to upload
the video after it's been encoded on our service.
JAREK WILKIEWICZ: Got it.
So the token is obtained on the client.
So this is something that the OAuth flow is executed on the
mobile device.
And then the refresh token is sent to the server side.
And then the video is uploaded on behalf of the user using an
access token that is obtained from the refresh token that
you have actually obtained on the client.
Is that correct?
JUSSI LAAKKONEN: Correct.
That's correct.
JAREK WILKIEWICZ: OK.
JUSSI LAAKKONEN: And we don't directly uploaded from a
client to YouTube because we also do
moderation on these videos.
And we have certain safeguards in place to make sure that the
content is PG-13, if you will.
And that's why we do the re-encoding on the server side
and the security checks on the server side and then upload
from the service.
This also means that the user, if he is sharing to multiple
services, he only needs to upload once.
And as we provide a services-like background
uploading, then the video upload will complete even if
the user exits the application.
JAREK WILKIEWICZ: Great.
And then are you using YouTube API v2 or v3 for the upload?
JUSSI LAAKKONEN: We're currently using version two.
But we're very excited by the opportunity that version 3 is
opening up.
So we're very much looking forward to migrating to that.
And we have big plans to leverage the data API on
YouTube because I think there are great things you can build
with that, play lists, do a feature that kind of creates
the content of your channel.
And we're really on the early stages of that.
We first wanted to enable the sharing for players.
And now the next step is kind of creating that content into
interesting playlists, organizing that by games, and
enabling games to find their audiences.
So we're excited about the new version three API.
JAREK WILKIEWICZ: Great.
And I think the YouTube audience will appreciate easy
way to find this content, especially if you're talking
about [? queue ration ?]
and play list management.
I think that's all very important for game developers.
Because once the content is out there, how do you help
users find it?
And definitely the [? queue ration ?]
is the right way to approach it.
JUSSI LAAKKONEN: We also leverage metadata so our
developers can specify a number of arrivals, some
public, some private, that's used to navigate these videos.
And we also are publishing I think most of that, if not
all, to YouTube.
And the goal is to really enable rich search abilities
within YouTube.
JAREK WILKIEWICZ: Great.
So one question that I typically like to ask is,
while you were developing your product or the API
integration, was there anything that surprised you,
like things that you really didn't anticipate about your
users or about the API?
Any lessons learned that you would be willing
to share with us?
JUSSI LAAKKONEN: I think what we did right is that we
actually got in touch with the YouTube team pretty early on.
And a few of the [INAUDIBLE]
were actually covered in our first introductory course,
like the authentication flow and the best
practices for that.
If we hadn't known about those, it probably would have
been something that we'd been scratching our head around a
little bit.
But because we took the proactive approach and we got
good support from the YouTube Developers team, I would say
that we really didn't run into anything that was kind of an,
oh, that's really weird.
But it's more like, hmm, OK, I'll read the documentation,
which is actually what Google really shines on in my opinion
is the documentation is exemplary.
So we had actually a very easy time
implementing the YouTube API.
JAREK WILKIEWICZ: Good to hear that.
I will definitely pass this on to our colleague Andy who
works on our documentation, gets a lot of praise for it,
and that he's doing an excellent job.
JUSSI LAAKKONEN: I wish ours would be as good.
JAREK WILKIEWICZ: So any API features that you wish we had
and they're not there yet?
Like, what are the next things that you think
we should be pursuing?
JUSSI LAAKKONEN: Well, I think when you look at a lot of the
gaming videos, there's quite a lot of annotations going on.
And that would be certainly something eventually to be
able to allow players or programs to annotate videos.
So that would be certainly something that we would be
looking forward to do because I think that doing it manually
for videos, this requires more manpower than a
small startup has.
That is definitely, I would say, on top of my wish list.
And there are almost always improvements that
you can look for.
But that would be kind of a thing I'm looking for.
And I think I'm very excited to also see [INAUDIBLE]
live-streaming APIs coming out and all the possibilities that
that opens up to content creators.
JAREK WILKIEWICZ: Great.
So let's switch to our questions.
I see we have a question from a viewer live on
YouTube about Android.
And you touched about that earlier in the show.
And the question is, when is Everyplay going to be
available in Android?
I'm sure you get that a lot.
So anything to add to what you've previously stated?
JUSSI LAAKKONEN: So we met with a lot of developers.
I would say close to 1,000 developers at GDC last week.
And we had nearly 10 people in staff and
did a lot of evidence.
And if there were one thing that was above anything else
that was requested was Android.
The good news is that we are already at a working prototype
on Android.
So things are running.
It's not [INAUDIBLE] hey, we hope this will work.
We know it works.
And I think with Android the key thing we're working on
right now is device recommendation.
And there's quite a few very popular GPUs on Android that
you need to support in order to have a viable solution.
So our goal right now is to have a broad enough support
that we can launch a beta version of Android in not too
distant future.
Unfortunately, I cannot give a time frame because every GPU
is a little bit of a challenge of its own.
And getting to high enough penetration on the kind of
devices that you would expect people to be playing on, it's
something that we're still working on.
So it's definitely I would say our number one priority.
We are already on it.
The prototype is running.
Things are looking good.
And now we can just conquer the fragmentation.
JAREK WILKIEWICZ: Cool.
Thank you for this detailed answer.
And I think we're all anxiously
awaiting Android support.
I'm an Android user.
So definitely would like to try it out.
So another question is for me.
Is YouTube Developer Relations hiring?
And the answer is, yes, we are hiring.
Google Developer Relations as well as YouTube Developer
Relations is hiring.
To learn more go to developers.google.com/jobs.
And you can learn all about it right there.
Well, thank you very much, Jussi.
I know it's getting late right now in Helsinki.
Thank you very much for joining our show.
And then looking forward to see the new features coming
out of Applifier and sharing my game play with the games
that you have integrated with.
JUSSI LAAKKONEN: And you're going to be sharing on
YouTube, obviously.
JAREK WILKIEWICZ: Absolutely.
JUSSI LAAKKONEN: And that's going to be awesome.
JAREK WILKIEWICZ: All right.
JUSSI LAAKKONEN: Thanks for having me.
JAREK WILKIEWICZ: And thank you for watching.
See you next week.
JUSSI LAAKKONEN: Bye.
JAREK WILKIEWICZ: Bye.