Hi folks, this is a very specific question but I'm just not able to find any kind of answer...
We are developing an app that can stream movie files over a network and play them progressively (as many other players do like MXPlayer, etc). This will be used for a hotel PPV system and will be run on those Android HDMI sticks with RockChip RK3066 systems.
The client's requirement is to have the video files encoded in MKV format, with several audio and subtitle tracks to cater for international guests. And the video player must be integrated, cannot rely on an external player.
So, we looked to vitamio, which is a multimedia library that can handle MKVs with subtitles... But performance is horrible, juddery playback, cannot use HW acceleration, etc
But, we then found that the videoView that comes with the device, is able to handle MKVs, plays smoothly up to 720p resolutions, AND shows the subtitles. Since stock android videoView does not do this, I can only assume Rockchip has supplied a modified version.
Unfortunately, we are not able to find any documentation on how to list available audio and subtitle tracks, and how to select different ones.
So, tl;dr; version: does anyone know how to get this videoView to change subtitle and language tracks?
Many thanks,
Thomas
Related
I downloaded some Family Guy Episodes that are like 25MB each are .mkv files. I put them on my SD Card, and they play for a few seconds, and than a message pops up saying this video cannot be played. However, the video actually starts and I can see and hear everything. So is there a way for this message to not pop up? Thanks.
BigWorldJust said:
I downloaded some Family Guy Episodes that are like 25MB each are .mkv files. I put them on my SD Card, and they play for a few seconds, and than a message pops up saying this video cannot be played. However, the video actually starts and I can see and hear everything. So is there a way for this message to not pop up? Thanks.
Click to expand...
Click to collapse
The built in video player usually handles .mkv containers just fine. Having said that, .mkv is merely an advanced CONTAINER format that allows for the easy assembly of video, multiple audio streams, subtitle streams, chapters, so on and so forth.
The contents of those streams can be almost anything. And this is where your problem lies.
In the windows universe with advanced players like KMPlayer, GomPlayer, VLC, MPC, and advanced codec packs like Combined Community Codec Pack, it is easy to create a situation where your Windows PC will play pretty much everything you throw at it.
For us, though the native video player is probably the best one ever released on the Android platform, it is not perfect. I would imagine that those MKV containered episodes are using a codec for video or audio that the player is stumbling over, or one of those streams is using a bitrate or encoding method that the player hasn't accounted for.
So far in my experiences the built in player DEFINITELY does not like mkv's where the video format is AVC1 encoded using Nero Digital's version of the AVC1 encoder. Also, I've encountered audio issues with AAC audio. This isn't a problem with the AAC audio though, rather it's bad MKV stream header information where whatever tool was used to mux the MKV failed to put in proper bitrate info.
Bottom line, and I'm speaking from the experience of having over 3 terabytes of media on my media NAS server here at home, MKV containers do not necessarily have any "standards" to them, in the sense that being an MKV doesn't really tell you what the video and audio are within. This is just due to the nature of the MKV container format, but it is a problem slowly disappearing as more people use more standard encoding bitrates and codecs within these containers.
As a suggestion, visit the market and download ROCKPLAYER ARM7 version. When I've encountered video files the native player won't play, Rockplayer usually does (with the notable exception of anything using Nero Digital AVC1). Rockplayer is derived from the FFMPEG codebase, so it's a tad more forgiving in what it will play.
It's either another player, downloading a different set of those episodes, or re encoding those episodes...
Thanks RockPlayer Arm7 worked .
The rock player has been able to play videos (tv episodes) that I was not able to play with the default player. I don't know much about codecs, but it's worth a try.
My phone played some 1.4gb TV show episodes that are x264 video and dd5.1 audio 1280x720 (High definition) inside an MKV file just fine.
Maybe your phone was just having a fit because you were trying to watch episodes of family guy?
Lol, might've been. RockPlayer works though, so it's all good .
Anyone know if the full paid version of Rockplayer allows multiple audio and sub streams?
I need that BADLY.
So I just got the new Epic from Sprint, and I just put on some videos. All of them work, EXCEPT FOR ONE.
I had recently created a video using Adobe Premiere in CS5. It output to MP4 with AVC/AAC (LC) codecs. It plays fine on my computer, my Samsung TV, and even my Samsung Blu-ray player (they all have USB ports for digital media), but no luck with the phone. The phone says displays "unsupported file type," and promptly returns to the gallery.
I have looked at the posted file and codec support, and so I converted copies of the original file to:
MP4: H.264, AAC
MKV: H.264, AAC
DIVX: AVI, MP3
But they all yield the same disappointing result: "unsupported file type." What else could I possibly try to make this play?
P.S. The supported file and codec list that I found is located here (apparently, I don't yet have enough posts for the site to let me link to the rest of the internet):
*ars.samsung.com/customer/usa/jsp/faqs/faqs_view_us.jsp?SITE_ID=22&PG_ID=0&AT_ID=316039&PROD_SUB_ID=0&PROD_ID=559&EMAIL_ID=*
Go to the market and download RockPlayer
Technically, the player was successful in opening the video, since it has a choice of "software decoding" and "hardware decoding" mode. "Software decoding" mode made the video lag the audio big time (>1 sec into playback before lag started). Selecting "Hardware decoding" mode for the file returns the error "This file cannot be played with System Player." After some digging on the company's website, it says that the "software decoding" mode can play just about anything, and while the System Player integrated into Android itself can only play a limited list of files, the System Player can use hardware acceleration.
So the question of the day becomes, is there a media player app that doesn't rely on the System Player for hardware acceleration?
Rockplayer is it...
What is the resolution of your video? 1080p? 720p? (1080p wont work from what I hear..even though Hummingbird does support it :/)
Also, is your audio 5.1? try removing the audio from your file and see if the video works.
Yeah, the video was coded into 1080p. The software decoding mode will play it, but it lags a lot. If Hummingbird CAN handle the hardware decode, then my issue is with the Android System Player's ability to use the hardware, right? If so, is it that Android doesn't like 1080p period, or is it a matter of using a separate program that CAN use the hardware effectively?
The audio plays without a hitch. It's coded for just simple stereo.
Dante of the Inferno said:
Yeah, the video was coded into 1080p. The software decoding mode will play it, but it lags a lot. If Hummingbird CAN handle the hardware decode, then my issue is with the Android System Player's ability to use the hardware, right? If so, is it that Android doesn't like 1080p period, or is it a matter of using a separate program that CAN use the hardware effectively?
The audio plays without a hitch. It's coded for just simple stereo.
Click to expand...
Click to collapse
Yes the 1080p is your issue..software decode is always a lot slower..while the Hummingbird does support 1080p, either Samsung did not include the drivers to make it happen or it is an Android limitation I am not sure...but its 100% in the Hummingbird specification..so its not impossible... just someone has to figure out how lol
For now your best bet is to re-encode it to 720p and you will be fine.
What kinds of subtitles does the default player the A500 ships with support, or does it support subtitles at all? I tried googling, but it only results in a gazillion different video converter apps and ads, nothing even remotely relevant or useful. And Acer's website ain't any better.
WereCatf - I think the two "out of the box" video players (Clear.Fi and Nemo) both suck and only support MP4 codec movies. If you download the free "MoboPlayer" from the Marketplace you will find that it supports MKV - MPV - MOV - MP4 - AVI - M4V plus other video codecs and it also supports popular subtitle formats such as SRT - ASS - SAA etc. I have not been able to throw anything at it that it hasn't been able to handle. Big bonus it's FREE !!
The reason I asked about the default players is that I don't want to waste battery unnecessarily on decoding video in software, ie. I will always be transcoding video to .mp4/h.264 just to save battery.
Throwing mkv files or xvids or something at MoboPlayer will use software decoding, so that's a no-no for me.
Mobo/Rock reportedly will show external subs in hardware mode. So extract the sub to external and convert to MP4.
e.mote said:
Mobo/Rock reportedly will show external subs in hardware mode. So extract the sub to external and convert to MP4.
Click to expand...
Click to collapse
Thanks, that's very helpful then.
mVideoplayer
I use mVideoplayer which supports subtitles.
I often use it to add srt subtitles to mp4 video.
And also it has a built-in subtitle search OpenSubtitles which helpful in searching subtitles..
Hope you like it....
Now...I'm sure that this is due to HC and not the TF itself, but I have to ask: does anyone know if DRM videos (i.e. digital copies w/Blu-Ray discs) can be (or will be available in the future) played on the TF?
As it is I am ripping the DVDs (not Blu-Rays) as MP4s, but it would take me a lot less time if I could just port over the DRM digital copies. (I don't have a DRM remover.)
(And since I already brought up the format, what's the best format to playback? It seems MP4 is the favorite, but I'm also seeing other formats mentioned...like MKV.)
Video's with DRM (Like one's downloaded from iTunes) can't be played on any device that doesn't support that DRM. The digital copies I think are better quality then ripping and converting DVD's. Best way is to find a program that strips the DRM off, just dig around the net some, your sure to find some. Most one's I've done usually take a couple of minutes to strip the DRM, so its alot faster then converting as well.
Regardless of whether the files have DRM, personally I much prefer ripping/converting all of my videos with Handbrake first, as it gives me the option to adjust the quality for the purpose of saving space. Whichever application you choose for removing the DRM depends on what DRM scheme is being used by the source video, as applications like Handbrake won't recognize all formats.
As far as output formats go, mp4/m4v are the preferred containers since they are recognized natively by the Android OS. While it offers more options, such as embedding subtitles and multiple audio/video tracks, the mkv container requires a third party video player to work properly. My personal preference is to use Dice Player, which offers full support for both containers. Be aware, too, that mp4 and mkv can be encoded with your choice of several different audio and video codecs (AAC, mp3, ogg, x264, MPEG-2, etc.), which will also affect whether or not the videos will play in your preferred player. Always check the supported formats of your video player before converting.
Has anyone found what the supported media formats are for the Nexus Player?
I found the following information below when I search for ChromeCast, but could not find the equivalent for the Nexus Player.
From developers (dot) google (dot) com / cast / docs / media
Supported Media for Google Cast:
Streaming protocols
MP4
WebM
Video codecs
H.264 High Profile Level 4.1, 4.2 and 5
VP8
Audio decoding
HE-AAC
LC-AAC
CELT/Opus
MP3
Vorbis
Wav (audio/wav)
Audio passthrough
AC-3
Good question. I couldn't find any information on this either. One thing I'm going to try tonight is the Antutu Video Tester app. It downloads a video pack of dozens of different codecs and tests playback ability as well as the quality of playback. Should be interesting.
I can say from experience that when running XBMC I've been able to play video_ts folders (DVD rips) and MKV.. The only issue I ran into with video_ts folders was that it took upwards of 10 seconds to start play, and sometimes up to 30-40 seconds to return to the movie list when hitting stop.. MKV play without a hitch and are very snappy.
Hope this helps.
You can add VP9 and H265 to this as per asus site:
https://www.asus.com/ca-en/News/hSqRBkE3JWcSw1zC
Very good news as I use WebM extensively with my current Chromecast and Vorbis audio. Will be nice to use VP9!
I'm really getting tired of seeing so many articles claim that the Nexus Player can use VP9. Maybe it technically can, but it effectively never does, especially not on YouTube where it's needed most and makes the most sense. Anyone know how to force vp9 in the YouTube app?