Dec 30, 2008

My love/hate relationship with the bleeding edge

I like pushing technology in to new and unique spaces. Lets take a peek at my latest works with SpaceVidcast shall we? Today we stream at 320×240 with a stunning 23 frames per second (why 23 and not the standard 24 or 23.976 as it really should be I have no idea, ask Ustream.tv.) I have decided that this isn’t good enough. I want to stream at 640×360 (which is 16:9) and archive at 1280×720 for on-demand distribution. That would be High Definition for those of you wondering.

Problem is, HD switchers are scary expensive. I can get in to a starter switcher for around $20,000 USD but that doesn’t include any of the cameras, DDRs (video deck), CGs (graphics), etc., When it is all said and done I’m probably looking at at $100,000 solution like the Slate 5000 from Broadcast Pix. While that is an uber powerful solution that can do everything I want, and slice bread, and bear my firstborn it is a bit out of my league and even that is a entry-level system (although the high-end of the entry level. Come on, I need more than 1 M/E people.)

How about a video toaster you say? No HD. Tricaster? Same thing. Sony Anycast? Sham. HD inputs that scale to SD for the processing then back to HD for output (hint: that makes it SD, not HD.) So these companies can’t do what I want today. I guess I’ll build my own!

My thought process is actually brilliantly simple. Get a Mac Pro and fill it with three Blackmagic Intensity Pro cards. These cards allow me to capture standard definition analog, high definition analog and high definition digital via HDMI. The Mac Pro is about $3,000 while each Blackmagic card is $350.00. I’m going to round that to $4,000. By adding the FREE CamTwist software I now have an HD switcher that can’t do anything. Oh sure, I can switch between cameras, add graphics, roll DDR clips but I have no place to put these clips. HD is too processor intensive to stream on the same computer and, well, Adobe does not make a Flash Media Encoder for the Mac.

The next piece of the puzzle is to be able to stream that. My plan was to get yet another BlackMagic Intensity Pro card, plug it in to a cheap(ish) PC and run Adobe Flash Media Encoder to stream live. This would be great! I take the second output of the Mac, tell CamTwist to display the full screen video on that screen, grab a $15.00 DVI to HDMI cable and plug the Mac in to the PC. Not only do I offload the computer processing for live streaming on to a completely different box, but I should keep a fairly nice signal since it is pretty much a DVI pass through from one to the other. And at first it looked like it would work!

CamTwist can see the Intensity board! The PC can see the secondary screen from the Mac, which was a worry because the Intensity Pro doesn’t support RGB (luckily my Mac can spit out 4:2:2 YUV). I was almost done, all I needed to do was open Flash Media Encoder and stream to… oh no! Flash Media Encoder can see the Intensity board, but can’t scale it down! The frame rate is an insane unsupported 60.4fps (wha?) and the video is locked to 1280×720. I’m not about to stream THAT on the Internet!

Here I thought I had a $6,000 solution that would make the likes of a $100,000 studio tremble, but I get slapped in the face by Adobe. Again.

As is the issue with all bleeding edge technology there’s that one thing that juuuust doesn’t work right. I found it. Now I need to find a clever workaround so I can get the output of the Mac in to the PC and stream it at 640×360 while archiving at 1280×720. No ideas just yet, but I feel I’m close. Then my dear friends, SpaceVidcast will be HD on-demand and have higher quality live video than even NASA has today for their own launches. Oh yes, I can do this for under $10,000! I just need to avoid using that cursed Flash Media Encoder. I think Adobe just has it out for me.

15 Responses

  1. fox814 says:

    very interesting…its a sign…a sign to get the Broadcast Pix system.

  2. Jelfering says:

    Warnock did lean over and whisper in my ear that he did not like you. He said it would be his new mission to annoy you in any way he could, no matter what the cost.

  3. Kyle says:

    Couldn’t you split the the DVI out of the Mac pro and send one source to the intensity card in the second computer and the other source could go into a cheap SD tv capture card. I’m sure the capture card could manipulate that signal into something stream-able and you would still maintain the HD source for archiving. Just a thought…

    • The problem would still be capturing that DVI. Since DVI is a digital signal I’ll need a capture card that can grab either the DVI or the HDMI and re-stream that via Flash Media Encoder. I have yet to find a card that will work properly with that wonderful, wonderful program. So yes, I can split the signal… And I can capture the HD side… But I still can’t stream :(

  4. Adam says:

    Ben I know you’re not a big fan of AVID, but I would honestly check out the Avid Mojo SDi. It might work out for what you’re trying to do. It has DVI and optical audio inputs and a clock sync so if you could output your Mac over DVI into the Mojo and optical audio via S/PDIF or adat from your ProjectMix board. Buy an ART word clock generator for a 125 bucks and lock them together and you might solve your audio problem too.

    If it works with Media composer you’d be pretty golden.

  5. Ben Vassmer says:

    We are having a similar problem to your problem. We have a PC that is taking an HD feed via HDMI from a Canon HF100 HD Camera using the Black Magic Intensity Card, and we are trying to broadcast it out to the web. The only difference is we are trying to broadcast HD video, not just archive it. We are broadcasting a class from our campus here at OU-Norman up to OU-Tulsa. HD is needed because Grad level Partial Differential Equations requires you can read the multitude of notes the teacher is giving. :D

    We tried Adobe Flash Encoder, with the same results: Fail. It would see the card, but not initialize it.

    Right now we are using Windows Media Encoder 9 (blech). It works okay, it streams Full HD (1920×1080) at about 18-23fps using a XP Machine (3GHZ Core 2, 4 GB RAM). The only issues we have are about 1-2 hours into streaming the audio and video de-sync. We also have about a 7-12 second delay to the remote location. This makes it difficult, but not impossible, to carry on a two-way conversation. (They have an IP camera broadcasting SD Video back with about a 2 second delay)

    I wish the Black Magic Card would work with Flash Encoder… it would just make everything much easier. Be sure to post if you have any luck with this setup!

  6. Brian says:

    Wow, very interesting read! I have been looking to stream video on the internet (through public sites like JustinTV, UStream, Mogulus) and it’s nice to see someone detail their experience like you do.

    Tell me if I’m reading this wrong, but you got 1280×720 to stream with the Intensity Pro and Adobe FME? That’s amazing (to me at least). I’ve read about people not getting the Blackmagic Intensity to work with FME on the Adobe forums, and while the Pro works, there’s no audio unless you buy a $250 plug in?

    The highest settings under my card (crappy ATI TV Wonder Pro 650) in Adobe FME are 720×576 SDTV (or 720×480 “EDTV”) at 60 frames per second. It’s not HD (although companies call it that, LOL), but better than the 320×260 crap that most people put up. Time for an upgrade but didn’t want to shell out the money for the Blackmagic if it didn’t work.

    • Bencredible says:

      Well, sorta. I do have the card working with FME and rather that use the built in audio inputs I use the analog audio on the computer which bypasses the need for the $250.00 AAC plugin. We don’t stream 1280×720 as the bitrate would be too high, but we do stream at 640×360 at around 22fps. If I had a bit more CPU power or if I had scaling on the card itself (The BMI Pro does not scale, the computer does) then I may be able to get the frame rate higher. I’m looking in to options for 1280×720 but the CPU requirements on both the compressor and the decompressor (or the viewers computer) are too high right now.

      We DO try and archive in 1280×720 progressive though. That also takes a lot of CPU and QuickTime Broadcaster has a hard time keeping up. If I put everything in 640×360 mode then it works fine, but as soon as I jump to 1280×720 I drop to around 15fps. Still working on that.

      If you watch Spacevidcast live on Friday mornings at 2:00am UTC (which is Thursday nights in the US) you can see what we were able to accomplish. Still working out the bugs, but we’re getting there.

      • Lou says:

        Are you able to maintain sync when bringing the video in through the BMI Pro and audio through the built-in sound input? I just got off the phone with BM support and they didn’t seem to think the audio would remain in sync.

    • Bencredible says:

      A quick update. As of STS-125 we started streaming at 1280×720 via the On2 VP6 CODEC. Needed to do some voodoo to make it all happen, but yes, I’m streaming HD via Ustream right now.

  7. John Oliver says:

    Can you post the settings you are useing for WME9? Also, has any one found any other type of solution for streaming?

    • Bencredible says:

      I’m using FME 2.5 (have issues with FME 3 seeing the BMI card). Don’t use WME, don’t like the WM CODECs (although I’m not very fond of VP6 either).

  8. Tracy Peterson says:

    I haven’t had much luck getting either version of encoder to find the BM card (an HD Extreme3) at all. It’s driving me nuts, but I’m hoping it has something to do with x64 versions of the drivers. I’m going to try it on a non 64 bit install.

  9. My Domain says:

    Joe…

    Check out my domain sometime….