The AVI video container technically does not support streaming. The great video player Mplayer supported streaming AVI over HTTP, however. It starting playing AVI files immediately, and supported seeking in the AVI file. Since I use Linux/Mplayer, I was able to keep most of my videos in AVI format. After setting up the Android TV, I started having issues. I use the popular Android video player, MX Player. When I play an AVI file, it takes about 30 seconds to start. After it starts, it uses the S/W decoder so the video is a little choppy. I can seek in the video, though.
I started to research alternative video containers. H264 encoded MP4 files started immediately in the bundled HD video player. It also used the hardware decoder, so there is no choppiness. I would have to transcode all my AVI's to MP4 files, which can take a long time. My buddy gave me his script for converting files to MP4. He used it to convert the video's he recorded to work on his iPhone.
The next format I tried was MKV. The last time I tried using an MKV file, Mplayer would not seek into the file. I found that kind of ironic. For the current test, I used mkvmerge to convert a file from the AVI container to the MKV container. MX Player started the video with no delay. It also used the H/W decoder! I thought this was the way to go, so I started converting my videos to MKV. A few gigs later, I found a problem. I forgot to test seeking! MX Player does not support seeking in MKV files that are streaming over HTTP, just like Mplayer. Mplayer just ignored seek commands, while MX Player tries to seek, fails, and just sits at a black screen forever.
I still have a few things to try, but I my end up converting my entire video collection to MP4. I do have the horsepower to do it.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.