V
V
vick892019-06-11 14:06:10
Nginx
vick89, 2019-06-11 14:06:10

How to set up nginx stream so that it works on apple technology?

Hello, I installed ubuntu serve 14 and installed the nginx module on it, set up the configuration file and now you can start streaming (I do it through the vMix program), but the problem is that on apple products (both on iphone and on mac) the stream does not start, that is, just loading is in progress, while on android and windows everything is going fine. I post the link to the stream ( http://0.0.0.0:8080/section_where_the_translation_files_are... I post it on my wordpress site, I launch it through the Flowplayer player plugin. Tell me where to dig? If I need to provide something, I have already broken my head. Thank you in advance!

Answer the question

In order to leave comments, you need to log in

4 answer(s)
D
dollar, 2019-06-11
@dollar

For Apple, give in h264 format only

E
Egor Kozak, 2019-07-04
@egorkozz

a bunch of nginx + rtmp module will help you in which you will configure the section for HLS, in turn, HLS will create an m3u8 file and you can easily play the stream on any device tested Win 8-10 in any browser, even in IE, in windows 7 in IE it does not play , but in any other browser with a bang, Apple technology and Android technology reproduces throughout. My configuration is like this on a computer with win 10, there is a capture card, OBS sends the rtmp stream to Hyper-V where ubuntu is installed with nginx inside, nginx listens to rtmp, recodes it into 4 qualities using ffmpeg and transfers it to the HLS section where m3u8 is already created. I described it as best I could, sorry if it's a little unclear, below I throw off a piece of my configuration.
rtmp {
server {
listen 1935;
chunk_size 4096;
application src {
live on;
exec ffmpeg -i rtmp://IP:1935/src/$name -c:a aac -b:a 48k -c:v libx264 -s 426x240 -f flv rtmp://IP:1936/hls/$name_low;
exec ffmpeg -i rtmp://IP/src/$name -c:a aac -b:a 64k -c:v libx264 -s 640x360 -f flv rtmp://IP:1936/hls/$name_mid;
exec ffmpeg -i rtmp://IP:1935/src/$name -c:a aac -b:a 96k -c:v libx264 -s 854x480 -f flv rtmp://IP:1936/hls/$name_hi;
exec ffmpeg -i rtmp://IP:1935/src/$name -c:v copy -c:a copy -f flv rtmp://IP:1936/hls/$name_src;
}
}
server{
listen 1936;
chunk_size 4096;
application hls {
live on;
hls-on;
hls_path /tmp/hls;
hls_fragment 5s;
hls_playlist_length 10s;
hls_nested on;
hls_variant _low BANDWIDTH=160000;
hls_variant _mid BANDWIDTH=320000;
hls_variant _hi BANDWIDTH=640000;
hls_variant _src BANDWIDTH=1280000;
}
}

M
Maxim Babichev, 2017-07-20
@spacyfox

https://jsfiddle.net/5c9Lhg3r/2/
set the default values ​​data-price=0 and moved the total to the change method

Y
Yaroslav Rostanets, 2017-07-20
@djarik

var total;
$("select").change(function() {
   total = 0;
   $('select :selected').each(function(i,item){
   total += Number( $(item).attr('data-price') );
   });
   $('#my-total').text(total);
 })

https://jsfiddle.net/5c9Lhg3r/1/#&togetherjs=s4xyVNdFwU

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question