Adobe Flash Media Server 4.5 Released

This is awesome news! FMS 4.5 brings a TON of features enabling CDNs and content producers to provide iOS support for live, including DVR, and a slough of other things. Just check the notes here: Key New Features inside Flash Media Server 4.5 –        Same Source Video delivery to Apple Devices and Adobe Flash (single workflows to reach both platforms) –        On Demand video packaging / segmenting for HTTP video delivery (no need to pre-package your content) –        Set-level F4M Manifests and Variant M3u8 playlist support –        Simple and robust content protection workflows for HTTP streaming (as easy as saying on or off) –        Live PVR/DVR support for Apple Devices and Adobe Flash with Disk Management (don’t miss that special moment in live) –        Support for Studio-approved DRM with Adobe Flash Access 3 (robust DRM that exceeds your requirements on Desktop and Android) –        Multicast SSM and ASM, with Multicast re-broadcast –        SIP Device support for communication –        P2P support in Flash Media Interactive Server Sweet stuff! Read more about it and to all of the CDNs…stop upgrading so slow. Get this puppy in production...

Silverlight “Confined” to Mobile

I seriously never liked the whole Silverlight vs Flash and now don’t like the Flash vs HTML 5 arguments out there but Microsoft’s [MSFT] announcement strikes a familiar chord with me. I’m seeing this from a different perspective since I’m not a Silverlight developer by default [only if you pay me to do it]. I’m not trying to stick a fork in Silverlight. I think focusing it on mobile, WPF on desktop, and HTML 5 as the cross-platform choice might turn out well for MSFT. Sure, developers are probably jilted as all get out but they’ll get over it or change platforms, highly unlikely. I truly like Silverlight and would love to see it on Android and iOS but I doubt it will happen. If history proves correct, MSFT will keep it on Windows devices just like .NET…well…it is based on .NET so that’s an easy argument. What interests me is all of the blog fodder floating around about “Hey…you want Flash on iOS…I want Silverlight on Android!” I saw it recently from @aral and others. It interests because now MSFT has drawn a line in the sand and clearly set their goals as HTML 5 for cross-platform development. Wait…what? That was Silverlight 1-4’s job, right? Yep…sure was. Silverlight will still get use but it is most likely going to be a streaming platform solely for desktop. The other uses will diminish as MSFT pushes the HTML 5 initiative much faster. Bottom line…MSFT sees the writing on the wall, IMO. iOS is king and Silverlight isn’t getting an invite to the party. If Flash has Android, Blackberry Playbook [potentially...

Fanboy I’m not

I’ll shelve off ranting about anything for now. There are a couple points I want to make then I’m out. I’m pretty much known as a Flash developer. That’s a fair synopsis of the majority of my work. This means, I’m closely tied to the success of Flash, right? WRONG! That couldn’t be further from the truth. I’m no Adobe fanboy, or any other tech for that matter. You can employ me to build sites/apps in a myriad of technologies and most I wouldn’t even argue against your tech choice. Back to topic though… I was having a Twitter conversation (follow the tweets there) and I realized I fall into this boat often, defending a tech by “righting” some incorrect statements. Lately it has been me defending Flash. I continue to do this because informed consent (to not like a tech, choose another one, etc) is critical to me. People make decisions based on what they find online and I can’t stand false information. It leads to close-minded people, which I was formerly for this exact reason. My point of this post is to 100% clarify one thing: Just because you see me defending Flash, do not assume I am an Adobe fanboy. I love their tech but you can easily find me defending Silverlight to Flash folks or ColdFusion to PHP folks or .NET to ColdFusion folks. Look at my blog banner…it shows the tech I’m behind. Just like no man can serve two masters, no fanboy can fanboy to masters. Note: I’m in no way saying @ericcarroll called me a fanboy. This really has nothing to do...

iPhone Packager apps are blocked…what next? #331rally?

Aight…Apple’s turned in 3.3.1 and I’ve accepted it. What next? Adobe has publicly stated they are not removing the iPhone Packager from Flash CS5. This means people will still see the feature. It means they will use the feature. It means apps might still get pushed to the App Store. The big question for those who are 3.3.1 aware: Should we still build iPhone apps with Flash CS5? Let’s talk rally for a sec. Oh wait…maybe I should say: Good people of Flash Land…lend me your ears! 😉 Rally Consider this a rally cry. All of you crappy Flash developers, designers, deselopers, and devigners…go home and forget all about the iPhone Packager. Your services are not needed for this event. As some points of clarity, in case you’re not sure if you should stay or leave: if you are a true developer (ie – no design bone in your body) designing your own app…leave, find a designer, and come back. if you are a true designer (ie – no developer bone in your body) developing your own app…leave, find a developer, and come back. if you still, to this day, build landing pages w/ a “skip intro” on it…LEAVE! (forever) Now, those of you still around…keep reading. What if we, the Flash community, build visually amazing and well performant applications for the iPhone and submitted them anyway? This is exactly what we need to do. If we’re building amazing apps, having them run across N other platforms (Android, Blackberry, etc), and perform amazingly well on all of them…it will carry some weight. Until we can prove with action, not...

What I make of Adobe vs Apple (#section331)

I figured I’d post my thoughts on it too. 😀 Read on after the break. Section 3.3.1 I emailed Apple about this earlier today as it directly relates to some upcoming business decisions. Apple has yet to clarify the intentions to us or the public, not surprising. All of this hype could be over nothing. Let’s take the route of everyone being correct: Apple did this to hurt Adobe and the Flash CS5 release. In that case, they are foolish and childish but…their decision. I’m hoping Apple gets slapped like Microsoft did and they can no longer sit in their high chair of arrogance looking down on all others not gulping their kool-aid. Solution: Adobe, try this. If Flash CS5 simply exported an XCode project, Section 3.3.1 would be moot and I’d be a super happy camper. I could take that project and do wonders with it. That’s it. Do that and you’ll have provided a better solution, than presently available anyway. That is not a shot at the Flash dev’ team. You’ve done amazing work but there are many issues w/ the current implementation (see blog post link above), mainly we have to wait on you to make SDK updates and we don’t even get access to the entire SDK anyway. My Wallet Alliance There is a shift happening right now (here, , which is most likely making Dell, Microsoft, and Google quite happy. People are walking with their feet/wallets and choosing other platforms, etc due to disgust at Apple. I will not follow this trend. My Mac is a superior dev’ environment for pretty much everything except...

AIR 2.0: My Wishlist

I’ve been thinking about AIR a lot more lately and it prompted me to think about what 2.0 might provide us in ways of building better AIR apps. So, here is a short list of items I think AIR needs in order to make me happy. FTP support I know…AS3 provides the tools for ftp support and there are a few libraries started but stop depending on the community Adobe, for this one not everything. We need this natively in AIR. Maybe not SWF but AIR for sure needs this. External executable interaction In the simplest form I want to tell ApplicationX.exe or ApplicationX.app to run and pass parameters to it (blah.exe -param value). I know there are security issues and cross-platform compat’ issues but it’d be great if you figured this one out. Direct database interaction At a minimum MySQL, SQL Server, and Oracle. Make the core extensible so we, the community, can grow the available database support but lay the groundwork. You already have a solid sqlite core so build on top of that code-base and allow us to specify a type or something. Pseudo code: connection = new SQLConnection(SQLConnection.MYSQL, …) I know…buy ColdFusion right? Use PHP? .NET? Java? Nix those assumptions. If we want to use them, great, but not in all cases do we have a web server at our disposal. Keep making server integration better but don’t force a desktop app to use a server. Email Support This is just like the FTP support. I know you guys have the tools in place and say it is possible. Well, show us. Provide us with...

AS3: Converting Date() to the Epoch

The Flash Player uses the same epoch as Unix (January 1, 1970). An epoch is “a particular period of time marked by distinctive features, events, etc.” (source: Dictionary.com) One thing to note is the date pertains to the UTC (univeral time coordinated: “Universal time, taking into account the addition or omission of leap seconds by atomic clocks each year to compensate for changes in the rotation of the earth.” [source: Dictionary.com]). Flash can handle this just fine. Let’s get to the code (starting to itch with all of these definitions). One option to get the UTC date: var now:Date = new Date(); var epoch:Number = Date.UTC(now.fullYear, now.month, now.date, now.hours, now.minutes, now.seconds, now.milliseconds); trace(now, epoch/1000, Math.round(epoch/1000)); The only real thing to note is the epoch/1000 is there because Flash uses milliseconds and epoch is in seconds so we divide by 1000 to get the seconds since the epoch. Now, that is how I first did it until I RTFM (read the freaking manual). It felt so dirty and unnecessary. Here is the easiest way to do it. var now:Date = new Date(); var epoch:Number = Math.round(now.valueOf()/1000); trace(now.valueOf(), epoch); //1238595716133 1238595716 Notice the first trace shows a lot more numbers since it is milliseconds since the epoch. The second number is the epoch/1000 and rounded. Don’t forget to round or you’ll get three decimal places. Date.value() is the trick here. By definition: “Returns the number of milliseconds since midnight January 1, 1970, universal time, for a Date object.” (source: Adobe LiveDocs) Anyways…that’s it. No need to pontificate (been wanting to use that word; lol) anymore about such a simple task. UPDATE...

Accepted in Adobe Community Expert program

Yep, I’m accepted and STOKED! I won’t get long winded but… 4 score and 7 years…{hrmm, clears throat}…wrong speech. 😉 Seriously, I’m excited and happy to be accepted in such a great program. I look forward to learning more about it and continuing my “community service” as I did when I was a UG manager. Special thanks to Rachel Luxemburg and...