VLC Player For Android Is Almost a Reality
An anonymous reader writes "Android, as a platform, has always fallen a little short when it comes to media playback. The native apps that come with every Android device don't make it easy to watch movies. The only native app that allows you to navigate movies is the Gallery app, which is great for photos, but bad for movies. Among the many contributions to the Android ecosystem made by Austen Dicken are his developments in support of the Motorola Droid line of phones for Cyanogenmod, Embedded Gentoo for Android, and, as a fun side project, he's playing with VLC for Android. Austen describes his work on VLC for Android to be pre-alpha at this point in time, but he is still able to show some impressive results regarding basic functionality. "
Going from the N900 to the Galaxy S II when it turns up is going to be a culture shock, I honestly hadn't thought that video playback would be a concern.
RIP N900 :(
(Yes I'm a bitter fanboy)
Or VLC For IOS!!! or any number of video players for IOS My only complaint for the Non-Apple video players is that for 4:3 content, it is not flush with the screen, must be an API limitations. 16:9 content is flush with no conversion needed.
There Can Be Only One...
I'll be interested to see if it has full software rendering engine bypassing the hardware decoder. I don't see why it shouldn't, I believe that's what the desktop VLC does.
The hardware decoders on a lot of phones/tablets leave a bit to be desired. Why, for instance, would you limit hardware (nook color) with a display with a native resolution of 1024x600 to hardware accelerated playback of 854x480. ugh. For the life of me I couldn't figure out why my handbreak encodes weren't playing any visuals at native res until I looked up the stupid 854x480 limitation.
Samsung's TouchWiz 3.0 packs in a fairly decent media player - it's been able to handle just about every format I've thrown at it (granted, I only have AVI, MP4, MKV, and MPG, but still); the only thing I wish it could do natively is display subtitles, for when they're embedded in the MKV's.
I wouldn't call 'pre-alpha', 'almost a reality'.
I've been using android since the 1.6 days and I've never had issues playing any movie or video right out of the box. In point of fact, it's the only thing that's impressed me about the Android OS, that is *could* play anything thrown at it.
Anyway, I like VLC on the desktop, so a fully working one on Android would only be a plus.
So rise up, all ye lost ones, as one, we'll claw the clouds.
Yes, there is hardware acceleration, but it depends on the chipset. The Tegra 2, for example, can play back h.264 1080p24 (/p30/i60) perfectly happily, but ONLY Main Profile. Throw CABAC and weighted p/b frames at it and it'll throw a wobbler, so no High Profile.
There are several existing free apps that provide a nice browsing interface and software decoding for any codecs not supported in hardware (usually pretty slow, think 480p30 max) and hardware decoding for unsupported containers (e.g. MKV. I think MoboPlayer can even handle Ordered Chapters). I can't see VLC doing anything different other than having the traffic cone logo and a hideous interface. And probably dodgy subtitle rendering.
^^^ What they said.
Not only MX VP, but others play everything just fine too. I was bored the one night and tested quite a few different video players plus the stock player on .avi, mp4, mkv, and vob videos. Some didn't like VOB or mkv, and some that did didn't play them smoothly, but a few played with no issues.
Also, a lot do streaming just fine now... one such is Avia which is made by a company my friend works for (Videon-Central) who's done quite a bit of work on GoogleTV stuff (both software and hardware wise). Right now it's focused as an app for GoogleTV devices, but the APK my friend sent works absolutely fine on my Galaxy S GT-i9000 (running CyanogenMod 7) for both regular videos as well as finding DLNA/streaming devices on my network (including my Belkin router with the USB ports). The only thing I haven't tested with it yet is if MKV's and VOBs play smooth or at all (and if it will stream those etc etc.. sometime I'll get around to that). The layout is pretty straight forward, though I don't care for how it automatically plays the next video after the one you selected is done playing.
Anyhow, you may or may not find it in your market. I know it doesn't come up in my market which is why my friend had send the apk to me.
>"The only native app that allows you to navigate movies is the Gallery app, which is great for photos"
No, it is NOT great for photos because it doesn't understand what a directory structure is. So it flattens out all my subdirectories into just two levels, making it impossible to find anything. Sure, it might work fine for someone just using the camera and with a few directories of stuff. But for someone who wants to load their card with thousands of pictures so they can use their tablet as a nice display system- it is a mess.
Unfortunately, not a SINGLE photo display app I have tested can properly display nested subdirectories with more than 1 nest. And Gallery does the same crappy thing for videos too, it is just that I don't have tons of them, so it isn't an issue.
The screen shot has an R5 pirate copy of Toy Story featured in it.
Guess they forgot to rename the file before taking a shot. Noice.
You don't have to let the complaints bother you.
Way to go AC. Sling verbal insults at the very same people you want help from. Does that work method work for everything else in your life?
Or contribute (iPhone VLC port) only to have your contribution buried by one of the authors on philosophical grounds, depriving users of choice.
It's called a troll...
The non-troll way to say it would be "I'm so happy VLC is coming to the android, my life is complete and the sun is shining"
Contribute good code and people will thank you, crash their computer and they may have a few things to say, imagine that :)
You know when you post like that you just sound like an idiot rather than making any real point, right? You're completely undermining whatever message you're trying to send by appearing so retarded. It's the same principle as people who use 'M$' or '$ony' or 'Nobama.' Even if you have a valid point to make about the deficiency of a particular person, platform or company, you IMMEDIATELY undermine that criticism by sounding like a fucking five year old trying to think up the meanest insults he can without getting scolded by his teacher or parent.
Here's how your post was probably intended to sound:
"Sounds like the submitter is uninformed. Android plays most media formats fine and even those that don't work can generally be viewed by a third party player such as Mobo or Rock for free from the market. It's a lot more flexible that way than an iOS device which generally requires a purchased piece of software because of Apple's store policies."
Here's how it actually sounds:
"Derp."
Nobody cares what the CAPTCHA for your post was.
Unless he's planning to build in hardware decoding support for H.264, VLC won't be anyone's main player because it will burn up CPU like nobody's business. It's good news for old/esoteric formats though (MPEG-1? .mod/.s3m/.xm/.it modules?), which don't need a lot of CPU to decode.
Intel's Atom and the Cortex A9 have about the same performance clock-for-clock (the A8 was a bit slower, the A9 is a bit faster). A single-core 1.6GHz Atom can, from personal experience, handle 720p h.264 content in software. Any dual-core Cortex A9 smartphone at 1GHz or above should be able to handle 720p30 h.264 video with the right codec. A dual-core A9 at higher clockspeeds (the SGS2 LTE and HD LTE are at 1.5GHz) can probably even do 1080p30 if you cut some corners (skip in-loop deblocking). Of course, there's little need for anything higher than 720p on a 4.5" display, unless you're plugging your phone into a larger display.
They're shipping some pretty sophisticated programmable GPUs in modern ARM SoCs these days, I wonder if there'd be any gains to be had by offloading some stages of the decoding pipeline in a software renderer to the GPU (in a purely shader-based fashion, since I don't think there are OpenCL interfaces for the SGX or Mali, and nVidia does't plan CUDA until the Tegra 3)?
VLC is GPL3. GPL3 is incompatible with the App Store due to the anti-Tivoisation provisions.
Regardless of that being true or not, it doesn't matter - because that is not how VLC was pulled from the app store. As stated. one of the VLC contributors had Apple pull it - Apple published it to the store just fine and it was up for a while.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Yes, but handling it in software isn't anywhere near as efficient. And less efficient means more power consumed. Software video, particularly processor intensive video like h.264, will suck through battery like nothing else.
Then what am I running? When I got the tablet last week, I chose VLC Direct from the Android Market. Works just fine. Guess this refers to a fully-free version, since this already-working project is a paid application...
Is it really fair to complain about not being able to play 5.1 audio tracks on a phone
When you don't have the time to transcode everything to 2.0 in advance, yes. Or when the phone has a mini-HDMI out, yes.
heh.
It took forever yesterday on my brand new quad-core i5 desktop here at work.
They'd have to update their dialogue to remind you to plug your phone in.
I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
My little Archos 43IT running Froyo plays mp3, m4a, ogg, wma, flac, wav, ac3, dts, mp2 ....in fact so far it has played everything I fed it with the sole exception being musepack.
As for video it plays up to 720p and works fine with all kinds of containers and codecs i.e. ts, vob, mkv, mp4, avi, wmv, mov containers and mpeg2, h.264, xvid/divx, wmp, even theora. It handles vobsubs and text subtitles as well, and if there are multiple audio tracks the user can choose. It can play all this from internal storage or microSD or from network shares or by streaming from the www. And it has HDMI out.
Try that with your iPod Touch.
VLC on iPhone was killed because it breached the licensing terms of being able to copy it from the device to another device. To quote Wikipedia "VLC was available for the iPad, iPhone, and iPod Touch from the Apple AppStore, but was pulled due to a licensing conflict between the GPL and the iTunes Store agreement.[11]" Referenced details can be found here.
The story was even reported on some tech blogs...
From memory the guy who forced the removal by suing Apple was an Linux/Android developer. So, no conflict of interest there at all. But feel free to blame Apple.
Sara
Designer, Gamer, Macgrrl in an XP World
What I've always wanted is an app for my phone which can stream internet radio stations. Most online radio stations stream at a low bitrate and don't require much bandwidth, but I haven't yet found an app that can just open any stream I want from a URL. Whenever I search the market for radio apps, all I get are a bunch of crapware that stream preset stations you can't change.
wow, I never knew about this. No wonder my VLC player on my ipad hasn't been updated in close to a year. :( I guess I should count my lucky stars that I got it when it was still legit.
Could I watch DVDs? The regular VLC has a feature where I can play a DVD files folder just like it was the real disc. This is something I might desire to do on my phone.
... and has a good folder based management GUI. That makes the Sennheisers sing and puts a smile on my face.
Archos have their own special sauce, not sure if they have custom HW as well (probably?) but given their roots as a media player company its not surprising.
My old archos 70 could do 720p x264 in mkv containers with a 1Ghz A8, whilst my Tegra2 superphone fails miserably.
Thanks for the detailed answer. It's fitting that your reply is modded 4, but it's really strange that someone saw fit to mod the question itself to 0. How is the question a troll? In a story about VLC, is it trollish to ask whether it'll be able to do take advantage of hardware playback?
I'm not a lawyer, but I play one on the Internet. Blog
http://wiki.videolan.org/AndroidCompile
It's very simple. I have it running on my Android phone. Its lacking features but my music and vieos are playing.
"I just can't sit while people are saying nonsense in a meeting without saying it's nonsense" J Watson, Sci Am 288:(4)51
To watch almost anything on android you can use Emit app. It streams movies to the device and encodes them on the fly. If you want to watch them on the phone without streaming it supports pre-encode and download movies to the device. There is a free version of it ;)
https://market.android.com/details?id=tv.wpn.biokoda.android.emitfree
When I get the VLC Android code when its released, will I be able to distribute my own movie (therefore my copyright) integrated into a custom Android app with the VLC player? Will the license let me charge people to download the app from my site or from the Market?
Will I be able to bundle with my movie a skeleton app that looks to see whether VLC is already installed on the device, and play my movie via IPC intents, and download the VLC player code only if it's not already installed by some other app?
--
make install -not war
How the heck did the iPhone version of the app get released over a year before the Android one?
When I bought my Samsung Galaxy Ace, someone suggested Moboplayer for media playback. I can't fault it - it works very well and allows me to stream video and audio from my Tversity media server straight to my phone.
wow, I never knew about this. No wonder my VLC player on my ipad hasn't been updated in close to a year. :( I guess I should count my lucky stars that I got it when it was still legit.
It was never legit.
Apple were just keeping quiet about a GPL violation
Watch this Heartland Institute video
Shity name but it's a good app, works well, good controls - plays all I throw at it
Good lord am I happy I ditched the iphone, SO happy. I can play 350mb (cough) files directly on my Android, no conversion, no damned sync with a cable - just pop them on the phone and play. Fan tastic - just how it should be too, I can't stand limiting technology.
Oh yes I can put it on there wirelessly too, via SMB - just use "Samba File Sharing" (Red S icon for the package) - it works perfectly - drag and drop to a mapped drive in my POCKET
â(TM)¥ Android
Apple were just keeping quiet about a GPL violation
In my opinion, there was no GPL violation. Since that aspect wasn't tested in court, it's only the opinion of the developer who made the claim to Apple, and Apple doesn't want to be put in the position to be liable for that. The argument was that the distribution terms of the App Store are incompatible with the GPL, but I disagree. If memory serves, the dispute was over the inability to freely distribute the content. However, since the content had no monetary cost, it was possible to freely distribute it by sending anyone the URL to access the content; the GPLv2 makes no provisions for the mechanism of distribution.
Kind of a self fulfilling prophecy, eh?
You claim that the URL would have been good enough. But it obviously isn't because it doesnt work.
Watch this Heartland Institute video
It doesn't work because of the takedown request; it was not Apple or the porting developers who prevented distribution, but the complaining developer. As both the binaries and the source for the iPhone VLC port are still available, nothing has really changed except the scope of compatibility.
The source code to the VLC iPhone port is freely available available, the idea that the distribution of the binaries is more important than the distribution of the code is a bit backwards. Certainly the VLC team didn't think it was a problem, as they approved and aided in the port. Only one party objected, and he conveniently waited until after the work was done before objecting. He stifled an opensource project, firmly establishing himself as an enemy of opensource and consumer choice.
There are many android video players. There are streamers, like plex. Mobo player works for most media files except MKV.
Showing us a link to a site that shows a picture of a movie playing isn't the same thing as showing us progress. I'm not dumping on this guys accomplishment but whoever decided to stick a picture (a sole image) of a screen snapshot to demonstrate progress in video on Android is a bit in outer space.
Show us an mkv file playing on that device with audio in sync and I'll say we have progress.
You can lead a man with reason but you can't make him think.
Yeah, there are a bunch of Android media players, but they're all using essentially the same low-level code at some point. This is obvious because they're all essentially flawed.
Start with a video file that's just at the edge of the system's ability to play. I was messing around with AVC in 720p, and found that on my Android tablet (nVidia Tegra 2), the system ran into trouble playing 1280x720/24p at around 6Mb/s, depending on the encoder used.
When a player can't always decode every frame, the proper thing to do is to drop frames as necessary to maintain visual sync to audio. However, on Android, in a dozen or so players, I found that's not what happens. In fact, the players work very hard to decode every video frame, effectively running the video in slow motion. However, the audio keeps going in realtime. So before long, the audio has significantly walked in front of the video. Result: unwatchable video.
This ought to be an easy fix enough fix, there are decades of historically doing this right on PCs. Windows Media Player has even done this correctly... pretty much any PC media player will (try a 1080/60p video file on a typical laptop if you doubt this... it'll generally play jerkey, and VLC is pretty bad at playing such a file, but it does maintain A/V sync, as will pretty much any other Windows or Linux media player, even when the PC isn't fast enough to actually play the video).
On the other hand, VLC is terribly inefficient on PCs. Most of the time, they don't care, and there are nice things about VLC as well -- it plays practically anything, does transcoding, and all without crapifying your system with hundreds of useless CODEC plug-ins. But on mobile devices, efficiency is the most critical thing. And you're not getting AVC and other heavy CODECs decoding on the ARM alone -- VLC can skip the latest video acceleration on PCs and get away with it. It can't on mobile devices.
-Dave Haynie