My problem is that H264 WebRTC Video is playing on iOS 13 in real device as expected.
But it does not play in iOS 13 simulator. It shows red screen as shown in the image.
Audio is playing correctly. Logs also show that decoding of frames are succesful at correct rate.
GoogleWebRTC version is 1.1.29229 from cocoapods
I got the same issue in our app.
It seems to be a bug on the WebRTC side.
I was able to reproduce it in their test app (AppRTCMobile), and posted a bug report about it here:
https://bugs.chromium.org/p/webrtc/issues/detail?id=11012
Please star it there :)
In the meantime it seems that forcing the codec to VP8 should fix the problem on the simulator (as a temporary workaround).
Related
I am facing a weird issue in iOS 11. I have an App where I am playing HLS video in AVPlayer. In case of offline HLS video after starting video audio is playing but video content is not getting rendered on AVPlayerLayer. This issue is occurring only in iOS 11 and above. It is working perfectly in iOS 10. But at the same time online HLS contents are playing perfectly in iOS 11 and iOS 10.
This seems to be a bug in iOS 11 as I checked it in Apple's sample code.
I run sample code in iOS 11 device to check.
If it's not a bug in iOS 11 then how to solve this.
This issue is solved now. It was bug in iOS 11.0 but now it's fixed in iOS 11.2.
I used Xcode version 9.2 latest iOS SDK version 11.2
I've been working on a project using AVFoundation and on that I've been trying to use the AVMutableVideoComposition's customVideoCompositorClass. Everything works fine in ios 9.x and above.
But when I run the same project in an ios 8.3 device (iPhone 5s), only audio plays and video player remains black for the entire composition playing.
Then I tried to run the AVCustomEdit sample code provided by apple which also uses customVideoCompositorClass for video frame processing (Uses opengl es 2.0). Same black thing also happened there too. In this project for texture generation from CVPixelBufferRef it uses CVOpenGLESTextureCacheCreateTextureFromImage and CVOpenGLESTextureCacheRef. Not sure it causes the black issue?
I would be very happy if anyone can suggest me some pointers regarding this. Thanks in advance.
I met a weird situation. Our iOS app embedded a video in a simple HTML 5 page, and we load it using javascript and UIWebView. It has been working fine until the upgrade of iOS 10.2, and it works fine on all other models of iPads but iPad 4th generation on 10.2. The video just cannot play. The 'play' event never fires. I did some preliminary research. I know iPad 4 is a 32-bit machine. I'm not sure if this has something to do with the weird behavior.
I don't know if this might be a relevant answer, but I had a similar situation when trying to play a video using AVPlayer.
It worked perfectly fine previously on iOS 8 and iOS 9, upgrade to iOS 10.2 and it worked on the simulator but not on devices.
Then I came across this link
h.264 MP4 Playable on iOS 9 No Longer Playable on iOS 10
From reading further, I see the following statements:
There has been a changed in how iOS validates video files.
In our case, we were encoding h.264 video with mp3 audio codec.
iOS 9 had no problem with the video files. iOS 10 does not like them and gave this error when trying to save to the camera roll "Sorry, this type of video cannot be saved to this device"
To fix my error, I just opened the video in Quicktime Player. I then went to File -> Export -> 1080p and then when I used this version of the video, it played in my app using iOS 10.2
Maybe your situation is different, but this helped in my experience.
This bug looks to be resolved as of iOS 9.
The video plays fine on the desktop evergreen browsers, and in stand alone mode on Android devices.
It even plays nice on the iOS8 safari, but once a user goes and adds it to their home screen, the video no longer plays.
I put up an example here http://bugs.readingplus.com/ios8-video-test/.
If you using iOS8 you can play the video, add the url to your home screen and load it up. You will get the controls, but once you touch play all you get is the first frame.
I put the source of the page on Github, or you can just go to the page and view the source.
Am I missing something, is my markup fubared, is this just a bug, has anyone found a work around?
As of iOS 8.3 the issue is partially resolved. I have verified that the video, in the example, now plays when launched from the "Add to Home Screen" link.
The remaining issue is the audio, it is not being rendered/played.
this is great news, can it be confirmed by others?
I don't want to take the plunge and update to 8.3 until I'm confident video and audio in a homescreen webclip are working in iOS 8.3
Looks like iOS 8.3 fixes this issue. I have a standalone web app that uses an audio element, and it's working as expected now. FINALLY!
Sometimes when calling navigator.device.capture.captureVideo() in my iOS PhoneGap application the picture camera comes up instead of the video camera. Any idea why this might be happening?
It seems like it may be a memory issue as it does happen after a TokBox WebRTC chat session quite frequently, but we have also experienced it at other times as well.
Using iOS 5 & 6, PhoneGap 2.1 and the OpenTok PhoneGap plugin.
When OpenTok runs, it opens up a view to capture video in order to stream it, putting the camera in video mode. When you then call navigator.device.capture.captureVideo, phonegap could be flipping the camera in their sdk but I dont know for sure.
Either way, this should be resolved with the latest OpenTok SDK and Cordova framework.