Wowza 2.2.4 missing start of transcoded video
Hi, I'm trying to stream some video recorded on an Android phone (using Qik) from a Wowza 2.2.4 installation. It's an MP4-file encoded with H.264 (or x264, not sure). As long as I use the original file and VLC (using a rtsp://[ip]:1935/vod/mp4:[file] command), everything works fine and I get some streaming video and audio over UDP. Problem is that whenever I try to stream a video that I have transcoded from ~2.2Mbps down to ~1Mbps using either Handbreak and Sorenson Squeeze, the streaming will sometimes start but then consistently not react until the 7th second when VLC will scale the window to the correct size for the video, and then not show any actual video until 8 seconds in. The client is getting UDP packets from the start and VLC is playing something, but no video is showing up.
Usually if it's the first stream I open after starting Wowza it works perfectly fine, and the problem can be solved by restarting Wowza. Sometimes I can get stream it once or even twice more before the problem shows up. After that, the problem is pretty persistent, although occasionally it will just vanish by itself and then show up again the next time I try to open the stream. I have not managed to reproduce this problem with the original video, and that one will work fine even after the transcoded video starts having problems. Restarting VLC or the entire client machine does not help, at least not consistently.
Does anyone have any ideas what could be causing this? On one hand, since it's fixed by restarting Wowza and that the video can work just fine sometimes, I'm inclined to blame the server. On the other, since the original video still works, I'm inclined to blame the transcoding. Hopefully it's not both. I guess it could also be VLC, but restarting it doesn't fix the problem and again, it works fine with the original video. I'm seeing nothing in the Wowza log to indicate a problem, and the log for a successful stream and one with this problem are completely identical, save for some port numbers and stream ID. I could post them if it'll help.
I'm not sure, haven't used Handbreak. These are our encoding suggestions (for ffmpeg and Expression 4 encoder)
Alright, I'll try Expression 4. I had the unusual luck of having access to the full version for free.
I had another thought though; Handbreak (and I think Sorenson Squeeze as well) use variable bit rate to encode the video. I'm not sure about the original. Is this something that could play a part? Clearly there's some sort of interaction between the particular encoding and the streaming server since both works separately and sometimes together in a very non-deterministic fashion, while the problem itself is identical between the tests (always 8 seconds for the Handbreak video to start, always 3 seconds for Sorenson Squeeze).
Last edited by tghall; 01-10-2012 at 05:57 AM.
You can use the Expression 4 templates as a reference. You should be able to set your encoder for variable or constant bit rate (vbr or cbr)
Turns out I didn't read the fine print, so my copy of Expression Encoder was not able to encode H264 video. Still no luck with HandBrake (which I've learned is the actual name) or Sorenson Squeeze, but the trial of Adobe Media Encoder 5.5 did work (so far), so I guess the problem is solved. Sort of. I'd still like to know what it was to begin with though.