Jump to content

HD video/audio support using the stock player


Guest arad85

Recommended Posts

Whilst we (err Paul - well done :P) is concentrating on hacking this thing to within an inch of it's life, I, for one, would like to know what the device is capable of for video decode.

OK, we know that the device should be able to playback 1080p content in H264 in base and main profile and 720p in base, main and high profile (see: http://blog.linleygroup.com/2010/01/tegra-...ed-record.html). People are not having much success with this as it appears the standard media player does not have support for .mkv files. My guess is no other media player will use the hardware acceleration on the Tegra, so trying to run anything other than the stock player will result in failure.

Looking at the wiki page for Android here: http://en.wikipedia.org/wiki/Android_(operating_system)), it appears that Froyo supports "H.264 (in 3GP or MP4 container)". MP4 is quite restrictive in what it can play, see: http://en.wikipedia.org/wiki/Comparison_of_container_formats. Does anyone here have the tools/knowledge to take a "standard" 720p .mkv containing an H.264 encoded stream at up to High Profile, possibly converting the audio into a format accepted by the .mp4 file format (see the comparison page) and then remuxing to an .mp4 format file? My guess is that will play correctly.

I'm not available for the next few days, and don't have a Vega yet, otherwise I'd figure out how to do this. Anyone care to take up the challenge and see what we have to do to .mkvs to make them play on the Vega?

Link to comment
Share on other sites

Guest SilentMobius

I really don't get how anyone expected mkv containers to ever work. Android has never supported mkv, and more than that, outside of open source ports and HD torrents virtually nothing uses mkv.

So what Audio codec/profile do y'all think is the most "common", some variant of AAC?

Edited by SilentMobius
Link to comment
Share on other sites

Just a thought (from what ive heard about playing MKVs on a PS3) - all that may be needed is to re-package it into a different container format..

ill look into it when i get home tonight.

Link to comment
Share on other sites

Just a thought (from what ive heard about playing MKVs on a PS3) - all that may be needed is to re-package it into a different container format..

ill look into it when i get home tonight.

Thanks

Yes, I think that might be all that needs to be done here (unless the audio is DTS). It's not clear what the support is for AC3 either... I remain convinced the right runes will enable most things to be played - it's just finding out what they are.

Link to comment
Share on other sites

Hi.

The Tegra 2 can only accelerate decode of h.264/AVC main profile.

Pretty much all 1080p content, other than perhaps streaming 1080p, is encoded as high profile.

This boils down to to having to re-encode the video for the tegra2 to play it smoothly.

Alas my hopes of dropping HD content on a device and playing it on random TVs are dashed.

John

Link to comment
Share on other sites

Hi.

The Tegra 2 can only accelerate decode of h.264/AVC main profile.

Pretty much all 1080p content, other than perhaps streaming 1080p, is encoded as high profile.

This boils down to to having to re-encode the video for the tegra2 to play it smoothly.

Alas my hopes of dropping HD content on a device and playing it on random TVs are dashed.

John

If you look at the article I linked to by an industry analyst, it says that it can do 720p at High... That may be enough for many people :P

Link to comment
Share on other sites

Guest Bisto321
that's why boxee gave up on the tegra2 and went to intel.

Not much help to you Tegra2 guys but my Folio would not play mkv either - I have wrapped up all my bluerays into mkv(x264) for network storage and viewing and was really dissapointed that the nvidia platform failed to play them.

My Galaxy Tab (running an intel PowerVR chip) plays all of them without any problem - 1080p is smooth as silk.

You guy's are on the bleeding edge, you may have to wait for the software/hardware combo to catch up! or recode all your mkv's!

Link to comment
Share on other sites

Guest matneee
If you look at the article I linked to by an industry analyst, it says that it can do 720p at High... That may be enough for many people :P

I took a 720p High Profile x264 in MKV container, with audio encoded in AC3 as a test sample.

After a direct video stream passthrough into a .mp4 container whilst recoding the audio to AAC, the audio was fine, but the video was too jerky to watch (3/4 fps at a guess).

Basically the high profile is a problem, even in containers that the hardware accelerated system media player can use.

EDIT - although I presume lower bitrate standard-def high profile stuff might be ok. But there's not a great deal of call for that.

Edited by matneee
Link to comment
Share on other sites

Just for completeness, this is my guess at what needs doing:

Container:

.mkv -> remux to .mp4

Video:

H.264 1080p High -> recode to either main or 720p

H.264 720p any common profile -> no recode

DivX etc -> no recode

Audio:

DTS/DTS-HD -> recode to AAC/MP3 (or perhaps AC3 if supported). Maybe downmix to 2 channels.

AC3 -> maybe need to recode to AAC/MP3

To reiterate, I think you will need to play with the player shipped with the box to get hardware acceleration. I don't believe any other Android player has the hardware assist inside it (anything based on ffmpeg - eg rockplayer certainly doesn't yet). It may be the player shipped with the box doesn't have hardware acceleration either, but then that would be marketing gone wild (a box capable of something, but with no software shipped with it)....

Link to comment
Share on other sites

After a direct video stream passthrough into a .mp4 container whilst recoding the audio to AAC, the audio was fine, but the video was too jerky to watch (3/4 fps at a guess).

Oh dear, that does not sound good. Nvidia KNOW how to make hardware capable of decoding full BluRays - why cripple it so much (unless the tradeoff is power consumption). It is possible the standard player doesn't support hardware acceleration, but that's a bit cheeky if not!

I guess I'll have to bite the bullet and buy one (although I'm out on Saturday, so the chances of me getting one from the next batch appear nil) and do some recoding to see what it does actually support - unless someone here has some recoding experience.

Link to comment
Share on other sites

Guest matneee
Oh dear, that does not sound good. Nvidia KNOW how to make hardware capable of decoding full BluRays - why cripple it so much (unless the tradeoff is power consumption). It is possible the standard player doesn't support hardware acceleration, but that's a bit cheeky if not!

Nah, the standard player does OK in 4000kbps high def mp4s and AVIs that a processor-dependant player like Arcmedia/RockPlayer gets the heebie-jeebies over.

It occurs to me that the tegra processor is essentially only using half it's cores at the moment, mind you. Although whether it's workable to optimise video playback further than doing video on one core and audio on the other is something I can't answer. I'm pretty doubtful though.

EDIT - If you're looking at a transcode (from x264 high profile/AC3 sound, for example), I've found that using same resolution baseline profile, with sound in AAC works well. If you've got a decent nVidia CUDA enabled graphics card, 'badaboom it' will be pretty quick about it. Paid apps unfortunately, but since I spent a miserable year of my life providing tech support for Archos PMPs back in the early AV3xx/AV4xx days, I have neither the patience or hair left to bother faffing about these days :P

Oh, any half-decent multi-threading transcoder should tear through it on a quad-core cpu as well. Transcoding is always an annoyance though, no matter how quick it is.

Edited by matneee
Link to comment
Share on other sites

I'll set things up to batch convert I think... Thanks for the badaboom info - looks interesting. Trying it now (the alternative is ffmpeg, but I'd have to work out the magic runes for that :P)

Link to comment
Share on other sites

Guest HugoQueiriga

Wondering if there is any chance to look at the Galaxy Tab Video player apk and the archos 101 video player apk.

I want to know which dependencies it has.

Link to comment
Share on other sites

Guest SilentMobius

BTW the Borne Ultimatum trailer from here : http://www.h264info.com/clips.html played fine.

Video Type: 1920×816 (1080p), 23.967 FPS, CE-Baseline profile (PS3 and Xbox 360 compatible)

Audio Type: AAC LC Stereo

matnee is right that anything that isn't using the default android video core isn't going to be using any acceleration at all, just cpu (rockplayer, vplayer, etc etc). If the Samsung Galaxy Tab can play Matroka that would suggest that they have added the MKV container to opencore, maybe we that might pop up in AOSP soon? (still won't alter the codet/profile/bitrate restrictions though)

Link to comment
Share on other sites

Guest dirtyfrog

I'd really appreciate anyone posting a mini-guide on suitable software to convert to Vega compatible files, and the best settings to use to get best quality.

Link to comment
Share on other sites

Yeah at the moment stock video support seems similar to 360 and PS3 ... basically MP4 seems to be the way to go for HD files.

I used to use a program that would strip the video and audio out of an MKV file and put it into MP4format... im buggered if i can remember whats its called though. Wasnt conversion so it only took couple of minutes.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.