国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

煙臺(tái)網(wǎng)站建設(shè)搜狗推廣登錄入口

煙臺(tái)網(wǎng)站建設(shè),搜狗推廣登錄入口,網(wǎng)站不會(huì)更新文章,wordpress 零售電商對(duì)于ffmpeg的AES-CTR加密有兩種方式,一個(gè)是普通的整個(gè)視頻做加密,另一個(gè)是對(duì)視頻做切片處理,然后進(jìn)行加密。 一、對(duì)于普通的加密方式 直接使用下面的命令就行 ffmpeg -i animal.mp4 -vcodec copy -acodec copy -encryption_scheme cenc-aes…

? ? ? ? 對(duì)于ffmpeg的AES-CTR加密有兩種方式,一個(gè)是普通的整個(gè)視頻做加密,另一個(gè)是對(duì)視頻做切片處理,然后進(jìn)行加密。

? 一、對(duì)于普通的加密方式

直接使用下面的命令就行

ffmpeg -i animal.mp4 -vcodec copy -acodec copy -encryption_scheme cenc-aes-ctr -encryption_key c7e16c4403654b85847037383f0c2db3 -encryption_kid a7e61c373e219033c21091fa607bf3b8  -encryption_iv 1234567890abcdef1234567890abcdef encrypted_IV3.mp4

? ? ? ? 簡(jiǎn)單解釋一下各種參數(shù)的作用,

-vcodec copy -acodec copy 只是將 animal.mp4的音視頻數(shù)據(jù)直接拷貝到encrypted_IV3.mp4中

-encryption_scheme cenc-aes-ctr 表示采用的加密算法是cenc-aes-ctr

-encryption_key c7e16c4403654b85847037383f0c2db3 表是encryption_key 的值是c7e16c4403654b85847037383f0c2db3,這個(gè)值就是解密用的key

-encryption_kid a7e61c373e219033c21091fa607bf3b8? 表示encryption_kid 的值是a7e61c373e219033c21091fa607bf3b8,加解密就是key和id的比對(duì)

-encryption_iv 1234567890abcdef1234567890abcdef 表示加密的初始向量IV為1234567890abcdef1234567890abcdef,這個(gè)參數(shù)可以不加,ffmpeg是有默認(rèn)值的

encrypted_IV3.mp4 是加密后的MP4

? ? ? ? ?播放的話,采用的是ffplay,命令行如下

ffplay encrypted_IV.mp4 -dencryption_key c7e16c4403654b85847037383f0c2db3 -decryption_iv 1234567890abcdef1234567890abcdef

-dencryption_key 解密用的密鑰,就是加密的encryption_key的值

-decryption_iv? 如果加密的時(shí)候有設(shè)置加密初始向量的值,那么這里也需要加,對(duì)應(yīng)的是encryption_iv的值,如果加密的時(shí)候采用的是默認(rèn)的,這里可以不加

對(duì)于代碼加密代碼,此處復(fù)制的別人的,項(xiàng)目并不需要這個(gè),我就沒做驗(yàn)證

AVDictionary *opts = NULL;
// 指定加密參數(shù)
av_dict_set(&format_opts, "encryption_scheme", "cenc-aes-ctr", 0);
av_dict_set(&format_opts, "encryption_key", "c7e16c4403654b85847037383f0c2db3", 0);
av_dict_set(&format_opts, "encryption_kid", "a7e61c373e219033c21091fa607bf3b8", 0);
ret = avformat_write_header(AVFormatContext, &format_opts);

?解密的代碼也是別人的,但我是經(jīng)過驗(yàn)證的,確認(rèn)可行

AVDictionary *format_opts = NULL;
// 指定解密key
av_dict_set(&format_opts, "decryption_key", "c7e16c4403654b85847037383f0c2db3", 0);
av_dict_set(&format_opts, "decryption_iv", "1234567890abcdef1234567890abcdef", 0);
err = avformat_open_input(&AVFormatContext, "path", AVInputFormat, &format_opts);

? 二、對(duì)于流式的加密方式

命令行如下

ffmpeg -i animal.mp4 -movflags frag_keyframe -encryption_scheme cenc-aes-ctr -encryption_key c7e16c4403654b85847037383f0c2db3 -encryption_kid a7e61c373e219033c21091fa607bf3b8 encrypted.mp4

重復(fù)的參數(shù)我就不贅述了,

-movflags?選項(xiàng)用于設(shè)置MOV或MP4容器(文件格式)的特定標(biāo)志。這些標(biāo)志會(huì)改變輸出文件的結(jié)構(gòu)或行為。

frag_keyframe?強(qiáng)制每個(gè)關(guān)鍵幀都開始一個(gè)新的片段,使文件適合于流式傳輸。這個(gè)參數(shù)就是區(qū)分流式還是普通的一個(gè)關(guān)鍵參數(shù)

?播放的話和普通的一致。

出現(xiàn)下面這三個(gè)字段,就是說明成功了。工具我用的是Bento4,Bento4有個(gè)命令mp4dump可以查看。

? 三、需要注意的是---moov

? ? ? ? ffmpeg有一個(gè)參數(shù),叫empty_moov 。當(dāng)你創(chuàng)建一個(gè)MP4文件時(shí),通常它首先寫入一個(gè)moov原子(也就是元數(shù)據(jù)),然后是mdat原子(包含實(shí)際的音頻/視頻數(shù)據(jù))。但是,如果你想開始記錄并在之后添加元數(shù)據(jù),你需要首先寫入一個(gè)空的moov原子,簡(jiǎn)單理解就是:

普通的MP4 的格式(從上到下):? moov -> data?

加了empty_moov的MP4格式:? empty_moov -> data -> moov

如果你把moov移動(dòng)到了MP4末尾的同時(shí)做了aes-ctr加密,就會(huì)出錯(cuò),因?yàn)閒fmpeg在解密aes-ctr時(shí)要先知道加密的重要參數(shù),而這個(gè)參數(shù)就在moov中,然后才能進(jìn)行解密,如果moov放在了末尾,那ffmpeg就不知道要怎么解密了。該情況下我遇到的錯(cuò)誤有下面幾種

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x149204a10] Incorrect number of samples in encryption info

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1426658b0] saio atom found without saiz

[h264 @ 0x7f93ba8a3e00] Invalid NAL unit size (217505651 > 1332).

[h264 @ 0x7f93ba8a3e00] Error splitting the input into NAL units.

http://aloenet.com.cn/news/32888.html

相關(guān)文章:

  • 怎么建設(shè)一個(gè)網(wǎng)站賺錢seo排名查詢工具
  • 網(wǎng)站可以微信支付是怎么做的百度熱詞
  • 公司網(wǎng)站的seo優(yōu)化怎么做百度網(wǎng)盤人工客服電話多少
  • 不會(huì)網(wǎng)站維護(hù)可以做嗎怎么開通百度推廣賬號(hào)
  • 北京上海網(wǎng)站建設(shè)公司品牌宣傳推廣文案
  • 網(wǎng)站優(yōu)化的策略鎮(zhèn)江網(wǎng)站建設(shè)企業(yè)
  • 北京電腦培訓(xùn)網(wǎng)站軟文廣告示范
  • 上傳網(wǎng)站到二級(jí)域名財(cái)經(jīng)新聞最新消息
  • 昆明網(wǎng)上商城網(wǎng)站建設(shè)市場(chǎng)營(yíng)銷策略
  • 寵物網(wǎng)站開發(fā)與實(shí)現(xiàn)軟文推廣做得比較好的推廣平臺(tái)
  • 做集團(tuán)網(wǎng)站應(yīng)注意什么谷歌seo優(yōu)化技巧
  • 做家居商城網(wǎng)站鄭州seo推廣
  • 怎么把網(wǎng)站放到空間嗎教育培訓(xùn)機(jī)構(gòu)平臺(tái)
  • 公眾號(hào)的微網(wǎng)站開發(fā)營(yíng)銷型網(wǎng)站建設(shè)排名
  • 南京代做網(wǎng)站濟(jì)南百度競(jìng)價(jià)代運(yùn)營(yíng)
  • c 做網(wǎng)站如何調(diào)用dll免費(fèi)源碼網(wǎng)站
  • 公司怎么建立自己網(wǎng)站百度推廣價(jià)格價(jià)目表
  • php app網(wǎng)站建設(shè)武漢seo管理
  • 藍(lán)色大氣網(wǎng)站欣賞視頻推廣平臺(tái)
  • 手機(jī)企業(yè)網(wǎng)站制作企業(yè)網(wǎng)頁(yè)設(shè)計(jì)公司
  • 網(wǎng)站建設(shè)夢(mèng)幻創(chuàng)意百度文庫(kù)官網(wǎng)
  • php做的網(wǎng)站安全嗎今天的新聞?lì)^條
  • 什么公司在百度做網(wǎng)站常州seo關(guān)鍵詞排名
  • 做網(wǎng)站實(shí)習(xí)日志寧波seo怎么做引流推廣
  • 陽(yáng)泉購(gòu)物網(wǎng)站開發(fā)設(shè)計(jì)市場(chǎng)營(yíng)銷策劃
  • 網(wǎng)站網(wǎng)絡(luò)廣告如何建設(shè)自助建站免費(fèi)搭建個(gè)人網(wǎng)站
  • 織夢(mèng)網(wǎng)站后臺(tái)關(guān)鍵詞推廣優(yōu)化app
  • 婚禮顧問網(wǎng)站介紹模版有哪些營(yíng)銷推廣方式
  • 用php做動(dòng)態(tài)網(wǎng)站嗎企業(yè)中層管理人員培訓(xùn)課程
  • 手機(jī)網(wǎng)站內(nèi)容模塊如何進(jìn)行網(wǎng)站宣傳推廣