国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
修改srs服務(wù)器端支持h.265編碼(rtmp協(xié)議)

==================================================================
小編在srs(simple rtmp server)服務(wù)器端修改了代碼支持h.265編碼以及 增加推送h.265裸流客戶端,代碼在百度網(wǎng)盤上,大家可自行下載。srs服務(wù)器本身不支持h.265以及推送h.265裸流走rtmp協(xié)議。
srs下載地址:https://github.com/ossrs/srs (下載的是3.0release)
百度網(wǎng)盤地址:鏈接: https://pan.baidu.com/s/1YsznrNIRhuhBr8JD518nOw 
csdn下載地址:https://download.csdn.net/download/qq_44895902/12405623

一.修改srs服務(wù)器端代碼支持h.265

1)vim src/app/srs_app_source.cpp
在這個(gè)函數(shù)中 srs_error_t SrsSource::on_video(SrsCommonMessage* shared_video)
找到if (!SrsFlvVideo::acceptable(shared_video->payload, shared_video->size)),跳轉(zhuǎn)到SrsFlvVideo::acceptable()函數(shù)定義中,下面修改內(nèi)容如下:

bool SrsFlvVideo::acceptable(char* data, int size){    // 1bytes required.    if (size < 1)     {        return false;    }    char frame_type = data[0];    char codec_id = frame_type & 0x0f;    frame_type = (frame_type >> 4) & 0x0f;    if (frame_type < 1 || frame_type > 5) //   1<= x <= 5    {        return false;    }    /* 2020-03-31 頭部問題以解決*/    if (codec_id < 2 || codec_id > 12) {   //  2<= x <=7        return false;    }    return true;}

2)vim src/app/srs_app_source.cpp
這個(gè)函數(shù)中 srs_error_t SrsSource::on_video_imp(SrsSharedPtrMessage* msg) 找到
bool is_sequence_header = SrsFlvVideo::sh(msg->payload, msg->size) 這一行,跳轉(zhuǎn)到sh()函數(shù)定義中

bool SrsFlvVideo::sh(char* data, int size){ //判斷是否是h264    if (h264(data, size))     {        char frame_type = data[0];        frame_type = (frame_type >> 4) & 0x0F;        char avc_packet_type = data[1];        //srs_trace("h264**** data[0]=%#x,data[1]=%#x,%d,%d",data[0],data[1],frame_type, avc_packet_type );        return frame_type == SrsVideoAvcFrameTypeKeyFrame               //1            && avc_packet_type == SrsVideoAvcFrameTraitSequenceHeader;  //0    }    //判斷是否是h265    if(h265(data, size))    {        char frame_type = data[0];        frame_type = (frame_type >> 4) & 0x0F;        char avc_packet_type = data[1];        //srs_trace("h265#### data[0]=%#x,data[1]=%#x,%d,%d",data[0],data[1],frame_type, avc_packet_type );        return frame_type == SrsVideoHevcFrameTypeKeyFrame          //1        && avc_packet_type == SrsVideoHevcFrameTraitSequenceHeader; //0    }    if (size < 2)     {        return false;    }    return true;}//別忘了函數(shù)定義在.h中自行添加bool SrsFlvVideo::h265(char *data, int size){    if(size < 1)        return false;    char codec_id = data[0];    codec_id = codec_id & 0x0F;    return codec_id == SrsVideoCodecIdHEVC;}

srs服務(wù)器端支持h.265編碼已修改完成,重新編譯srs代碼
./configure && make && make install
啟動服務(wù)器: ./objs/srs -c conf/srs.conf 查看服務(wù)器是否啟動成功:ps -ef | grep srs
備注:src 源碼文件夾已上傳到百度網(wǎng)盤,下載srs3.0源代碼,將src這個(gè)替換就行,然后編譯,啟動服務(wù)器。

二.增加推送h.265裸流客戶端,推送h.265裸流到srs中

先看個(gè)demo,工程已上傳 如下圖


注意:拉流播放器中,VLC不支持h.265的,想播放h.265,用大牛直播SDK:https://github.com/daniulive/SmarterStreaming

三.效果演示,驗(yàn)證測試

推流–>> 服務(wù)器端 —>> 拉流 演示推送h.265裸流


1)啟動srs 服務(wù)器/nginx-rtmp-server 服務(wù)器(自己搭有個(gè)補(bǔ)丁支持h.265)確定服務(wù)器ip:192.168.43.49 端口號:1935
2)開始推流:cd/srs/bin 目錄中: ./srs_h265_raw_publish xxx.h265 rtmp://192.168.43.49:1935/live/livestream 25

3)大牛直播SDK拉流播放
rtmp://192.168.43.49:1935/live/livestream

從圖中可以知道正常播放,說明修改srs服務(wù)器端代碼 支持h.265編碼

四.ffmpeg命令從MP4文件提取裸流

1)h.264編碼的MP4文件
ffmpeg -i input.mp4 -vcodec copy -an output.h264
2)h.265編碼的MP4文件
ffmpeg -i xxx.mp4 -vcodec copy -an -bsf hevc_mp4toannexb -f hevc xxx.hevc

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
RTSP安防攝像機(jī)(??荡笕A宇視等)如何推送到RTMP流媒體服務(wù)器進(jìn)行直播_easyrtsp_activate
安防網(wǎng)絡(luò)攝像機(jī)推送到RTMP流媒體服務(wù)器方案
RTMP協(xié)議發(fā)送H.264編碼及AAC編碼的音視頻,實(shí)現(xiàn)攝像頭直播
手把手帶你實(shí)現(xiàn)srs流媒體推流和拉流操作
運(yùn)營級的互聯(lián)網(wǎng)直播服務(wù)器集群架設(shè),搞定這一個(gè)開源項(xiàng)目就夠了!
全民大直播,流媒體選擇Nginx是福還是禍?
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服