I developed an iOS application with live video streaming. I fixed the audio sample rate to 8k. Audio works fine up to iPhone6 devices, but when i stream video in 6s and 6s plus audio part is not working. How can i fixed this issue? I tried in different blogs and found that in iPhone 6s sample rate is locked in 48k. How can i manually down sample? Because the library that i used for live streaming works only in 8k. Please help me on these
You can do your own sample rate conversion by low-pass filtering the data to a frequency below 4 kHz, and then taking every 6th sample (to convert 48 ksps samples to 8 ksps samples).
Related
We are capturing video from iOS devices and processing it using OpenGL but are encountering a FPS difference between the devices when trying to set them at their maximum rate.
The iPhone 6S and iPad Pro FaceTime cameras are maxing at 60 fps.
The 7+ and iPhone X however are maxing at 30 fps.
It seems unusual that the FPS would decrease with later versions of Apple's hardware. We are trying to figure out if this is a software issue or simply the technical specifications for the frame rate for the FaceTime camera.
We looked on Apple's technical specifications page but the frame rates of the FaceTime cameras aren't listed (though the rear cameras are.) For example:
https://www.apple.com/iphone-6s/specs/
https://www.apple.com/iphone-x/specs/
What are the FPS of the FaceTime Camera for the iPhone 6S vs 7+ vs X vs iPad Pro?
It looks like you’re correct. According to Apple’s iOS Device Compatibility Reference...
iPhone 6s series front camera does up to 60 FPS (all formats)
iPhone 7 series front camera does up to 30 FPS
iPhone 8 series / X front camera does up to 60 FPS, but only in binned formats (so you probably need to set the device’s activeFormat, not just choose a preset)
iPad Pro info is also in the tables at that link.
I am using AVAssetExportSession to export a video selected from library. It works great for all videos of all types except landscape-recorded screen recordings (using the screen recording feature in iOS 11). Weird enough, it works perfectly for other landscape videos, and it also works perfectly for portrait videos of the same screen recording feature. But I've tried two videos that are landscape screen recordings, and they both failed with the error Source frame unsupported format.
How can I fix this problem?
UPDATE: Videos play just fine both in Photos and in my app before exporting.
The video size may not be standard like 1920 X 1080 , The screen recording produce non standard video resolutions in some devices.
You need to write the videos in standard resolution while recording
I need to reduce motion blur in my video, so I tried every sessionPreset on AVCaptureSession to get 60fps video capture but none of them seem to work. I found a few old threads that mention the 1280 preset would work on iOS 5, but I had no success with any preset on iOS 10 (iPhone 6).
It just fails when I try to configure activeVideoMin/MaxFrameDuration to 60fps.
The queried format also says it only supports a range between 2 to 30fps.
Is there really no way to capture 60fps (or reduce video motion blur) on iOS 10?
Iphone 6 and 6 plus has tow device format. one for 1080p30 and another for 1080p60. When you set AVCaptureSessionPresetHigh it uses 1080p30.
To record vide with 60fps, iterate through AVCaptureDevice Formats, find the format you want and then set AVCaptureDevice **setActiveFormat** property instead of AVCaptureSession setSessionPreset.
https://developer.apple.com/library/content/technotes/tn2409/_index.html
I have testing for iPhone6 with Webrtc works well.
But 4s Video Streaming is very poor quality. Same time video can freeze then Slow Working but not proper show.
How I can faster Video streaming With 4S.
I'm facing an issue in broadcasting video from one iPhone to another iPhone.
The issue is when I view the friend's live video in my iPhone, the frame per second(fps) is very low(it is 12fps). Video quality and audio is looking fine but the only problem is fps.
I don't know where I need to config/change the code to convert from variable fps to constant fps. Also to increase the fps as **24/30**.
The resolution I used for broadcasting
RESOLUTION_VGA, // 480x640px (landscape) & 640x480px (portrait)
I'm using following libraries for streaming
MediaLibiOS - link
Ffmpeg-2.2.1
CommLibiOS
libx264-r2409
Wowza is a Media Server and iOS target version is 7.0
Please help !
Thanks in advance.