PATRICK JOSEPH BESONG: July 2009 Archives

Wirecast and UStream Live Broadcasting

| | Comments (0)
Recently we did a live broadcast of our department's Learning Design Summer Camp, a two day festival for geeking out on all things instructional design. We wanted to try and do a live broadcast, so UStream.com was the service we were using to go live. We also wanted to do live switching between what is shown on the auditorium screen and the speakers, so I used Wirecast s/w for that part. Wirecast is pretty cool because it allows you to have 2 video sources, which I hooked up to my Mac's single Firewire port via a Belkin 6-port Firewire hub. We set up the video cameras in the auditorium's AV booth in the back of the room which had a sliding glass window we could shoot through. Here is a pic:


AV booth in Kern Auditorium

So, you can see our setup. The video camera on the tripod was shooting the speaker at the podium. There is another video camera sitting on the desktop (actually on some battery boxes to make it the right height and angle) that was only trained on the auditorium screen. The computer on the left was for monitoring the live broadcast's sound and video, which my associate, Kim Winck did while she operated the video camera that followed each speaker. The one on the right was the one I used to run Wirecast and broadcast to UStream. Luckily we were able to get a wired connection in there so we didn't have to compete with the folks in the audience using wireless connections.

They had an RCA line level audio output there (on the right just below the desktop) where we could just plug in to the house sound. I used a stereo RCA to 1/8" audio jack to plug into my Mac's audio Line In jack. Normally plugging in to the Line In will result in poor audio, but since this was line level audio I was able to get good sound. If it's not, you need to use a USB adapter for your mic input. 

Once I got the audio and video hooked up, I turned the cameras on before starting Wirecast. I had settings saved from a couple weeks of testing that I used which made setup easier. If you don't have your cameras on, it will ask you to identify the video sources you have listed in your settings. Once they're on and working you can see which video source you want to switch to and just click on it to toggle between them. You have a choice of many transitions, but I just used a simple fade, which worked well.

Wirecast and UStream both have an archiving feature. Just click the Record button and Wirecast will save a copy of the broadcast to your hard drive already compressed. UStream will also do this and will allow you to go back and trim some video off the beginning and/or end of the video after it's available. I did run into issues with both of them, however, and it was very disappointing. Since we were doing a live broadcast and the sessions were an hour and a half long, somewhere along the line we would have had to stop the broadcast and put in a new tape, then reconnect to UStream, which would start a separate video. I did not want to do this, because initially we were going to have to use a wireless connection and I didn't want to risk not being able to connect again, and the fact that it would break up the live broadcast. So I opted to rely on Wirecast's recording to my hard drive. I figured that between Wirecast and UStream we should get a good recording. I was wrong. 

When I reviewed a couple of the recorded videos on UStream, I found that the audio was out of synch. We're not talking a few frames here, I mean that the audio from one person was playing while another person on the video was speaking. Checking my hard drive for the recordings that Wirecast made, I found that the problem was even worse. On one video the audio did not start until 29 minutes into the video, and all the audio that would have been after the video stopped recording was of course lost. I was able to save a couple of the presentations by re-synching the audio with the video in QuickTime Pro, but the rest were lost. This was very disappointing, needless to say. The session I recorded after the one that went incredibly bad seemed good, so I have no idea what went awry. It was a bit disconcerting after all the tests I had run previously. 

I think if I were to do this again, I would split the audio feed to both cameras so that they play audio when the camera is switched. I would also try to convince the event planners to try and keep the sessions under 80 minutes, which would then fit on a tape. That way we'd have a good backup source (although it would take a lot of work to resynch both videos). As it was, though, we were able to do a live broadcast, which included chat, and we were able to record most of the sessions for later playback, which I was able to upload to our YouTube presence the next day with very little editing. 

Was the Cowardly Lion Really in Fact Socrates?

| | Comments (0)
While researching what Socrates looked like for a project I'll be involved in, I came to the obvious (to me) conclusion that the Cowardly Lion from the Wizard of Oz movie was actually modeled after the marble bust of Socrates that is on display in the Louvre. I'm putting a side-by-side comparison of the two to prove my point.


comparison between socrates and the cowardly lion from the wizard of oz

Now through the magic of Photoshop, the secret is finally revealed...

comparison between socrates and the cowardly lion from the wizard of oz

Videofurnace demo

| | Comments (0)
I attended a presentation hosted by TNS of the Video Furnace IP Video solution. This was a very impressive array of hardwarre and software. VideoFurnace is a cross platform distribution system that could be useful in distributing video at Penn State. VideoFurnace recently merged with the H.264 encoders and codec systems vendor HaiVision. If you are connected to a Multicast enabled network you can watch C-SPAN & C-SPAN2 24/7 using the VideoFurnace InStream Viewer thanks to Northwestern University. Here is a wiki page with instructions on how to access the player. Using their Makiio encoder on the broadcasting end, they can create video streams in both SD and HD which can stream across multicast or unicast networks simultaneously using h.264 compression. The latency is only 70 milliseconds, so you can see what is broadcast in less than a tenth of a second. Almost real time. The video can be broadcast live, recorded prior and scheduled to play at a scheduled time, and also archived for later playback. The encoders are small, lightweight, and can be  set up to be stationary or portable. They can be powered by a battery pack. It only takes 13 watts to run. The encoders are always on and take very little manpower to support. They are very reliable. On the user end there is no video player to download a java applet runs the video in the computer's RAM, not caching on the user's computer, so it could be TEACH Act compliant. It can be used to broadcast television  via IP. Dartmouth runs 67 channels on their system and Northwestern runs 45 channels. This will replace their RF systems. 
The activity of any user can be tracked, and content can be controlled using LDAP credentials. Emergency messages can be broadcast immediately to all users, and you have complete control over what anyone sees. It can also broadcast to iPhones if a $1000 Wowza media server is used (Wowza is a competitor to Flash Media Server). The admin software can create histograms and usage data for all chnannels.

MacSpeech Dictate for Speech-to-text Video Captioning

| | Comments (5)

I was going to write a blog post about MacSpeech Dictate, a piece of software that I got today that does speech to text, but I thought "Why type it when I can just say it?" So, that's what I'm doing right now, and you get to see how well MacSpeech Dictate works after a short training session. I was really surprised how well it interpreted almost every word that I said. 


We had done a project last year for Philosophy 12 that required us to caption many videos. We used Dragon Naturally Speaking to make a first pass of the text of the videos. Trying to capture the text directly from the videos will not yield very good results, since the speaker has not done any training in MacSpeech Dictate. The trick, however, is to wear a headset microphone where you can hear what is being said in the video, and you repeat it into the microphone. Since your voice is recognized by the speech to text software engine, you get much better results. It is still pretty tedious, however, as you need to keep replaying the video to make sure you got the words right. But once you get through the whole video, you have a pretty good text transcription of the video. Now to make captions, I can just import this text file created by MacSpeech Dictate into my Parity software. I just set in the Parity preferences how many characters per line I want, and when I import the text, it will try to break the text up into that many characters per caption, and also try to break at commas or periods. Then I just need to load my movie and click the Set Timecode button once, and then just hit the Return key as each phrase is spoken in the video. Once I get to the end of the video, I'm done. I can export as one of 14 different formats, including SRT, which can be uploaded to YouTube where it is set as captions.


As I was using this process to caption Cole's latest YouTube video, "A Response to a Call for Amazing Stories of Openness from PSU", I got to thinking "What if I got Cole to record himself reading the training script for MacSpeech Dictate?" So, I could play back his recording of the voice training script into MacSpeech and create a new speech profile for Cole's videos. I'm thinking I could possibly get a more accurate direct translation from the videos this way, and I wouldn't have to go through the process of repeating everything he says. I could just let the video run and let MacSpeech transcribe it for me. It probably won't be as good as live training, but I think it might be worth a shot.


So, with very little editing (I'd say it got 95% correct), I've typed my latest blog post without typing it all. What do you think?