February 13, 2011

Lessons Learned with StageVideo

Last week, along with the release of Flash Player 10.2, Brightcove released a page showing off the Brightcove player using StageVideo.

Here's the lessons I learned from working with StageVideo:
  • Getting started with StageVideo is fairly simple. The article on getting started spells things out well, and while the StageVideo object is quite different from the regular Video object, it's not hard at all to use.
  • Things can get tricky when using StageVideo with a complicated player given the fact that StageVideo sits below all objects on the display list. If you had your Video object added on top of a complicated display, you'll need rework this.
  • You can use StageVideo in a player that doesn't require Flash Player 10.2 Try loading the Brightcove player page in a browser using an older version of the Flash Player to see this- it can even be loaded with Flash Player 9. This isn't done too easily but can be managed with loading the StageVideo code in its own SWF as needed.
  • The StageVideo numbers are impressive, as shown in the link above. I heard more than one person surprised at how much it knocked down the processing power needed on their machine.
Posted by Brian at 9:56 PM

Come Work at Brightcove

It's incredibly exciting to work on a video player that can be seen on websites I visit every day. Want to do the same? We have positions open on the player team and all over the company. There's more than 25 job openings in a lot of areas.

I'm more than happy to answer questions- email me at bdeitte at brightcove dot com for anything you'd like to know.

I wrote another "come work at Brightcove" post nearly four years ago. How time flies... most of that post is no longer relevant, but the view is the same.

Posted by Brian at 8:40 PM

October 31, 2010

Speaking at RIA Unleashed

I'm excited to say that I'll be speaking at RIA Unleashed in two weeks in Boston. The talk will be about the future of video players from the perspective of someone working on them at Brightcove.

Tickets are still available for the two-day conference that has a lot of exceptional speakers from the Flash community. It also includes a night of geeking out at the MIT museum.

And a welcome back to any blog readers! I've had one month absences from this blog of five years, but this is my first six month absence. I don't expect to keep up very well in the short term, but the blog ain't dead yet. You can also hear from me on Twitter or at brian at deitte dot com.

Posted by Brian at 7:52 PM

April 26, 2010

Why VAST Is Important

This is the second in a series of articles on video advertising. I'll be writing about what VAST is, why this standard is so important, and what's happening with VAST 2.

VAST is the standardized way to deliver an ad response to a video player. This is done with XML which contains information about the type of ad, where the ad creative (also known as the ad video file or other asset) is located, events to fire when certain things happen, and much more. The specification explains in detail what all can be done.

Having this standard ad response allows for ad servers to work very differently. Instead of spending a lot of time worrying about the differences between different video players and the types and formats of responses they are expecting, the ad server can ideally return the same ad XML to all places. More importantly, ad servers often talk to each other, grabbing ads from different places as needed and requested. This is the real power of VAST, which is that it allows 3rd-party ad serving to happen easily, allowing ad servers to talk to each other. This makes things like the real-time bartering of video ads possible.

I'm personally excited by VAST because I've seen the changes that a standard can bring. About ten years ago, I helped implement the J2EE specification in JRun at Allaire. J2EE, now referred to as Java EE, consolidated a lot of different ideas going on in the Java world at the time and allowed people to choose the application server that was the best for them. I see similar parallels in VAST and VPAID (another important standard which I'll talk about in a future article). The consolidation of ideas can be seen by looking at the Brightcove ad XML formats which can now all be described in VAST.

My experience with standards gives me one thing to worry about in this time period, when VAST is still being adopted, which is this: standards must be completely implemented and widely used for them to be successful. J2EE solved this with a Compatibility Test Suite and a market that insisted on products that were J2EE. There's different ways to get to completely implemented and widely used standards, and I hope in short time we will see VAST become this type of standard.

VAST was created by the Interactive Advertising Bureau (the IAB). The IAB put together this specification by talking with a lot of ad server companies, video platforms, ad agencies, and other people interested in getting a standard format. Brightcove was one of the companies who helped with this specification, and we used our knowledge from the Brightcove ad XML that I previously mentioned to suggest changes to the specification. The VAST specification, XSD and some samples can all be found on the IAB website.

You'll notice on the IAB website that the current version is 2. VAST 1 had some support in the industry, but VAST 2 has completely overtaken it. Many ad servers, like DoubleClick's platform have announced supported for VAST 2. And a growing number of video players, including Brightcove's player, allow its use. Besides the wider support, VAST 2 also has a lot more of the elements and attributes that are needed for ad responses. There are a numbers of limitations in the VAST 1 specification, which does not allow ad creatives in certain places, misses some events that people wanted to know about, and has elements that need to be clarified. If you'd like to read more, Eyeblaster's blog has an excellent article on the advantages of VAST 2.

While VAST 2 is now recommended, Brightcove implements both VAST 1 and VAST 2 specifications. We are also continuously adding new features to the player to allow for more of the VAST 2 elements to be used.

Posted by Brian at 7:28 AM

April 22, 2010

The Life of an Ad

This is the first in a series of articles on video advertising. To start this series off, I wanted to give a general overview of how video advertising works from the point-of-view of a Brightcove player. The slides below are adapted from a presentation I gave at 360Flex a few months ago.

This presentation would more accurately be called The Life of an Ad From the Video Player's Perspective, but that didn't sound as catchy. It's not discussing the technical side of creating an ad or using an ad server, both of which are immense topics by themselves.

Posted by Brian at 12:32 PM

April 21, 2010

New Series on Video Advertising

Over the next month or two, I'll be writing a series of technical articles on video advertising. You'll learn more about how the ad lifecycle, the standards that have emerged for video ads, and what's in the video ad future. If you're a developer who doesn't know much about advertising, this is a great time to learn! So, before you install Adblock on this series, here's a few reasons to read more:

  • As a web developer, you've certainly already worked on a website that uses advertising. Why not understand what's really going on underneath it all? It helps to know about the HTTP protocol, even if you aren't writing a webserver, and I think that a similar case can be made for advertising. The Law of Leaky Abstraction makes us all dig deeper from time to time, and an understanding of what's under the covers with ads will come in handy someday.
  • Even if you don't deal with video ads, this series will be useful to you. There's a lot of banner ads and rich media ads that are needed as part of a video player experience as well, and much of the articles are applicable to the rich media ad market and some to display ads. Google's blog has an excellent description of both rich media ads and display ads.
  • Although I'll be writing a lot about Brightcove, almost all of the items I will cover are not specific to Brightcove. The IAB standards and advertising approaches are industry-wide; and we'll just happen to be using a Brightcove player when talking about them.
  • Video advertising is an area that's expanding rapidly, growing more than 40% last year and projected to do the same this year.
  • This is being written by someone who has an inside look at how video advertising is coming together. I've been dealing with advertising at Brightcove for more than two years now, and I've written many of the pieces in the ad SDK. And, if I can persuade them, you may also see a post or two from others on the advertising team here at Brightcove in the future.

Have I convinced you? I hope so, but if you need any more persuasion or just want to ask a question, write a comment here or send me a message on twitter.

Here are links to the published articles:

Posted by Brian at 7:43 PM

March 8, 2010

How RIA Advertising Works

Below is the presentation that I gave along with Melissa Gregory at 360Flex a few hours ago. It's about the life of an ad and a little bit about Brightcove.

To anybody reading this who wasn't at the conference- I talked a lot about each slide and don't have any of those notes in the presentation. I'd be happy to explain anything more in the comments.

How RIA Advertising Works And a Little Bit About Brightcove

Posted by Brian at 4:42 PM

February 24, 2010

How RIA Advertising Works at 360Flex

I'm excited to announce that I'll be giving a talk, How RIA Advertising Works, at 360Flex. You can hear me at lunch on Monday, March 8th.

I've been building advertising SDKs for more than a year at Brightcove, and I want to share the things that I've learned about how advertising works- we'll go over the basics of advertising (CPMs, Mad Men, ad networks), the life of an ad (ad policies, ad delivery, impressions), and the emerging standards (VAST, VPAID). It will be a very technical dive into an area that many of us make our living off but which not a lot of people understand. A coworker of mine, Melissa Gregory, will also be giving a ten-minute introduction to Brightcove at the beginning of the talk.

The presentation I'll be giving is a sponsored presentation for Brightcove. I don't want this to dissuade those who just want to hear about RIA advertising, as my goal is to make this a talk that's the same as the non-sponsored talks at the conference. Being a former speaker at 360Flex in Seattle, I know I can make this happen, no matter if you use a different video platform or none at all.

I'm happy that Brightcove is a Bronze sponsor at the event. We'll have a booth there, which I'll be manning at points and where you can learn more about what we do (and pick up some schwag).

Not signed up for 360Flex? If you can get to San Jose in two weeks, you should sign up now. This is the original Flex conference, and the people who attend make it a one-of-a-kind event. I went to the first 360Flex in San Jose as well as 360Flex in Seattle three years ago. I met so many incredible people at both events, and I'm sure it will be the same at this one.

Posted by Brian at 8:52 AM

February 15, 2010

Brightcove on Mobile Flash Player 10.1

I'm very excited to see all of the news about Flash today, but I'm most excited to be able to talk about the work that Brightcove has been doing with Flash 10.1. As you can see in the video below, we've been working hard here to have different versions of the Brightcove player on mobile devices as well as making sure the current ones work as expected in the beta of Flash Player 10.1. The Brightcove player does a surprising amount, in my biased opinion- runtime layout with BEML, hundreds of API methods to call, segmented SWFs for optimizing size, handling large number of CDNs, support for every major ad server, and a lot more. And all of this is happening on the Android device below.

Posted by Brian at 2:43 PM

February 10, 2010

Brightcove News: Meetups, Player Design, and Lots of Stuff


Brightcove News is my collection of developer-focused links about Brightcove. I post about once a month, and you can see old posts here.

This post is long overdue, but I've been a little sleep-deprived and focused elsewhere lately. So here's a supersized set of links.

Meetup with Us: The London Brightcove Developer Group has taken off, and the Boston Brightcove Developer Group is close behind. I put together the Boston group, so I hope you'll go to the meetup page to join!

David Mendels: I'm very excited that Brightcove has brought David Mendels on board as President/COO. I knew him from his time jumpstarting the Flex team, and I can see him having the same kind of influence at Brightcove.

Lots of stuff: I can't think of a concise way to describe the many features that have been released so here's a rundown of a lot of stuff: chromeless player templates, built-in player sharing to Twitter and Facebook, player performance enchancements, cue point editing with video preview, additional VAST support, and a lot more that you can find in the links above.

BEML editing: Todd Yard of the Brightcove player team has created an awesome application for the visual design of players. The code complete is also very helpful.

Creating Brightcove plugins: I enjoyed this article on creating Brightcove plugins. Don't get thrown off by the message at the top of the page- it reads just fine in English.

Blogs you can find: The many blogs on brightcove.com have been rearranged so that you can see them in one place. Lots of excellent reading there that you can now grab in one RSS feed or follow on twitter.

Media SDKs: Two new media SDKs have been created, one for for .NET and one for ColdFusion. I've lost track of the number, but I'd guess there's a media SDK for about 10 languages now.

More devices every day: Brightcove can now be found on Yahoo Connected TV Widgets.

Posted by Brian at 10:22 PM

December 1, 2009

Brightcove News: $99-A-Month Edition, Mobile Enhancements, and A Lot More

This is my largest Brightcove News post so far, as I've been a little busy lately. Now that life is return to a new sleep-deprived normal, I'll share the news I've been gathering.

Brightcove 4: The launch of Brightcove 4 should have its own blog post, but I'll write what I can here. Some of these features I've written about on this blog before, like live video, VAST support, and Facebook integration. Here's a list of features I haven't mentioned, some of which I'll talk about more below: a new Express edition, iPhone SDK, new analytics module, transcoding movies with more renditions and higher quality, ability to switch between progressive and streaming for any video in your account, live streaming with full ad support, and more ad integrations (including OpenX and Freewheel).

$99-A-Month Edition: The Brightcove Express version can now be bought online for $99 a month (with some other plans costing more). I remember talking to someone awhile ago (ahem, on a podcast) and being told Brightcove was much too expensive for them to use. This is a price that many more people can afford, and I'm very excited to see more people try out Brightcove. If you've read this blog for awhile and are just curious to try things out (and/or you want to see the nice-looking Flex apps that are used for video management) you can also use the link above to quickly create a trial account.

iPhone SDK: The iPhone SDK is a pretty big project at Brightcove, and it's grabbed a lot of attention in the launch. I've only seen the demos of it, and it does looks snazzy. The switching between progressive and streaming videos in an account makes the retrieval of videos from Brightcove a lot easier for this project and for all other mobile devices. Often companies want to have their videos streamed on the Web, for bandwidth savings and making it harder to steal, but mobile devices require progressive videos. We now have a simple switch in the media APIs (one parameter that needs to be added to calls) to force the retrieval of progressive videos.

The Mad Men Keep Going: The OpenX ad integration is interesting as a free solution for advertising. OpenX is an open source ad server you can install yourself. Also interesting on the ad front is the release of the ad rules SDK. This SDK, when used with the ad translation and ad display SWF SDKs, allows for complete control of the ad system in the player. Companies like Freewheel need this in order to allow their own complex ad rules to behave in the player, and the ad SDKs are allowing very involved integrations to be done without Brightcove's direct help.

Palm OS Example: The non-iPhone world, we haven't completely forgotten about you. There's a new article on developing for Palm.

Brightcove 3.4: This release didn't have as much in it previous dot releases, as we were gearing up for Brightcove 4, but it did include media sharing in the media module and ad support in the media controls.

New Media SDKs: Two new media SDKs are being worked on: one from Al Manning for ActionScript and one for Java.

Remembering ColdFusion: I worked on the ColdFusion team for six months, so I won't forget about it (and the CFers can thank me for the super keyword for CFCs in 6.1 as well as many of the performance improvements). But to bring it back for those who haven't thought about it for awhile, here's an example of posting videos to Brightcove in CF and a creator's interview with Jeremy Allaire

Posted by Brian at 10:29 PM

October 18, 2009

Brightcove News: London Meetup, iPhone Encoding, and Developer TV

London Brightcove Developer Group: Head to London for the inaugural meeting of a Brightcove Developer Group. It will include a coding challenge, a first prize of a HD Flip Camera, and judging by CEO Jeremy Allaire.

Encoding for the iPhone: Learn about the settings that we've found work well when targeting your video for the iPhone. You can use this with the existing support that Brightcove has for the iPhone.

Developer TV: You can hear me talk on the new Developer TV about Using Ad XML, Using VAST Ad XML, and Troubleshooting with Player Logging. Next time I'll try to encode things better so that you can actually read the text. And let you see more of Charlie and Callie.

The Future of Online Video: An interesting Q&A about online video with Jeremy Allaire.

Posted by Brian at 10:34 AM

October 4, 2009

Brightcove News: Adaptive Streaming, Boxee, and Facebook

Cambridge Developer Meetup: Thanks to everyone who came to the developer meet-up two weeks ago at our office in Cambridge. I wish I had recorded the presentations, as there was a lot of excellent demos on the iPhone, live streaming, Palm Pre, audio support, and more. If you're interested in future meet-ups, no matter where you are, just send me an email (at brian at deitte dot com) or a comment.

Adaptive Streaming: Brightcove now uses adaptive streaming to pick the right video for your current bandwidth. One interesting thing to note about Brightcove's player implementation for this is that we don't require Flash Player 10. Or rather we require FP10 if the user really wants to use adaptive streaming, as that's the only way this feature will work, but the player itself will work fine in FP9. It required an interesting trick to get this to work, and I don't know of any other player that does this.

Boxee Support: Brightcove publishers can now distribute on boxee. This may mean I need to finally stop just using a web browser after hooking my Macbook to the TV.

Brightcove's Facebook Status: New articles have been posted to show how to embed video in a Facebook news feed and add a player to a fan page.

Posted by Brian at 1:55 PM

September 6, 2009

Upcoming Meetups in Toronto, San Francisco, and Cambridge

Brightcove has a bunch of meetups coming up:

Brightcove San Francisco Alliance Meetup, September 10th at 6pm
Brightcove Toronto Meetup, September 10th at 7pm
Brightcove Cambridge Developer Meetup, September 17th at 7pm

I'm putting together the Cambridge meetup, and I hope a lot of people in the Boston area will head to our office to meet the development team and see some of the things we've been working on.

I'll also be teaching half of a developer training session for customers and partners on September 17th in Cambridge. If you are interested in attending the training, please email training@brightcove.com for more details.

Posted by Brian at 1:35 PM

August 2, 2009

Ten Brightcove SDKs

As I look over some slides for a Brightcove developer class that I'll be teaching, I was reminded of the surprising number of Brightcove SDKs. Here are some links for the ten of them.

Player SDK: The player API allows for the manipulation of the Brightcove player through hundreds of functions in JavaScript and ActionScript. A JS file and SWC are available. You can learn learn more about the SDK in the documentation or ASDoc.

BEML SDK: BEML is the XML language used to describe the look of a player. The SDK is in the form of a DTD and documentation.

Media SDK: The media API allows for the reading and writing of videos and playlists. The default SDK is a REST-based API that returns JSON, and this is described in the documentation. But more SDKs have been built on top of this for specific languages: JavaScript, PHP, Python, and .NET.

Ad Translator SDK: Ad translators can be used to provide new integrations between the player and an ad server. There's a zip file that contains a SWC and ASDoc, and of course there's documentation.

Ad SWF SDK: Ad SWFs provide a way to show completely custom ads. Similar to the ad translator SDK, there's a zip file that contains a SWC and ASDoc as well as documentation.

By my count, that's ten Brightcove SDKs (with two player SDKs, five media SDKs, and one for each of the rest). If that's not enough customization for you, we have even more coming. The ad team is getting close to releasing one more, and there's constantly other SDK improvements happening.

Posted by Brian at 11:14 PM

July 26, 2009

Brightcove News: Smaller Players, VAST Support, and Japan

Smaller Players: Our AS3 players have gotten significantly smaller in the last few weeks, with a 22% reduction in the size of an average player. This was done by expanding on some creative "don't load the same class twice" work, and the number includes all bytes that are loaded. The advertising module, which is only loaded in when advertising is enabled, had one of the most significant reductions, and it can be up to 50% smaller.

VAST Support: Brightcove now has great support for the VAST standard, part of the emerging standardization of ad responses from the IAB. I hope to talk about this in more depth in a later blog post and give a more general overview of the many changes going on in rich media advertising.

A Few Other Features: Two releases have happened since I last wrote a news update, both 3.3 and 3.3.1. The 3.3 release has a lot of other goodies in that Jeremy Allaire writes about and which included the VAST support mentioned above. One thing that always feels strange from my side in product notes like this is how much is left out of what we're doing. But then I remember that not a lot of people want to hear about the bug fixes, the automated tests and frameworks, the server growth/stability changes, etc.

Konnichiwa: The backend tools and players are now all fully localized for Japanese.

Live on Saturday the 18th: You can see Manchester City play live if you can go back in time to the 18th. And choose to watch videos online with the ability to go back in time.

Posted by Brian at 10:05 PM

Flash on Phones

I'm a week late in my posting on this, but as I've been horribly behind in my posting lately, I'll just ignore that fact. And I still wanted to be able to point out the Flash multi-touch goodness. I can't wait to see the finished APIs and play around with them.

Relatedly, while Brightcove has had an iPhone integration for awhile, I didn't realize that other people were watching video through Skyfire, which will soon be making its way to Blackberry devices.

Posted by Brian at 9:43 PM

June 9, 2009

Brightcove News: Trial Accounts, Open Positions, and Usability

Trial accounts: I think that Brightcove has had 30-day trial accounts for awhile, but we've been promoting them a lot more recently. If you want to check out what we've done in Flex and Flash, sign on up.

Brightcove is Hiring: If you're in Boston or Beijing, we have some positions open right now that you may want to look at for QA, system engineering, and project management. I bring this up only to help out Brightcove and my blog readers in the current job market, and of course not at all because your mentioning of my name gives me a referral bonus.

New Brightcove.com: The website was revamped lately, including all the technical sections. There are reorganized docs (a great improvement), training videos, portals, portals, and more portals. It's been redone with Drupal, which will help more of us make changes faster.

Usability studies: There are always usability studies going on at Brightcove, and we're always looking for customers to put under the microscope or send in a suggestion or two.

Posted by Brian at 12:44 AM

May 18, 2009

Brightcove News: Audio Players, the State of Advertising, and More

Dev articles There are new development articles about using ads without an ad server and dynamically loading a player in Javascript. You can find more articles on the developer blog.

New Brightcove blog I just found out about Ashley Streb's blog, and given he's my manager at Brightcove, I will say it's the most fantastic blog of all time. Seriously, though, check it out as as it has a lot of good info on video sitemaps, creating BEML components in Flex, and EC2.

Audio support Now leaving the video-only world, Brightcove 3 has some support for audio players, as shown in a Universal Music player.

On the VUDU And leaving the browser (although not for the first time), Brightcove will start showing up on the VUDU set top box, starting with Sony's music videos.

InSkin ads I found InSkin ads fascinating because the team working on the Brightcove ad API hadn't even heard of it until it was up on a major website. We're seeing more and more partners that can develop ad solutions without any of our internal development, thanks to our fantastic ad APIs. (Did I mention I worked on them?) And the resulting ads look really good.

The state of ads Not directly related to Brightcove, but I'm always reading interesting articles about advertising, and there's been a few more than using lately. It's ranged from the perpetual sizing news to the sky is falling to practical advice

Posted by Brian at 8:58 AM

April 20, 2009

Brightcove and Adobe Announce Alliance

I was happy to see the announcement of a strategic alliance between Brightcove and Adobe. The alliance will focus on a few areas: long-form HD video, content protection for video, Adobe Creative Suite integration, collaboration on Adobe's new player framework (known as Strobe), and some sales and marketing collaboration.

Since I came from Adobe about two and half years ago and use Flex and Flash every day, it's not too surprising that I'm excited to see Brightcove have an even stronger relationship with Adobe. I'll also be very interested in checking out Strobe more to see the ways that we can work with it.

You can read some more about the alliance in an interview with Jeff Whatcott.

Posted by Brian at 10:24 AM

March 25, 2009

I'm on The Flex Show

I'm on the latest episode of The Flex Show, where I talk about making changes to the Flex SDK and the Faster Flex 3 SDK.

It was a lot of fun to do the interview with Jeffry Houser and John Wilker, and I'm glad they gave me the opportunity to do this. They've interviewed nearly everyone I read or admire in the Flex world, so make sure to check out the other podcasts if you haven't already.

Thankfully they cut out the part where my phone rings and the other amusing parts. Although I need to respond to one of those missing pieces: yes Juan Sanchez, I do like quesadillas.

Posted by Brian at 10:35 PM

Brightcove News: New Release, .NET SDK, and More Blogs

"Watching" video online: Ryan Stewart had a good post about the differences in watching video online. It made me think of a recent experiment to put the Brightcove player in a 3D environment and the other BEML and API uses I've been seeing.

Brightcove 3.2: A new release of Brightcove came out over the weekend, and you can read about all of the module and API changes in the link.

.NET SDK: Adding to the PHP, Python, and JS SDKs for the Brightcove APIs, there's now a .NET version.

Ad inventory: Both streaming media and Jeremy's blog had some thoughts on online video ad inventory.

More Brightcove meetups: I had a great time at the New York meetup (I'm the blurry guy in the lower-left corner). There's more coming up. Actually, now that I read that last post again, I see there's only one meetup that's left, so book your flight to London tonight.

Japan and Comics: Brightcove showed off the many customers in Japan, and Marvel was highlighted on NewTeeVee.

Blogs blogs blogs: Jeremy Allaire wrote about the many Brightcove blogs that can now be found on blog.brightcove.com. The blogs aren't just about Brightcove, and you can check them out for a number of insightful posts on video. There's other Brightcove blogs off of the site, and you can read about Flex and Brightcove from Oscar Cortes, Al Manning, Bob de Wit, and of course me.

Posted by Brian at 10:29 AM

February 23, 2009

Brightcove News: NYC Meetup, Python Library, and More

As I mentioned last week I'm going to try to group together the Brightcove and video news I find and post it a bit more regularly. Well, the news has been overflowing, so it's time for another post.

NYC Meetup: Want to see me and other Brightcovians in New York? We'll be there on March 13th.

Brightcove API in Python: StudioNow created a Python library for the Brightcove API. It's exciting to see projects like this grow organically for Brightcove.

And PHP and Javascript: Speaking of the APIs, Brian Franklin and Matthew Congrove created wrappers for PHP and for JavaScript.

Jeremy Allaire's new blog: Jeremy Allaire has a new blog which already has a lot of long and insightful posts on it. You can ready about the difficult economics of long tail video and whether online video is a cost center.

Brightcove A-Twitter: Brightcove is twittering. You can subscribe to Brightcove, Jeremy, and I'm sure others.

Tremor Gets $18M: Tremor, the advertising network that Brightcove uses for the Brightcove Basic edition raised $18M in funding.

Advertising articles: Last but not least, you can check out some articles I wrote on the developer center. The Brightcove Advertising SDK gives a good technical overview of the Brightcove advertising system. Ads and Custom Player Templates explains how to use custom BEML and ads. Player Logging gives tips on figuring out advertising problems in a Brightcove player.

Posted by Brian at 7:44 AM

February 16, 2009

Creating a Video Player with BEML

Recently I wanted to create a player to show a Caiman, Scarlet Macaw, and other animals from Costa Rica. The default players that could be used with Brightcove didn't look quite right for what I wanted to do, and so I had my first real need to use BEML for a custom player.

BEML is the XML syntax that's used to create a template that's used to create a Brightcove player. The BEML syntax will look familiar to Flex users, as there is a Canvas, VBox, HBox, Label, and many other similar components. One big difference with BEML is that it is interpreted at runtime, which means it's a bit simpler in it's language constructs, but this allows Brightcove to provide quick previews and good caching of players.

The player I wanted to create needed to display a long description below the video. None of the default templates had a really large place for text, but it looked to me like one of the existing templates could be altered for my use. So I went went into the publishing module, clicked on All Templates, and then clicked on Duplicate for the Compact Tabbed Navigation 3.0 template.

I then saw the BEML for the copied template, which I could then alter.



I first changed the height in the BEML so that the player would be taller. I didn't know exactly how much long description space I would need on the bottom, so it's probably too large, but that doesn't matter if the player is only being viewed on its own page. To change the height, I changed:

<Layout id="application" width="798" height="603" boxType="vbox" 
    padding="6" gutter="4">

to:

<Layout id="application" width="798" height="703" boxType="vbox" 
    padding="6"  gutter="4">

I decided I would use the Long Description field for each video, which can be edited in the media module, to display the text that I wanted. So I replaced the existing reference to the Short Description in the BEML to refer to where I what I would really edit for each video. I changed:

<Label height="52" multiline="true" 
    text="{currentItem.shortDescription}" 
    truncate="true"/>

to:

<Label height="52" multiline="true" 
    text="{currentItem.longDescription}" 
    truncate="true"/>

The last change I made, and the most important change, was to remove the existing XML for the template that was below the video. I only wanted the title, long description, and link in this spot. So I changed:

        <VBox gutter="15">
          ... skipping the XML in here, which includes a TitleLabel, 
          Link, ExpandingBanner, and much more
        </VBox>

to:

        <VBox>
          <TitleLabel height="24" width="765" id="videoTitle" 
              text="{videoPlayer.video.displayName}" 
              selected="true" size="18" truncate="true"/>
          <Label height="88" width="765" multiline="true" 
              id="longDesc" text="{videoPlayer.video.longDescription}" 
              size="18" truncate="true"/>
          <Canvas>
            <Link x="1" y="-5" size="10" id="relatedLink" 
              text="{videoPlayer.video.linkText}" vAlign="bottom"
              url="{videoPlayer.video.linkURL}"/>
          </Canvas>
        </VBox>

With the BEML changes made, I could preview and see that I had the template that I wanted.



I played around with the BEML for awhile, but the whole process still took less than an hour. It was a lot more time consuming to edit the videos and come up with the descriptions. After the template was created, I created a player from the template, made all the changes in the media module for the videos, and saw the results of my work.



I had fun creating the player, which was some good eating of dog food. If you'd like to learn more about BEML, I would start at Customizing Players with BEML in the Brightcove documentation. And if you'd like to see me almost step on a poisonous snake, you can look here.

Update: check out Jeremy Allaire's post for more details on BEML.

Update2:Here's the full BEML from my example:
<Runtime>
  <Theme name="Deluxe" style="Light">
    <Style id="default"><![CDATA[.titleText {fontSize: 12;}
         .bodyText {fontSize: 10;}.linkText {fontSize: 10;}]]></Style>
  </Theme>
  <Layout id="application" width="798" height="723" boxType="vbox" 
       padding="6" gutter="4">
    <HBox height="40" vAlign="bottom" gutter="9">
      <Image id="logo" width="300" scaleMode="scaleDown" 
           hAlign="left" vAlign="bottom"/>
      <TabBar id="playlistTabs" height="22" tabAlign="right" 
           hideSingleTab="true"/>
    </HBox>
    <HBox height="406" gutter="6">
      <VideoPlayer id="videoPlayer" width="480" 
           video="{videoList.selectedItem}"/>
      <List id="videoList" rowHeight="78" automaticAdvance="true" 
           data="{playlistTabs.selectedItem.videoDTOs}" 
           selectOnClick="true" itemInsetV="4" itemLeading="2">
        <ListItem boxType="hbox">
          <Spacer width="8"/>
          <VBox width="80" height="74" vAlign="middle">
            <ThumbnailButton height="60" data="{currentItem}" 
                 source="{currentItem.thumbnailURL}"/>
          </VBox>
          <Spacer width="7"/>
          <VBox>
            <Spacer height="3"/>
            <TitleLabel height="18" text="{currentItem.displayName}" 
                 truncate="true"/>
            <Label height="52" multiline="true" 
                 text="{currentItem.longDescription}" 
                 truncate="true"/>
          </VBox>
          <Spacer width="3"/>
        </ListItem>
      </List>
    </HBox>
    <VBox gutter="15">
      <HBox height="102">
        <Spacer width="6"/>
        <VBox>
          <TitleLabel height="24" width="765" id="videoTitle" 
               text="{videoPlayer.video.displayName}" selected="true" 
               size="18" truncate="true"/>
          <Label height="72" width="765" multiline="true" 
               id="longDesc" 
               text="{videoPlayer.video.longDescription}" size="18" 
               truncate="true"/>
          <Canvas>
            <Link x="1" y="-5" size="10" id="relatedLink" 
                 text="{videoPlayer.video.linkText}" vAlign="bottom"
                 url="{videoPlayer.video.linkURL}"/>
          </Canvas>
        </VBox>
      </HBox>
    </VBox>
  </Layout>
</Runtime>
Posted by Brian at 12:34 PM

February 10, 2009

Brightcove News: iPhone Support and Other Examples

Rather than my occasional blog post on a Brightcove news item, I'm going to be trying to group together and post more about Brightcove, especially info for developers. For the Flex readers out there who don't want the Brightcove news, you can always subscribe to the Flex-only feed. But then you'll be missing out some random Flash and video development goodness that you should read, in my completely-biased opinion.

iPhone support: Brightcove released a page on iPhone support, including example files and a live demo. Given that H.264 has been supported by Brightcove for awhile, this could have been done earlier by customers, but the HTML and JS files make it a lot easier.

Code! I'm not sure how I missed Bob de Wit's blog until now. Bob is a consultant for Brightcove in Europe, and his blog has a lot of great Brightcove examples, like subtitling and using a player in Flex.

Get a reply from Jeremy Allaire: The Brightcove community forums are getting a lot of traction, and you'll see pretty much everyone from Brightcove on there. There's answers from the developers, support, architects, and everyone else at Brightcove (including BC-JAllaire).

Posted by Brian at 10:25 PM

January 13, 2009

Comments Are Off (Temporarily)

Sorry if you're coming here to comment between January 14th and February 2nd, as comments will be turned off. I still get a few spammers who sneak through ever week, and I'd rather not let them get away with it. So I'll be turning off the comments as I go get married and spend some time in Costa Rica. It's nice get off the grid for a bit, something I haven't done for a few years. Not that I'd have much of a choice in the matter- I have a suspicion that my soon-to-be wife would have a bit of a problem with me posting to the blog in the next week...

While I'm away, you should see some articles appear on the Brightcove developer center from me. There will be one that gives an overview of the advertising SDK as well as one on advertising in custom templates.

Posted by Brian at 1:08 AM

Brightcove Year in Review

Brightcove released a letter from Jeremy Allaire today that had a lot of interesting information about Brightcove's international expansion, revenue, alliance program, and plans for the year.

Some key hirings and board members were also announced. As Ryan Stewart noted in his post, Brightcove is keeping on with the Allaire/Macromedia/Adobe tradition by bringing on Jeff Whatcott and David Mendels. Coming from the same Newton office myself or not, I'm very happy that they're both with Brightcove. And so is Ted Patrick.

Posted by Brian at 12:32 AM

December 21, 2008

Tools for Brightcove Developers

With the recent news about the Brightcove API partners, I wanted to go over some of the tools for those API partners and more importantly, for developers creating websites using Brightcove.

Features

There's four major areas in Brightcove 3 to focus on: the media API, player XML (BEML), the player API, and the ad API. There's a lot more information in the linked documentation than I could mention here, and you should be able to get a good idea there of how you can manipulate players, videos, playlists, etc.

I've been working a lot on the ad APIs, and I'm always happy to answer questions on them (just see the next section). We've doing a lot to make it easier to integrate new ad platforms with Brightcove, which you can see in the ad translator and ad SWF documentation.

Community

Brightcove has been working a lot on the documentation and community on its site lately. You can see this in the development help, which includes links to the new forums and development documentation. There's also still the Yahoo group brightcove-dev.

Recent Changes

We continue to release new updates that include changes that are helpful for developers. On help.brightcove.com, you can get a general overview of the changes in Brightcove 3.1 and Brightcove 3.1.1

Some of the notably recent changes include additional player templates, a player SWC, and new player logging.

Thoughts?

So what do you think is missing above? What developer tools does Brightcove need to work more on?

Posted by Brian at 3:47 PM

November 19, 2008

Day 2 at MAX

Here are my notes from the second day at MAX. It includes info on the keynote, development best practices with Flex, Flash security, RTMFP, and speech to text.

General Notes

A lot of people were interested in the basics of Brightcove but didn't know a lot about the technology. I've been meaning to write more about certain areas for awhile- advertising, BEML, a few other things- and this reminds me to do this.

I got a lot of comments on the compiler update I've released, and I appreciate all the comments on it. But I want to make clear again that I didn't make the compiler changes myself! I've merged the changes from the Flex compiler team- thank Paul Reilly and the rest of that group for doing the real work.

Keynote

Besides making me go slightly deaf with the sound system, they showed off a lot of new features in CS4 and other products. They showed off a literal copy and paste from CS4 applications to Catalyst which was then turned into components. This round tripping is done through FXG support in CS4 applications and Catalyst.

I saw Alchemy again as they showed the following demos in Flash: open SSL encryption, decoding of Ogg Vorbis, decoding of RAW images, showing PDFs in Flash, Doom, and Mario. The showing PDFs is particularly interesting for the future of the Flash player and the Adobe Reader. I wonder if some of PDF viewing will switch over to the Flash player?

On the .NET front in Flex, they have a partner plugin to Visual Studio and a possible C# version of BlazeDS.

In addition to multi-bitrate and RTMFP, they showed off an interesting live feature in FMS. You can now record a stream and stream it live at the same time to have a DVR-like experience.

Developer Best Practices With Flex

This session was about developer best practices with Flex with a particular focus on using Catalyst. There was quite a bit a talk about general engineering practices that should be used in Flex as they should be used elsewhere: use coding standards, comment code, and use design patterns. Nothing too surprising in this part of the talk other than advocating code behind, which I don't think works very well for Flex.

They talked about various things that developers should do to prepare their projects for Catalyst development, such as applying metadata to files and laying things out properly. There will be a lot more code-level interaction with designers when Catalyst is used.

One more interesting note, something which I didn't know yet, is that Catalyst is built on Eclipse.

Flash Security: Why and How

This was an explanation of content restrictions with the Flash Player. Deneb had a few overriding rules for Flash security: use least privilege, validate input, deploy HTTPS consistently, prototype early, and keep track of security changes.

You need to call Security.allowDomain() if a SWF loads from another domain. This allows the SWF you are loading to call things within the parent SWF. The wrong way to do this is to call Security.allowDomain("*"). "There are rare times when you might want to do this."

You need to specify allowScriptAccess or allowNetworking in the HTML to allow your SWF to script the HTML from a different domain. allowScriptAccess set to never isn't used anymore because there really isn't a way in Flash to stop same domain communication between the SWF and a browser.

Data loading requires permission because it's data that the user can access but not necessarily data that's publically available. So a cross-domain policy file is required so that the server gives permission for the data to go elsewhere. Flash is also the first client to allow direct cross-domain data loading, although browsers are looking into similar abilities in HTML5.

You must use a socket policy file with any socket connection (including the same domain).

You need to specify allowInsecureDomain() to allow HTTP connection when HTTPS is being used in the main SWF. This can cause a man in the middle attack. Allowing HTTP content in HTTPS is even worse.

Sneak Peeks

I saw RTMFP yesterday, but there was a live demo of the many-to-many feature in progress today. RTMFP application-level multicast allows for many-to-many broadcasting, live streaming from one client to many clients without using a server.

Nitro is a platform to create Flash widgets which can be distributed to desktop, Web, TV, and mobile.

Content Intelligence Toolkit can find different scenes in a video and give information about each scene in metadata: lighting, activity, etc. Includes tracking of faces, and most impressively, speech to text of the video.

Posted by Brian at 3:25 AM

November 4, 2008

Brightcove Ends Free Network Service

There has been a lot of interesting Brightcove news lately that I haven't blogged about. There were two big publishers that Brighcove announced signing: AOL and The New York Times.

The big news today is that Brightcove ends the free Network service. I'm not sure at all what to expect from the blogs and news sites on this, but it'll be interesting again to see the comments throughout the day.

(Of course, it's not the most interesting thing going on today in the US: go vote.)
Posted by Brian at 8:23 AM

October 14, 2008

Brightcove 3 Now Available

When I had posted the screenshots of Brightcove's new Flex applications two days ago, I had forgotten what was happening today. Brightcove 3 is now available, and if you talk to our friendly sales department, you can now see the new Flex and AS applications we've been creating. And I can now talk about it all.

Some of the things I'm excited about in Brightcove 3:

  • BEML (Brightcove Experience Markup Language), an XML markup language for creating players. It has bindings, hbox, label, and a bunch of other things that will be familiar to Flex developers, and it'll allow everyone to create new players quickly.
  • Fast and light AS3 video players. Part of the lightness is accomplished by a lot of SWF loading to only load in what is needed.
  • Well-designed Flex 3 applications for managing videos, players, advertising, reports, etc. These are applications that we've been working on for more than a year and are already being used by large publishers to manage thousands of videos.
  • More media, player, and advertising APIs. You can access all of this in AS3 or Javascript, accessing the videos or controlling your videos in too many ways to mention here.

There's a lot more to talk about in the items above, but I'll have to leave that for another day. Some helpful links for learning more about Brightcove 3:

Posted by Brian at 8:13 AM

October 12, 2008

Screenshots of Brightcove's New Flex Applications

Brightcove has announced a major upgrade to its features, and now I can show a few screenshots of the Flex applications. Or rather I can link to some leaked screenshots on TechCrunch. It's a bit confusing if you just look at the page for the screenshots, as it includes both the old Brightcove and the new Brightcove. But once you know that, it's easy to tell which ones are new.

The home page is HTML, but the rest of the new screenshots show Flex 3 applications. This was a large undertaking by a lot of people here at Brightcove. I'd love to write some more about this, but I'm going to have to wait until it all goes public.

Update: You can now read a lot more about the release.

Posted by Brian at 2:42 PM

July 8, 2008

Flash Job In Flashlog

This wins for the most creative job posting I've ever seen, certainly better than my Brightcove top ten list a year ago. (Although Brightcove is where you should apply of course.) If you view a blip.tv player, you'll see this:

Showplayer initializing...
                              __---__
                           _-       _--______
                      __--( /     \)XXXXXXXXXXXXX_
                    --XXX(   O   O  )XXXXXXXXXXXXXXX-
                   /XXX(       U     )        XXXXXXX\
                 /XXXXX(              )--_  XXXXXXXXXXX\
                /XXXXX/ (      O     )   XXXXXX   \XXXX\
                XXXXX/   /            XXXXXX   \_ \XXXX----
                XXXXXX__/          XXXXXX         \_----  -
        ---___  XXX__/          XXXXXX      \_         ---
          --  --__/   ___/\ XXXXXX            /  ___---=
            -_    ___/    XXXXXX              '--- XXXXXX
              --\XXX\XXXXXX                      /XXXXX
                \XXXXXXXX                        /XXXXX/
                 \XXXXX                        _/XXXXX/
                   \XXXX--__/              __-- XXXX/
                    --XXXXXXX---------------  XXXXX--
                       \XXXXXXXXXXXXXXXXXXXXXXX-
                         --XXXXXXXXXXXXXXXXXX-
(128)



Hello there, Flash cowboy!
If you can read this message, you should apply for a job at blip.tv.
Send an email to careers@blip.tv with your resume and make sure to
let us know that you saw this message.

               Love,
               The blip.tv dev team
Very amusing. Flash video players seem to have a habit of leaving amusing messages. Posted by Brian at 7:07 PM

June 17, 2008

A Shiny New Brightcove

Brightcove announced today the beta of a new set of tools and features. Most interesting for the readers here is the article on Techcrunch, where you can see a tiny picture of one of the Flex applications. As I mentioned here in a previous post, there's a lot of interesting AS and Flex working going on here. And someday soon you'll be able to see more than a little image of it!

Posted by Brian at 8:56 AM

June 9, 2008

Please Ignore the Blog Mess (aka Want a Freelance Job?)

So I haven't played around with the design of this site in a long time, and while it's a pain to do in Movable Type, I figured it was time to do some damage. Apparently I did a little too much damage while watching the Celtics game tonight, as I managed to completely mess up my setup.

I had a backup, but Movable Type's odd linking structure has left me with a few missing files. So now I'm stuck with an odd-looking blog until I find the time to fix things. It's better than the default look, as long as you don't look at the bottom of the front page. (You looked, didn't you?)

On the subject, if you have or know someone with the following four characteristics:

- CSS knowledge
- know Movable Type or are willing to put up with a wacky templating system
- a good knack for design
- free time

Send me an email at bdeitte at gmail dot com with your rates. Obviously I can't spend a fortune on a free blog, but with my lack of time, I'm more than happy to pay for someone else to clean up my mess (and then make it much better).

Posted by Brian at 6:32 AM

May 29, 2008

The Making of a Platform with Adobe Technology

Brightcove is using Flex and Flash in many significant ways to make a video platform, and I thought it'd be interesting to some people to share some of the uses. I can't share a lot, but I can take the information from a keynote presentation by Ashley Streb at Webmaniacs 2008. You can also see the full presentation embedded at the end of this post.

The scale of things at Brightcove is something that drives a lot of what happens with Flex and Flash at Brightcove. From the slides:

135 Million Unique Users/month (as of 6 - 9 months ago)
1.5 Petabytes (1,500,000 GBs) of media delivered/month
Thousands of platform users, hundreds of major media brands, 
  50 television networks, newspaper and magazine publishers, 
  and all the major record labels in the US.

All of these users and media go through the Brightcove players, which have AS1, AS2, and AS3 versions in hundreds of different permutations. Some of the data on the AS3 versions from the slides:

ActionScript 3, AVM2
AMF3 as client/server communication protocol
~70K LOC written

There's nothing too surprising in there, but there's some more interesting size information in the slides. Keeping down the size helps the performance, and there's been a lot of work by Todd Yard (and others) on making the players faster and faster for the 135 million (or whatever the current number is) users.

The players and videos are managed by manager applications that were created with Flex. When some of your customers have thousands of videos and thousands of playlists of videos, the management becomes... tricky. The slides touch on some of the ways this happens:

AVM2
Structure server API; initial view, lazy load, different types of DTOs
Make clients intelligent about their needs 
Datagrid presentation strategies

I'm sure there's some questions on some of the above, like the datagrid presentation strategies, but I'll have to expand on them another day. These business applications have some other data points on them that I can share:

Flex 2, AVM2
Flex vs. ActionScript vs. DHTML
AMF3 as client/server communication protocol
Cairngorm as micro-architecture
~100K LOC written, 150 Commands
FlexBuilder as IDE/Developer Tool
FlexUnit for unit testing
Homegrown integration tool

There's a lot more in the slides below, including info about Brightcove as a service, code layout, the use of Scrum, our Java setup, etc. If you'd like to hear more about any of this, just comment or send me an email.

Posted by Brian at 9:15 AM

March 3, 2008

The Brightcove Office Invasion

It doesn't have the Golden Girls like the Flex behind the scenes videos, but Boston.com came by the Brightcove office a few weeks ago for a video about development hell and Paris Hilton.

In other Brightcove news, check out a new use of Aftermix, with pages to create and view mashups on snow.com. It's the first off-site use of the application.

I haven't been working on Aftermix lately, but there's a lot of other interesting Flex work going on here... just nothing I can blog about yet.

Posted by Brian at 8:05 AM

November 28, 2007

Links on the Brightcove.tv Upload Shutdown

Since I am a part of the Scrum team that is making the changes to brightcove.tv upload, it's been very interesting to read all the blog posts about it. I'll leave the comments on the changes to those at a higher payscale, but here's some links:

Ryan Stewart asks about Aftermix, and I really wish I could comment on this one.

Mashable wins for most hyperbolic title. Company to follow? Huh?

Jeremy Allaire clarified the changes, making sure it's clear that this only affects consumer uploads on brightcove.tv.

And just posted is a thoughtful article from Jeremy Allaire and Adam Berrey talking about the changes in Internet video.

Posted by Brian at 5:01 PM

November 24, 2007

Mashup Culture

I noticed a new talk by Lawrence Lessig about mashup culture (found on nwebb.co.uk).

Considering how often I mention Aftermix here, it's impossible not to mention Lessig at some point. He's writen a lot about remixing, with perhaps the most well-known commentary in an article in the Washington Post on Star Wars and Eyespot.

Lessig isn't the only person talking about remixing, of course. There's even videos on the subject, such as A Fair(y) Use Tale. And there's people talking about Lessig as well, such as the always-interesting Convergence Culture blog. My own opinion on all of this? It's definitely something I like reading about... how's that for a non-answer? :) A lot of people enjoyed making Avril remixes, and I certainly didn't feel like a sharecropper making my mix, and so I'll leave it at that.

Posted by Brian at 1:00 PM

November 18, 2007

The Future of Brightcove and Aftermix

There's a interview on videonuze.com with Jeremy Allaire. It has a lot of interesting information about Brightcove's positioning and future.

Also, as perhaps a few of you have noticed, Aftermix has ended it beta run on brightcove.tv. To quote, "While the beta program has officially ended, you'll soon be able to use Aftermix on many sites throughout the web." So you'll have to wait a little bit, but I'll let you all know where you can next mash things up.

Posted by Brian at 6:46 PM

October 13, 2007

I'm doing Javascript work now

It's been a bit too long since my last update, but blogging keeps getting pushed down on the TODO list. I have a long post on components in the works, but I wanted to post something else in the meantime to get myself back on the blogging horse.

So it's true that I'm doing Javascript right now, although it's just for a week before I head back to Flex-land. But it makes for a great headline, no? This past week, I delved into innerHTML and the rest of the Ajaxy world that I've never been in before. I did this to help create some HTML pages for work, and in the sprit of Scrum, this was a task that I volunteered for. I wanted to learn the basics, and it's been pretty easy to do so. One thing I've enjoyed in my scripting is the instantaneous nature of the changes- there's a noticeable difference between waiting less than a second and waiting up to five seconds to see a change. One thing I haven't enjoyed is, well, Javascript. I've been spoiled by AS3.

What else have I been up to, technology-wise? Well, MAX was not one of those things, although I really wish I could have gone. I didn't keep up with the mountain of blog postings last week, but I did read a lot of the great posts on Thermo. I'm waiting to see the code generation before I know how excited to get.

Aftermix is still going strong, and in time I'll be able to talk about some very interesting changes ahead. And Brightcove is going strong, with lots of big deals and news lately. Brightcove is a great place to work, and if you're a Flex/Java developer/QA looking for a job, send me an email at bdeitte at brightcove dot com.

Posted by Brian at 7:25 PM

September 13, 2007

Invite-free Aftermix on Brightcove.TV

You can now play with Aftermix without an invite by going to the welcome page. It's still in beta, but let me know what you think. The welcome page will take you to the contests for Avril Lavinge, Mashers of Horror, and Big and Rich.

You may also notice that this is a link to brightcove.tv and not brightcove.com. You can read more about Brightcove.TV on the Brightcove blog or on Mashable.

Posted by Brian at 10:15 AM

August 21, 2007

The Future of Flash Video

Adobe just announced support for H.264 in the Flash Player.

What does this mean? For a short primer on H.264, see Apple's page on the subject. For the technical overview, check out Tinic's extremely detailed post. Now I'm not going to be able to sleep, as it's time to go read Tinic's post closely and salivate over the details.

Posted by Brian at 1:11 AM

August 19, 2007

My Slides From 360Flex

The slides from my presentation on Aftermix and Video at 360Flex:

You can also download the PPT from slideshare.com by going to their site and clicking on "Download file". The slides have a lot of notes in them, as I tried to keep the slides themselves concise.

Thanks to John and Tom for putting together a great conference. Thanks to effectiveui for the boxers that made me laugh when I finally saw the joke ("don't just focus on the backend"). Thanks to Jeff Tapper and Mike Nimer for getting a bunch of interesting folks together for dinner on the last night. And thanks to all the people who stuck it out for the last session on the last day to see my talk.

Posted by Brian at 11:58 PM

Junk Comments

I was just trying to catch up on this blog by answer comments in Using Resource Bundles in Flex and Embedding HTML in a Flex application when I had my new comment show up as a Junk Comment in Movable Type. Err, that's not good.

If anybody has posted on this site and didn't see their comment show up, please email me at brian @theurlyouseeabove.com or try to repost it. Sorry about that.

Also, if you're looking for the slides from my presentation at 360Flex, I should have them up here by the end of the day.

Posted by Brian at 1:00 PM

August 9, 2007

Aftermix on Mashable

Things have been very quiet on the Aftermix front lately, but if you have access to the beta, you should notice a few bug fixes today. On the news front, there was a lot of interest on Mashable for getting invites.

Want to hear more about Aftermix or about video in general? There's still space at 360Flex in Seattle next week. I'll be speaking at 4pm on Wednesday.

Posted by Brian at 5:44 PM

July 27, 2007

The Best Aftermixes So Far

Two Brightcove interns, Rene Dongo and Oliver Anderson, have put together a list of their favorite Aftermixes and favorite Avril Aftermixes. Here's some highlights for your Friday clicking:

A Buzzword QuickDemo. There's something very meta about this use of Aftermix.

concaf lionel richie. Just wait a bit with this one... someone had way too much fun with audio commentary.

LOLCATS Supermix. The meme may be over, but the cats live on.

Avril Aftermix. The main bug mentioned in the comment in this video is fixed.

CSS' Birds RMX. I just like the flying dogs.

Intern War. This epic was created by another Brightcove intern, Max Gold. This will also be the basis of some upcoming Aftermix tutorial videos we're releasing.

Posted by Brian at 2:19 PM

July 25, 2007

Remixing and Complexity

Here's two articles I've been thinking about lately, especially in how they relate to Aftermix:

Remixing and Fair Use

Culture of Complexity

Posted by Brian at 12:58 AM

July 8, 2007

Brightcove On HBO

I was just watching Entourage and saw the Brightcove player in a fake TMZ video. Watching it on a tiny TV, I was squinting to see if the icons were the Brightcove ones. It was was, uh, an interesting video to have Brightcove showcased.

Update: And here's a clip of the show, now on TMZ.

Posted by Brian at 10:02 PM

June 26, 2007

Aftermix, Invites, and Remixer

Ryan Stewart, who keeps growing on his uncanny ability to find stories, posted a link to the Aftermix invite form in a blog post last week.

We won't be allowing everyone into Aftermix for the short term as we still work like mad on the beta version. But I hope everyone still fills out the form to check this out, and I'll also be posting a way to make sure your request is selected. (And sorry but it won't be a Flex quiz.) There's also the invites at 360Flex.

Last but not least, a very late congrats to the team at Adobe for the Remixer app on YouTube.

Posted by Brian at 12:02 AM

May 23, 2007

Buzzword, FlexBox, and Transformers

Too much work and too little blogging. Here's a catch-all post to catch up on Flex things.

I've seen Buzzword, and... wow. Congrats to the Flex team there. I'm most impressed by the details, the way that little things just work.

The news is old, but I'll still point out that FlexBox has been updated. It's an excellent way to find new Flex components.

And related to FlexBox, since the IFrame component is on there, is that I've finally responded to the last month of comments on Embedding HTML.

And Transformers. What does Transformers have to do with Flex? I could make up a metaphor here about the versatility of Flex. Or make an awful joke about Flash being more than meets the eye. But really, I just wanted to be a geek and embed this:

The movie looks a lot like all the rest of the Hollywood action films in recent years, but it's Transformers. The ten year-old kid in me is very excited.

Lastly, as a non-Flex update, there was an update to brightcove.com last night, but I'll wait to post more on this, as I can't yet talk about any video mixing part of this update.

Posted by Brian at 6:47 PM

May 8, 2007

Details Leaking Out on Aftermix

Details on Aftermix have been slowly emerging, and Anthropomedia points to two of them in a post on Brightcove's Aftermix. For the MediaPost video mentioned, go to the 35 minute point to see Jeremy Allaire's demo of Aftermix. Or you can check out the early support video.

I can't comment on the blog post's questions on the underlying business model, but I can briefly comment on the blog post's suggestion that Aftermix is half-baked right now. We have a team here that includes people who previously worked on Flex, which is the development technology for Aftermix. This Flex group includes me, and you can also see that I went to Brightcove seven months ago. Hopefully I've been doing something since then. :) I wish I could say more, but that's for another day. In time, on this blog, you'll hear more about the fully-baked version.

As for the version of Aftermix shown in the videos, a lot has changed (and is better) in our local builds. To let out one detail, the tab navigator is gone. Those of us who have seen too many Flex applications that look alike will appreciate this.

Posted by Brian at 11:29 AM

May 2, 2007

Looking for More Flex or Flash QA (and Developers)

Do you want to test or develop a video player that's viewed millions of times a month? How about working on a brand-new video editor? Brightcove is looking for more Flex and Flash people to work on brightcove.com. We're looking for both QA and developers to work on Aftermix, the site's video player, and more.

Check out my previous post, Top 10 Reasons to Work at With Flex Brightcove, for some Aftermix-focused reasons to check things out.

You can ask questions or email your resume to work AT brightcove DOT com. And you can always ask me questions at bdeitte AT brightcove DOT com.

Posted by Brian at 10:11 PM

Brightcove Widgets From Yourminis

If you look at the bottom of the right-hand column on this site, you'll now see this yourminis widget:


It's displaying the top videos on Brightcove.com, but you can change it to display videos from different categories. You can also change other properties, as I changed mine to fit into the column's width.

See the original Brightcove widget here.

On a side note, since most people are still coming here for Flex information, I wanted to point out again that I have RSS feeds for both the Flex and video categories. But I'm happy if you keep reading all my ramblings.

Posted by Brian at 10:00 PM

April 22, 2007

Snacking with Henry Jenkins

Henry Jenkins wrote a contrarian post about the conventional wisdom on the video snacking culture. While I agree that snacks can be good for you, I found it hard to swallow (if you'll excuse the pun) that we only have more snacks now because "the menu itself has gotten longer". The menu may be longer, but I don't see it expanding at a uniform rate, as the shorter form has taken over the Web.

On the subject of Henry Jenkins, if you're interested in online media, you really should be reading his blog. I don't find the time to read most of his posts, and I found it amusing that he joked about their length in his latest post. But his blog posts, which take a lot more brain cells to read than the average item in my aggregator, are worth a read.

I first heard about Henry Jenkins six months ago when I was starting out at Brightcove. I was trying to find books and blogs on new media, and I picked up Convergence Culture. I really liked the book and highly recommend it. I hope to write some longer thoughts on the book some day and how some of the ideas apply to Aftermix.

Posted by Brian at 11:32 PM

April 16, 2007

Brightcove's Planned Support of Silverlight

Brightcove is now planning to support Silverlight in addition to Flash video.

I'm just posting this to give Ted Patrick and Scott Barnes the opportunity to have a "discussion" on the matter. :)

Back to Aftermix work, which yes, is still in Flex 2.

Posted by Brian at 7:03 PM

April 15, 2007

CBS and More from Brightcove

I don't usually publish details on the content deals from Brightcove, as it would bore almost all of the geeks reading this blog. And writing the daily posts would put me to sleep as well. But as a wide-ranging deal, the CBS deal is pretty interesting. Brightcove also provided some interesting hints of future possibility in the press release:

Brightcove will feature ad-supported CBS video channels on its popular consumer destination, Brightcove.com. Fans of hit CBS programs will be able to post comments and interact with other viewers, remix content through interactive editing tools, and share videos through personal channels on Brightcove.com. For long-form CBS content, Brightcove will also provide a full-screen theater-mode viewing experience.

Posted by Brian at 1:08 PM

March 28, 2007

A Major Brightcove.com Update

Now you can tell the world what you think about the latest TMZ video on brightcove.com. (If you admit to watching TMZ videos, of course). As of early this morning, Brightcove entered the world of spam and "first post!" with a commenting system on video pages. I already see a lot of amusing comments (and user thumbnails) on the site.

A lot of other changes were included in the update to brightcove.com, including a major performance increase, more ways to browse for new content, a fix for view counts, and a list of the newest videos. Sorry, but no Aftermix yet.

Posted by Brian at 8:37 AM

March 12, 2007

Brightcove is Now Twittering

You can get video diversions here.

Posted by Brian at 10:37 AM

March 2, 2007

Random dog videos- dailydogvideo.com

After watching a bunch of cat videos at a meeting today (don't ask), I figured it was time to create a post about a little project I've helping with, http://www.dailydogvideo.com

It's simply one embedded dog video each day. I had the idea for the site after watching way too many pet videos on brightcove.com and other sites. It has only taken a few hours to set up, and my girlfriend Betsy is running with the site, selecting the videos and making sure everything goes smoothly.

The site features videos from any video site, although I nudge Betsy into selecting more of the Brightcove videos. You can subscribe through email or RSS, which is updated, you guessed it, once a day.

Update: The site has gone away, but my wife has a new site at petitemama.com

Posted by Brian at 6:00 PM

February 27, 2007

Aftermixing at Brightcove

Today at the Adobe Engage event, Jeremy Allaire showed a little bit of Aftermix, an unreleased video mixing application from Brightcove. I'm very excited to see all of the posts and discussion on Aftermix and its possibilities, especially since I have my hand in the making of this Flex 2 application. Here's a roundup of what others are writing about Aftermix:

A GooTube lookout from David Berlind.

Jeff Barr writes about Aftermix, consumers, and the video-snacking culture.

Kristen Nicole suggests that Brightcove keeps quality first.

Everyone's favorite prolific blogger Ryan Stewart has a post.

Mashable has a post with a title we can all agree as hyperbolic, Brightcove Launching AfterMix - Pulls Ahead of YouTube?

James Governor's post asks Brightcove to remember the 'roots.

Posted by Brian at 11:30 PM

February 21, 2007

YouTube's Hidden Anger for the Play Button

This was too amusing not to post* and a reminder to make sure no traces show up in a production SWF. Below is the trace output from an embedded YouTube video. In the middle of the output: "showing the goddamn play button".

Constructing movie
Warning: onStatus is not a function
Ending the movie is :_level0.tube.movie
constructing MovieController:undefined
timer.seek_total_timeundefined
regular:undefined smal._xstart:undefined
constructing EmbedSoundController:undefined
setting movie
setting the movie video_id:1AH9VEM_qC0 base_url:http://www.youtube.com/
DIFFERENT loading :undefined vs http://www.youtube.com/get_video?video_id=1AH9VE
M_qC0&t=OEgsToPDskKQgp5rypS4WQ0olAuex1N1
registering controller to:_level0.tube.movie
registering sound to:_level0.tube.movie
controller movie is:_level0.tube.movie
show v:100
showing the goddamn play button
sw:425 sh:350 rw:450.55 rh:356.1
resizing to:425:350
resizing to:425:318.75 ratio:1.33333333333333
overlay: 425,318.75
end_screen: 425,318.75
actual size of movie is:425:318.9
resize width:425 bg offset30.55
moive_width:425 w:425 mx:0
px:undefined py:undefined
fiting image to:425:318.75 actual:425:318.75
we loaded the image

*Yes YouTube is a competitor in some ways to the company I work for, Brightcove, but it's certainly not meant as a dig at them!

Posted by Brian at 5:55 PM

February 18, 2007

Jobs' Thoughts on DRM

Steve Jobs has sparked more conversation on DRM in music with his Thoughts on Music article. I'm sure this article will percolate into the conversations on video DRM (or creators' rights).

Macrovision, a copy prevention company, responded to the article. And daring fireball posted an amusing response to Macrovision's letter.

Posted by Brian at 11:06 AM

February 10, 2007

Random Videos Redux

I was just looking at my awstats for deitte.com and noticed that a lot of people are finding the site with the search terms "random videos". If you search Google for random videos, you'll see this post in the top 10! It's the first time I've seen that a lot of people are coming to the site for video info.

Time for a few more random videos:

The YouTube (or Brightcove) Gotcha Game
How to Shotgun a Bottled Beer
Nintendos are Hot

A lot more random Brightcove videos can be found on the Brightcove Video Addict blog.

Posted by Brian at 1:30 PM

February 1, 2007

Personal Channels on Brightcove

You can now create your own personal channel on Brightcove and upload your own videos to it. Just register and you can start uploading and marking your favorite videos.

One thing I've noticed is that an uploaded video takes a few minutes to show up on your page, so don't think that your upload failed if you don't see it right away. There's a few quirks, and there's some features that I'd like to see, but it's a good start. I especially like the inline editing.

I'm not sure how this monkey got on the Internet, but check out his page.

Posted by Brian at 3:43 PM

January 26, 2007

Random Videos

Gus And Chippy A favorite of my mine from the Brightcove Pets channel. I think you'll be able to guess which dog is Chippy.

Cat Opening a Door The first step in global cat domination.

More from Barak Obama Another in the long-line of videos from candidates, but I liked the quality of this one.

A Very... Uh... Interesting Person Fast forward to 7:00. The digg comments about this video are hilarious.

I'm not planning to post a lot of Brightcove videos here, but you may see a few more random videos from time to time. On the topic of Brightcove, PBS and PC Magazine have recent articles about online video and Brightcove.

Posted by Brian at 12:48 PM

January 17, 2007

Brightcove Raises $59.5M in Financing

Yesterday, Barak Obama announced his run for the presidency using Brightcove.

Today, Brightcove announced the completion of a major round of private financing for $59.5M.

Tomorrow, I expect to see the announcement of Jeremy Allaire's 100M war chest and presidential run.

Well, perhaps not, but I'm very excited that Brightcove has obtained this financing and that the company can continue to grow. It means we can keep working hard on and investing in the interesting projects you'll see in the year ahead.

Posted by Brian at 8:31 AM

December 31, 2006

About This Blog

Hi, I'm Brian Deitte. I work at Brightcove, where I develop in Flex, AS3, and Java for the Brightcove video platform. Previously I worked at Adobe (through Macromedia through Allaire) where I worked on the Flex team from Flex 1.0 to Flex 2.01.

You can subscribe to this blog through this RSS feed.

If you'd like to say hi or have an interesting idea to share, please send me an email at brian at deitte.com. You can also find me on Twitter.

Are you wondering how you pronounce Deitte? Say "be it", but with a "d" instead of a "b".

Posted by Brian at 12:14 PM

Happy New Year

A Happy New Year to all! Between a trip around the world to a new job to so much else, this has been a very interesting year for me. I hope everyone has a good year ahead.

Posted by Brian at 12:05 PM

December 18, 2006

Time Tells the YouTube Story Through Brightcove

I love the fact that the "YouTube: The Early Days" video (as part of the Time Person of the Year feature) uses the Brightcove player.

Posted by Brian at 3:41 PM

Top Ten Reasons to Work with Flex at Brightcove

We're still in need of Flex developers and QA for an exciting project at Brightcove. In the spirit of Ted Patrick, here's my top ten list for working at Brightcove:

1. First off, I'd like to stress that you don't have to know Flex. Knowing your UIComponents would be helpful, but we're more interested in your ability and willingness to work on a Flex project. In other words, we're interested in athletes more than experts.

2. It's a new project, which means that you get a lot of say on how things work in the development and testing environments. You'll be on the ground floor of a new project and the first floor of a growing company.

3. Work with Flex 2 every day, all day.

4. Work directly with three former members of the Flex team. This includes Sean Neville, who was writing about Flex more than three years ago and me.

5. Work close to a lot of excellent Flex, Flash and Java developers. This includes one of the authors of the AS 3.0 Cookbook, Keith Peters, Flasher extraordinaire Sam Robbins, and a swath of people who've helped build J2EE servers.

6. It's a project that Jeremy Allaire is excited about. He'll come by occasionally and ask about the project.

7. My HR one-liner: Brightcove has a good set of medical, dental, 401k and other benefits.

8. You won't have to see any more posts on this site about the subject. I can't help but try to get more people on board to the project I'm on. Like the threat in an NPR fund drive, you could make the world a better place and help me get back to more insightful posts by working here.

9. Brightcove is all about video, video, video. The online world is currently abuzz with video. Wouldn't you like to work with video?

10. Have you seen the view out of our office at One Cambridge Center in Kendall Square?

Apply by emailing your resume to resume to work AT brightcove DOT com or finding the job through the career site. And if you have any questions for me, I'd be more than happy to answer them at bdeitte AT brightcove DOT com.

Posted by Brian at 3:12 PM

December 17, 2006

An Ajax Look at Flex, New TV, and More

Three groups of links for your Sunday reading:

1. Andy Budd has a fascinating post on going to the Flash on the Beach conference as an Ajax developer: The Lion's Den (found via Aral Balkan) Having lived in Flex-land for too long, I always find it interesting to hear a perspective, positive or not, from someone in the majority group of Web development. To quote: "The thing that excites me the most about FLEX 2.0 is how similar it is to standards based development. You have an declarative XML-based mark-up language to build the UI. You can then add style in the form of CSS and behaviour using the ECMAScript based Actionscript language. Cool huh?"

2. I saw the newwteevee.com blog after a post on Brightcove's user upload feature. I'm now a daily reader, as the blog is the best place I've found to read about everything happening with online video.

3. The folks at Jive Software (founded by fellow University of Iowans) have had a number of good posts about software companies, the latest being about creating an open organization.

Posted by Brian at 10:05 AM

December 5, 2006

Ryan Stewart on Brightcove

Ryan Stewart has a glowing blog post about Brightcove on his ZDNet blog. Even if you know about Brightcove already, it's a great article to read to get a few more ideas about it. I also see that Ryan has updated his mugshoot... Ryan, you look much older and balder. :)

Posted by Brian at 2:41 PM

Amusing Support Videos

I actually enjoyed watching these support videos. That's scary. The current version includes an interviewing video character, pancakes, and Buddha:

Here's the rest of the support videos.

Posted by Brian at 2:20 PM

November 22, 2006

Brightcove Holiday Lights

Take a look at the top floor of One Cambridge Center:

I shall never divulge the names of the conspirators, but there was a number of people here working to get this done yesterday. It may need a video running out of the rest of the windows to make it MIT-worthy, but having the font look like the Brightcove font is a nice touch.

Picture taken by David Adler.

Posted by Brian at 11:27 AM

November 19, 2006

Full-Screen mode on Brightcove

Brightcove videos now have a full-screen mode. You can enable this by clicking the maximize box in videos, like in the fish-eating turtle one below:

Here's the video I originally wanted to embed in this post, but apparently I can't get the embed code on all videos on brightcove.com. I assume this is a publisher option, and hopefully more publishers will understand the importance of enabling this.


Posted by Brian at 1:20 PM

November 5, 2006

Brightcove in Newsweek

Jeremy Allaire has a excellent interview about Brightcove in Newsweek. Also, as long as I'm in the Brightcove-article-linking mood, I'll mention a lengthy post on what Brightcove is (and isn't).

Posted by Brian at 10:53 PM

October 30, 2006

A good time waster for today: brightcove.com

Check out brightcove.com for lots of video goodness. The site was consumerized, and you can now view videos through a popularity ranking or microchannels. The Horror Channel is a good one for this week.

There's a lot more to today's launch, including the ability for anyone to launch a Brightcove channel, AdNet, website affiliates, distribution through AOL Video, open APIs, and lots more that you can read about in this article. There's also a barrage of press today.

It's been exciting starting at the company at this time (and quite lucky). It has, however, meant that I haven't gotten to meet everyone yet, as there's a lot of people who have been working around-the-clock to get this all out.

If anybody is wondering, I promise to get back to some technical posts on this blog. Next up will probably be a post about my current experiences with Flex.

Posted by Brian at 8:34 AM

October 24, 2006

Brightcove looking for Flex developers and QA

Brightcove is looking for developers and QA for an exciting, new Flex 2 project. This is the project that brought me to Brightcove, so you'll be working with me on creating an application that focuses on video on the Web.

We would love Flex experience, but if you're just starting down the path of Flex and want to keep learning more, we're definitely interested as well.

The positions are based in Cambridge, Massachusetts. To apply, please see the links below or send your resume to work AT brightcove DOT com.

Software Engineer: http://tbe.taleo.net/NA4/ats/careers/requisition.jsp?org=BRIGHTCOVE&cws=1&rid=116

Senior QA Software Engineer: http://tbe.taleo.net/NA4/ats/careers/requisition.jsp?org=BRIGHTCOVE&cws=1&rid=112

Posted by Brian at 12:05 PM

October 22, 2006

Pay media on Brightcove (but not with Flash)

I noticed that the lastest update to Brightcove's services includes a beta of pay media services for distrubuting your content to everyone for a price.

As I would have guessed, the pay services require the use of Windows Media Video. Hopefully in time Flash video will have a good, non-streaming solution to DRM. It is something that's often discussed and worked on.

Posted by Brian at 6:22 PM

October 21, 2006

Category Feeds and Other Updates

This blog went through an overhaul* today, with a new look and new feeds. If you only want to read about Flex now, you can use this feed:
RSS 2.0 (Flex category only)
If you're coming here for video and Brightcove information, then use this feed:
RSS 2.0 (video category only)
And all of the posts are still available on this feed:
RSS 2.0

Also, unrelatedly, I've been asked by a few people if I'll be at MAX this year. I won't be there, as I'll be diving into the new job. I'll just have to drink with everyone another day.

* I updated Movable Type to 3.3, which was surprisingly painless. The snazzy new CSS styling is from Lilia Ahner. The category feeds were figured out from Anders Jacobsen's blog.

Posted by Brian at 5:12 PM

October 12, 2006

Heading to Brightcove

I'm leaving the house of Adobe and heading out to sea. I've decided to join Brightcove, where I will be working on a Flex application and helping the push towards Internet TV.

It was not an easy decision- I've worked with many great people during my six year stint in the Boston office, and Adobe is an excellent company to work for. But I've gotten very excited about the job at Brightcove and what the company is doing.

I plan to still stay involved with Flex at some level, as I think it has a very promising future. This blog will now talk about Flex as well as Internet video. Separate RSS feeds will be set up soon.

To end with, here's part of the email I sent out to the people I work with:

It was beer-o-clock on Friday that I finally realized that I'll soon be leaving here for good. More than six years ago I came here, and I couldn't believe that I got to work on JRun, a product I was already using. We put out a few releases, decided dung beetles weren't a good idea for an advertisement, and then scattered. I ended up on ColdFusion, where Damon put Erik and me to work on eeking out performance improvements, and where I got to give a code name to a product (RedSky). From there it was on to Royale, where I saw many parts of Flex. I went from RemoteObject advice from some Scottish voices to arguing web services with Tom Ruggles to SWCs and Flex Compiler Core.

I would mention all the people who stick in my mind over the years here, but that would take up all the time I need to still finish my last feature... but I do want to say thanks to everyone. I very much appreciate all the friends (and products) that have been created in my time here.

Posted by Brian at 5:08 PM