溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

基于s3cmd的視頻存儲(chǔ)方案有哪些

發(fā)布時(shí)間:2021-12-30 16:36:49 來(lái)源:億速云 閱讀:169 作者:iii 欄目:云計(jì)算

本篇內(nèi)容介紹了“基于s3cmd的視頻存儲(chǔ)方案有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

改造目標(biāo)

1. 需要支持rtmp播放,盡量少的改動(dòng)現(xiàn)有構(gòu)架

2. 使用S3替代現(xiàn)有的本地存儲(chǔ)方式,盡可能降低對(duì)本地存儲(chǔ)的依賴。

3. 視頻需要支持防盜鏈、防下載。

方案1(后端點(diǎn)播模式)

方案概述:將視頻文件(只支持mp4、flv)上傳到S3,并設(shè)置其訪問(wèn)權(quán)限為public,使用rtmp模塊的play指令進(jìn)行播放。

操作流程

1.上傳視頻到S3

將mp4或者flv文件上傳到S3的movie這個(gè)bucket,比如上傳的文件名稱為"video.mp4",并設(shè)置訪問(wèn)權(quán)限為"public-read",注意設(shè)置對(duì)應(yīng)的content-type,以s3cmd為例

s3cmd put video.mp4 s3://movie --acl-public
2.配置nginx的rtmp模塊

配置nginx的rtmp模塊,在nginx.conf中新增如下內(nèi)容

rtmp {
    server {
    listen 1935;
    application vod_http {
    play http://s3.ceph.wor/movie;
    }
}
3.測(cè)試訪問(wèn)

方案2(后端推流模式)

方案概述:將視頻文件(只支持mp4、flv)上傳到S3,并設(shè)置其訪問(wèn)權(quán)限為public,后端需要借助ffmpeg將S3的HTTP數(shù)據(jù)流推送到nginx,再經(jīng)由rtmp模塊轉(zhuǎn)換成HLS。

操作流程

1.上傳視頻到S3

將mp4或者flv文件上傳到S3的movie這個(gè)bucket,比如上傳的文件名稱為"video.mp4",并設(shè)置訪問(wèn)權(quán)限為"public-read",注意設(shè)置對(duì)應(yīng)的content-type,以s3cmd為例

s3cmd put video.mp4 s3://movie --acl-public
2.配置nginx的rtmp模塊

/etc/nginx/nginx.conf #nginx配置文件,注意替換{nginx_server}為nginx服務(wù)器IP或者域名

rtmp {
    server {
        listen 1935;

    application myapp {
                live on;
                hls on;
                hls_path /var/tmp/myapp; #hls文件臨時(shí)存放目錄
                hls_keys on;
                hls_key_path /var/tmp/keys; #hls的加密key存放目錄
                hls_key_url http://{nginx_server}/keys/; #key的對(duì)外訪問(wèn)路徑
                hls_fragments_per_key 10; #每10幀更新一次key
            }
    }

/etc/nginx/conf.d/hls.conf #站點(diǎn)配置文件

server {
    listen      80;
    location /keys {
        root /var/tmp;
    }
    location /myapp {
        # Serve HLS fragments
        types {
            application/vnd.apple.mpegurl m3u8;
            video/mp2t ts;
        }
        root /var/tmp;
        add_header Cache-Control no-cache;
    }
}

方案對(duì)比

功能方案1方案2
前端rtmp播放支持支持
前端hls播放不支持支持
S3替代本地存儲(chǔ)支持支持
防盜鏈下載支持(客戶端接收的是rtmp)支持(加密HLS分片,動(dòng)態(tài)key方式)

“基于s3cmd的視頻存儲(chǔ)方案有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI