I am aware that some unsupported .MP4 videos doesn't play in Android.
Video is recorded from default camera app in iPhone and shared to android device.
I've also checked for any available answers. I found FFmpeg library. I guess it is used to stream online videos but I want to play local video stored on SDcard.
I tried to fire an intent and let user choose to play video from any installed player eg. mxPlayer. It shows the error "can't play video" but after clicking on OK it starts playing the same video. Other players like vlc n moboplayer doesn't play the video.
So is there a way to play every recorded video from iPhone in Android?
Related
We are developing android app (other team developed iOs app). The app is basically sharing videos, now when we record a video and play instantly no problem, but when uploading and then playing it gives as Error "Cannot play video"
Strange thing is that iOs can play android and iOs videos, and in android app cannot play any videos.
Video formats are:
Android - mp4
iOs - mov
Can someone help us?
EDIT
Video example: https://sharemestorage.blob.core.windows.net:443/shareme-videos/eed7ec96-c55f-4aa8-bf81-9e22868981a8
So I have tried 2 things: 1. inserted a MediaPlayer and 2. Inserted a VideoView in my layout, and tried setting the Url of the video.
None have worked, both with an MP4 and FLV file. From what I've read on SO, the videos probably have unsupported encoding or such, and my guess is that I need codecs for them to play.
So naturally, I have these questions:
If I have the MP4 or FLV files, can I check which codecs I need?
Once I know which codecs I need, how would I go about adding them in my app? Are there any open source ones, or do I need to write my own?
Note: Chrome on a PC can run these videos just fine.
The problem might be with the video encoding. Android FROYO and Gingerbread doesn't support H264 formats other than "Baseline" H264. So if your video is Mp4 & H264 encoded make sure its "AVC baseline" encoded. Use some tools like "Media info" in windows/Linux and check your video encoding. Convert the video to Baseline if possible.
An alternative workaround is to skip the Videoview and use a video play intent and redirect the playback to an app. User will be prompted to pick a player to handle the playback. Obviously if the video view cant play the file, the default player also wont be able to handle the file. you can choose some other installed player like Mx-Player which will stream the file perfectly.
The problem why the videos does not played was the phone does not have the supporting video codecs.
This is because the video is recorded in some device with specific codec(mpeg4), but that recorded video cannot be played in other devices that does not have that mpeg4 codec.
So to overcome this we need to install the missing codec on to the phone. This can be done by
1) Install MX video Player from the Google Play Store
2) This MX Player itself ask the user to install the codec that the phone needs.
3) Click ok to Install the codec from Google play store. Click “install” and click “Accept & Download”
4) Click Keep Shopping button to start download.
5) After download completed. Then click the video file and open it in MX Video Player to play the video.
6) If it ask to upgrade the player, please proceed to install latest MX player using the Google Play Store(proceed step 3,4 and 5)
7) Otherwise video will get played on MX Video Player.
I'm working on certain project that allows some video editing, uploading edited video to server (Amazon S3) and playing this video on device.
The iOS version is already completed. I'm using there GPUImage to edit and encode videos.
I'm using quicktime container and h264 codec.
Now I'm working on android version of this project and have encountered several problems.
While I'm able to download and play these videos (encoded on iPhone) on the android devices, I'm not able to play the stream of these videos on most of android devices.
I have done some research and one of advices was to add some code to iOS postencoding that converts to mp4 and fixes MooV http://fabiensanglard.net/mobile_progressive_playback/index.php, but it doesn't help.
The only thing that I have achieved after that "fix" is to hear audio track and not getting error message on Galaxy SII device, but on other devices there is the same story.
After that I have downloaded VLC player from play store and it plays these videos.
So my question is, what do I need to do to play h264 stream?
How can I implement my own video player or how can I use VLC source code to play these videos.
I am working with an Android and PhoneGap application and am using the HTML5 video tag to play videos on my web page. When I play the video I get the audio output but the video is not visible. How can I play a HTML5 video on Android?
I've written about this issue a number of times. See my previous answer:
Playing video on AVD with phonegap
Also, I'm working on monkey patching the video tag on Android so hopefully we'll have something even better soon.
I have 5 videos(from server) .
Here is the result for that.
Motorola Milestone 2.1update:
I am able to play only one video.
In other three videos i am able to play only audio(video can't be seen).
In one i am getting "sorry,this video cannot be played"
Galaxy tab 10.1 3.1 honeycomb:
Able to play 4 videos.
In one i am getting "sorry,this video cannot be played"
so i have simply download that video that cannot be played.Below is the results for both.
Motorola milestone 2.1update:-can hear audio but not able to see video
Galaxy tab 10.1 3.1 honeycomb:-not able to play at all.But here one interesting thing this that if i copy this(.mp4) video to sdcard it ask me
No if i select yes it converts the video to wmv and i can play this video.But if i select no then get the error "Sorry,this video cannot be played."
can anybody give me clue what could be problem?if there is a problem with video(i am able to play all these videos with my pc(browser))?
Phones cannot play all formats of video. MP4 is just a wrapper for a range of different video formats. The "Convert" option is converting your video into a format the phone can understand.