GitHub:https://github.com/ZLMediaKit/ZLMediaKit

https://gitee.com/xia-chu/ZLMediaKit

使用vs2017在win10平台进行编译。摄像头使用大华网络摄像头。

实际使用使用MediaServer支持的HTTP API,使用postman进行测试。

拉流功能:

http://127.0.0.1/index/api/addStreamProxy

关闭拉流功能:

http://127.0.0.1/index/api/delStreamProxy

截图功能:

http://127.0.0.1/index/api/getSnap

该功能需要在拉流后才能进行。最终会在ZLMediaKit\release\windows64\Debug\www\snap\3260a9493c6d83f8fa3c16c05a08f412

目录下生成截图的图片。

PYTHON测试,返回结果为bytes类型,然后存为本地文件,证明结果正确。

import requests

url = "http://127.0.0.1/index/api/getSnap"
json_values={"url":"rtsp://admin:f123@192.168.3.129","secret":"035c73f7-bb6b-4889-a715-d9eb2d1925cc",  "timeout_sec":10, "expire_sec":1}

response = requests.post(url, data=json_values)
print(response.content) 
with open("1.jpg",'wb') as f:
    f.write(response.content)

录制视频功能:

http://127.0.0.1/index/api/startRecord

 

停止录制视频功能:

http://127.0.0.1/index/api/stopRecord

最终会在ZLMediaKit\release\windows64\Debug\www\record\rtsp\7L0DFCEPAGD37F7\2022-07-13

目录下生成录制的MP4视频。

推H265的视频流,需要ffmpeg支持:

apt-get install -y nasm libx264-dev
curl -O -L http://anduin.linuxfromscratch.org/BLFS/x265/x265_3.4.tar.gz && tar -xzvf x265_3.4.tar.gz && cd x265_3.4/build/linux/ && cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$INSTALL_PATH" -DENABLE_SHARED:bool=on ../../source && make -j8 && make install
git clone https://github.com/ksvc/FFmpeg.git -b release/3.4 --depth=1 && sed -i 's/x264_bit_depth/X264_BIT_DEPTH/g' FFmpeg/libavcodec/libx264.c
cd FFmpeg && ./configure --extra-libs="-lpthread -lm" --ld="g++" --enable-static --enable-pic --enable-encoder=aac --enable-encoder=libx264 --enable-gpl --enable-libx264 --enable-encoder=libx265 --enable-libx265 --enable-decoder=aac --enable-decoder=h264 --enabl    e-decoder=hevc --enable-demuxer=aac --enable-demuxer=mov --enable-demuxer=mpegts --enable-demuxer=flv --enable-demuxer=h264 --enable-demuxer=hevc --enable-demuxer=hls --enable-muxer=h264 --enable-muxer=flv --enable-muxer=f4v  --enable-muxer=mp4 --disable-doc --enabl    e-nonfree && make -j8 && make install

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐