Regarding hls stream can't work on iphone - http-live-streaming

I use ffmpeg to deliver my av streams(video:h264 ,baseline3.1; audio:aac,8000,stereo) to nginx,then I used iphone's chrome or safari to access this stream, and failed. But I tested it on android's chrome or pc's chome safari, they all worked.
Is there any specifical requirement on iphone?
Thanks in advance!

One of the reason you appear to be having this issue could be your server is not set up to support byte-range requests, which is necessary for media files to be able to be played back on iOS devices.
For more information, please see the Configuring Your Server section in Appleā€™s documentation.
You may try something like below on your site's Nginx config.
# byte-range requests
location ~ \.(mp4|m4a|m4v|mov)$ {
add_header content_disposition filename=$request_uri;
add_header accept_ranges bytes;
}

Related

http videos not play on https site on Video.js

I use video.js on my site, but http://video.mp4 not plays I'm getting an error, as I realized https://video.mp4 plays without problem.
Is there any way to correct this? If I will get not secure on this pages no problem, Generally I need to play video.
you can check here for example: https://kinogo.ge/watch/the-way-back-qartulad.html?key=gtgxawoc5gus
and in same video with https: https://kinogo.ge/watch/the-way-back-qartulad.html?key=c2nnf4im0z8u
No. The browser enforces that http resources cannot be retrieved from an https page. You can't disable that from javascript.

Google AMP requires HTTPS for audio?

I'm working on making a client's blog site AMP-friendly and I'm running into an issue with their audio posts. It's just a simple WP site where they are uploading the audio files for the podcasts and I'm running into an issue where it says
Source must start with "https://" or "//" or be relative and served from either https or from localhost.
I don't see anywhere in their documentation that this is a rule. I have not run into this issue with other media types. Is there a fix other than setting up an SSL for the site?
No, there is no work around. You must use https for Audio. See here too.

Securing web server against MITM attack in Safari

I have been looking for a way to make sure my web server is secure against a man in the middle attack. It does seem that Google Chrome and Firefox work in blocking requests to my server even if I select to advance after the security warning. I am testing this by using Charles Proxy to intercept Https traffic without having trusted the Charles Cert on my Mac.
When I run the same tests with Safari it will let me through if I chose to ignore the secure warning, which I expect a certain number of users to do. So it seems there is more configuration needed to lock down Safari traffic. I know this is possible because when trying to navigate to github.com with the same scenario I get the following message:
Does anyone know what GitHub is doing to block Safari traffic on an untrusted connection?
Looks like Safari is supporting HSTS and that github is using it. Their HTTP response contains the following header:
Strict-Transport-Security:max-age=31536000; includeSubdomains; preload
This way a browser supporting HSTS knows that for the foreseeable time this site should only be visited with https and any attempts to use http only will automatically be upgraded by the browser.
Apart from basic HSTS which only works after the first visit of the site github also adds the preload directive. This tells browser makers that github likes to be included in the preloaded HSTS list shipped with the browsers, so that the browser applies HSTS even if the site was never visited before by the user. See HSTS Preloading for more information.

Webrtc video chat doesn't works in my IP?

WebRTC video chatting application runs perfectly fine in local host. but when I try to run the same code in a specific IP im not able to perform the same task,
Error : getUserMedia() no longer works on insecure origins
Any ideas on how can I fix this issue?
In the recent chrome release getUserMedia() is deprecated on insecure origins to improve browser security.
Deprecating Powerful Features on Insecure Origins.
You can disable this by opening the chrome with following flags.
You can run chrome with the --unsafely-treat-insecure-origin-as-secure="example.com" flag (replacing "example.com" with the origin you actually want to test), which will treat that origin as secure for this session. Note that you also need to include the --user-data-dir=/test/only/profile/dir to create a fresh testing profile for the flag to work.
To open chrome with above flags refer this.
If you want to make this work in production without any of this workarounds, you should buy a ssl certificate and setup HTTPS connection on your server.

Try to make Https Request on Adobe Air mobile apps with Actionscript Flex

I try to make an https request from a mobile iOs Device. This isnt working. In the flashbuilder simulator (on Mac) I have to accept the self-signed certificate but its working fine.
On the mobile device I've got the
error 2032
I also have the same problem on an web mirgrated Version of the app.
I have added on the server root the crossdomain.xml:
site-control permitted-cross-domain-policies="master-only"
allow-access-from domain="*" secure="false"
In the project i use the mx.rpc.http.HTTPService class. And i tried to change the destination type but with no effect:
useProxy = true;
destination = 'DefaultHTTPS';
I have had this same problem, and have asked the question before:
Problems with https on iPad from Air app
Unfortunately, it is not possible. The Air sockets implementation for mobile devices is lagging behind the one for desktop environments, and SSL is not supported. At this point, your best bet is to use an ANE.

Resources