I am running application on Samsung Galaxy Tab 2 10.1, which plays HLS streams, encrypted by Verimatrix. I am using 3rd party player integrated in my app. Streams switch quality among three profiles,
<= 1MBps,
<= 1.6MBps
and
<=2.6MBps.
Playback is OK at low and medium, but at high, occasionally, tablet freezes completely and has to be rebooted manually. Anybody got similar experience? Is this sign of high demands of application on device? I am trying to find out root cause. Any hint appreciated. Thanks.
Well, I got this problem on my Galaxy Tab 7 too. I read on some sites that the problem is on HLS android implementation.
The following links talks about Android's HLS problems.
The Pain of Live Streaming on Android
http://www.jwplayer.com/blog/the-pain-of-live-streaming-on-android/
The Definitive Guide to HLS
http://features.encoding.com/http-live-streaming-hls/
Related
We're developing some Google Actions for local and national radios.
We're using the MediaResponse to play an MP3 livestream (via icecast). The livestream is fine on Google Nest or iOS devices, but it is distorted on Android devices using the "Google Assistant" app.
During the playback we hear a lot of clips and pops that make the audio stream unlistenable. We verified the same issue for other Radios' Actions.
On the other hand, we tried using an ".ogg" livestream which works very well on Google Nest and other smart speaker, and works well on Android phones too, but it doesn't work at all on iOS phones.
The listening experience on Android phones is currently very bad, we tried with different devices and Android versions (Android 10 or 12) and the results are the same.
I am using Red5 with AS3 (Adobe AIR) for recording voice. I am following this tutorial for doing the same: http://sziebert.net/posts/server-side-stream-recording-updated/
When I deploy my builds on mobile it works fine on the iPhone and iPad. Even on Android it works fine on some phones like the Nexus, Samsung S2 and Sony Xperia. However, on some phones like the Motorola and some of the cheaper handsets, the recorded output sounds 'robotic' and is distorted.
My microphone settings on AS3 are:
m_microphoneReference = Microphone.getMicrophone();
m_microphoneReference.rate = 44;
m_microphoneReference.gain = 100;
//m_microphoneReference.setSilenceLevel(10);
m_microphoneReference.setUseEchoSuppression(true);
I fiddled around with the microphone bit rates in AS3 and sound was a bit better. But I am trying to find the reason for this distortion. Any pointers?
Since you're saying that there is an improvement in the quality when you lower the rate, that seems to indicate the phones in question are not up to the task. Nexus models are normally top-of-the-line so its no surprise that the perform well. I would suggest allowing a user to select the rate if they experience issues as well as informing them of potential issues with the "listed" devices and os versions.
Which SIP library should we look at to solve our audio delay/latency issue for Android phones running OSes 4.0 and above?
Our experiments suggest the delay is a SIP library issue. If not a library issue, what else could it be?
We built a simple VOIP app for both Android and iPhone. You simply dial the caller id of another user, press call, and start talking to them. The iPhone version works great, and we used a commercial API for the SIP functionality. But the Android version doesn't work so well because of audio delay issues which seems to depend on which Android phone you have. We used the following Android SIP library.
Our Experiments and Findings
When we are making calls between one android phone to another android phone, there is too much delay in the audio. One person will say something, and it could take up to a full 1-2 seconds before the other person hears it. At the moment, this problem appears to be particular to Samsung devices, as opposed to other hardwares (although our tests have been limited). So for example, a Galaxy Note 1 calling a GS3 experiences more delay than a Galaxy Note 1 calling Nexus 7 tablet (Asus) and Galaxy Note 1 calling a Xiaomi MI-2 phone.
We're pretty sure we've eliminated our Asterisk server as the probable cause of delay, since iphone to iphone calls are great, and iphone to android calls are reasonable.
Here is a list of device speed tests, listed in ascending order of delay
iphone to iphone (fastest, no noticeable delay)
android (Samsung) to iphone (a little delay, but still acceptable)
android (samsung) to android (xiaomi MI-2) (a little delay, but still acceptable)
android (samsung) to android (asus) (too much delay, unacceptable)
android (samsung) to android (samsung) (really slow, unacceptable)
Right now, my team is is leaning towards the idea that the Android SIP library we are using is not good enough. We are interested in using another SIP library to do the call.
We have noticed that other Android SIP phones like CSipSimple also experiences this problem.
Does anyone have ideas on how we can solve our audio delay/latency issues?
Additional Notes
We noticed there wasn't any audio delay when using Skype on Galaxy Note 1 to Skype on Galaxy S3. So that's why we were thinking there's probably a solution to this problem via our choice of SIP library, or codec or something...
We know we're using the G.711 Codec, incase that makes any difference.
We fixed the voip latency issue by using the linphone sip library. Now there's hardly any notice-able delay when two people are talking to each other.
I want to write an game for Android. To present it very well, it has to have an YouTube movie in the Google Play Store.
How can I do this? Because ADB only produce a slideshow, because it's to slow. Is there an app for recording out there?
PS: I only have Tegra devices (Galaxy Nexus and Nexus 7), so http://pkg.to/com.ms.screencast doesn't work, yet.
The new Android 4.2 has a wireless display feature allowing the send the screen's content to TV screens etc. As you have Nexus devices I guess you'll get the update very soon. I do not know the technical details but I'm quite sure there will be possibilities to record the sent signal.
See this anouncement: http://www.android.com/whatsnew/
You may want to try using the emulator and record using a regular video recording program such as FRAPS. The performance of the x86 emulator has improved greatly and also supports GPU emulation.
Here is a page from the Android documentation outlining how to enable hardware acceleration for the emulator:
http://developer.android.com/tools/devices/emulator.html#acceleration
The downside to this approach is that multi-touch gestures aren't easy to do.
I am working on playing a video in my application, and I am observing some strange results in doing so. Videos that I am trying to play are on server and I have to get them to run android's native videoplayer.
I have tested the results on several devices and it is found that video runs on devices having OS version greater than equal ton 2.3.3 but does not run on others, showing error (1, -1). Now my question is that either the later OS versions have some extra Video codecs and format support and that is because the video gets played on them or it's something else? Why so is this error on few devices not on all?
Devices on which Video Works fine in native videopalyer:
Samsung Google Nexus with OS 4.0.1
Samsung Galaxy S with OS 2.3.3
Devices on which does not get played:
HTC-Desire with OS 2.2
Samsung Galaxy S with OS 2.2
Any help about the issue is always appreciated.
This error may occur due to many reasons. Issue might lie videoplayer, as well source from where you are reading the video, Is video coming from HTTp server or RSTP server...any of these can be the reason. You'll have to check accordingly. In our case, we solved it by using Video View and also made changes to URL to get it played.