Nginx+ffmpeg搭建Apple Http Live Streaming筆記

起始Nginx來搭建HLS步驟很是少 

安裝好Nginx,而後跑起來 

把切片好的視頻和m3u8文件放到部署目錄,直接訪問就能夠了 

重點是(切片)視頻 



網上國內國外的找了好多博客 
這裏必定注意一點,不要用VLC播放器來測試,最好用iPad或者iPhone,再麼用Safari 開發模式下模擬iPad、iPhone的瀏覽器模式播放 

由於在網上找了不少你們說VLC源碼裏面對HLS協議支持的很差,甚至快進暫停在源碼裏壓根就沒實現!! 


下面是ffmpeg對視頻進行切片的命令 

ffmpeg -y -i %(filename)s -pix_fmt yuv420p -vcodec libx264 -acodec libfaac -r %(fps)s -profile:v baseline -b:v %(bitrate)sk -maxrate %(bitrate)sk  -force_key_frames %(keyframe_str)s -s %(width)sx%(height)s %-f segment -segment_list %(target_dir)sindex_%(bitrate)s.m3u8 -segment_time %(segment_size)s  -segment_list_type m3u8 %(filenameNoExt)s_%(count)s.ts 
好比 
ffmpeg -y -i infile.mp4 -pix_fmt yuv420p -vcodec libx264 -acodec libfaac -r 25 -profile:v baseline -b:v 1500k -maxrate 2000k -force_key_frames 50 -s 640×360 -map 0 -flags -global_header -f segment -segment_list /tmp/index_1500.m3u8 -segment_time 10 -segment_format mpeg_ts -segment_list_type m3u8 /tmp/segment%05d.ts 

https://ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment  

上面這個連接介紹了大概的命令解釋,可是ffmpeg開發的人多,版本更新的也快,就是寫說明文檔的人特別少,寫的也讓人看不懂,不會用啊!!! 

個人文件是用的MP4 
因此用了一下命令 
ffmpeg -i input.mp4 -codec copy -map 0 -bsf h264_mp4toannexb -c copy -f segment -segment_list ™output.m3u8 -segment_time 10 output-%03d.ts 


目前還有一個須要研究,就是我把文件放在其餘路徑,寫成 絕對路徑的時候,.m3u8文件裏面也會對應編程絕對路徑,就會致使文件播放不了,這個還有待於繼續研究,先坐下筆記
相關文章
相關標籤/搜索