1. 程式人生 > >hls流媒體視頻防盜實現

hls流媒體視頻防盜實現

一個 系統設置 高級 cat 1.3 bin 2-2 controls video

HLS流媒體視頻防盜實現

一、Windows安裝FFmpeg

1.1 安裝版本

1.1.1 網址:https://ffmpeg.org/

1.1.2 選擇Windows版本:https://ffmpeg.org/download.html#build-windows

技術分享

技術分享

1.2 解壓安裝:

1.2.1 下載並解壓FFmpeg文件夾,它會生成一個類似名為“ffmpeg-20150504-git-eb9fb50-win32-static”的新文件夾:

技術分享

1.2.2 打開你想安裝的任意磁盤,例如:d盤。新建一個名為“ffmpeg”的文件夾,將第二步解壓生成的文件夾中的內容全部拷貝到“ffmpeg”文件夾中:

技術分享

1.3配置FFmpeg環境變量:

1.3.1 點擊開始菜單,再點擊控制面板,再點擊系統與安全,再點擊系統,然後點擊高級系統設置,跳出系統屬性窗口後,最後點擊環境變量按鈕:

技術分享

1.3.2 點擊環境變量按鈕後,跳出環境變量窗口,找到並選中“Path”變量,點擊編輯:

技術分享

1.3.3 “Path”變量原有變量值內容上加上“;d:\ffmpeg\bin”(註:;代表間隔,不可遺漏;d:\ffmpeg\bin代表FFmpeg的安裝路徑下的bin文件夾),一路點擊確定即可。

技術分享

1.3.4 打開命令提示符窗口。輸入命令“ffmpeg –version”

。如果命令提示窗口返回FFmpeg的版本信息,那麽就說明安裝成功了,你可以在命令提示行中任意文件夾下運行FFmpeg

技術分享

二、ffmpeg對mp4文件進行ts切片並生成m3u8文件

2.1 先用ffmpeg把abc.mp4文件轉換為abc.ts文件:

ffmpeg -y -i abc.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb abc.ts

技術分享

2.2 再用ffmpeg把abc.ts文件切片並生成playlist.m3u8文件,10秒一個切片:

ffmpeg -i abc.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 abc%03d.ts

技術分享

2.3 生成切片結果

技術分享

三、將生成的m3u8文件在Pc端和移動端均正常播放

3.1 引入視頻直播插件

GitHub地址:https://github.com/daipianpian/hLive

##基於videojs的視頻直播播放器 演示地址 ####引入相應js和css,在頁面添加相應播放器代碼既可解析播放m3u8格式直播流,播放器格式如下

demo中source視頻路徑為本地src文件夾下測試視頻,根據自己需求進行更改

<video id="my_video_1" class="video-js vjs-default-skin" controls preload="auto" width="1000" height="500" data-setup=‘{}‘>

<source src="./src/z.m3u8" type="application/x-mpegURL">

</video>

3.2 本地demo

3.2.1 文件結構:

技術分享

3.2.2 核心代碼:

<video id="my_video_1" class="video-js vjs-default-skin" controls preload="auto" width="1000" height="500"

data-setup=‘{}‘>

<source src="video/playlist.m3u8" type="application/x-mpegURL">

</video>

3.2.3 實現效果:

PC端:

技術分享

移動端:

技術分享

hls流媒體視頻防盜實現