file-type

视频转码队列:使用Kubernetes的视频上传与转码解决方案

下载需积分: 9 | 30KB | 更新于2025-02-20 | 187 浏览量 | 0 下载量 举报 收藏
download 立即下载
### 视频转码队列在Kubernetes集群中的应用 #### 标题解析 - **Video-transcode-queue**: 这个标题指向的是一个视频处理平台的组件,该组件主要负责管理视频上传后的转码任务队列。 - **作为kubernetes集群(WIP)的示例视频上传平台**: 说明了视频转码队列是作为Kubernetes集群环境下的一个实例化应用程序进行设计的,这个平台目前可能还在开发中(WIP,即 Work In Progress)。 #### 描述解析 - **视频转码队列**:这是一个视频处理流程中的关键环节,负责将上传的视频进行格式转换,以便能够适应不同的播放设备和网络条件。 - **React Web UI**:表明前端用户界面使用React框架构建,React是一个用于构建用户界面的JavaScript库,由Facebook开发和维护。 - **Golang中的REST API**:后端服务的API是通过Go语言开发的RESTful接口,Go语言(又称Golang)是一种编译型、静态类型的编程语言,由Google开发,适合构建简单、可靠、高效的软件。 - **PostgreSQL**:使用开源的关系型数据库管理系统PostgreSQL用于存储数据,它以其稳定性和功能丰富而闻名。 - **Nginx代理**:视频转码平台可能使用Nginx作为反向代理服务器,用于处理客户端请求的负载均衡和静态文件服务。 - **Redis任务队列存储**:视频转码任务可能使用Redis数据库的列表(list)数据结构实现任务队列,Redis是一个开源的内存数据结构存储系统,用作数据库、缓存和消息代理。 - **Golang的Redis任务使用者**和**Golang的Redis任务制作人**:这两个组件分别表示在Golang编写的程序中,一部分负责将任务放入Redis队列(制作人),另一部分负责从队列中取出任务并处理(使用者)。 - **Golang中的视频转码器**:这指的是用Go语言实现的视频转码模块,负责视频数据的处理和编码工作。 - **由Kubernetes Helm软件包提供支持**:Helm是一个Kubernetes的包管理工具,它帮助开发者管理和部署Kubernetes应用。 #### 标签解析 - **Docker**: 是一个开源的应用容器引擎,使得开发者可以打包他们的应用以及应用的依赖包到一个可移植的容器中。 - **Kubernetes**: 一个开源系统,用于自动化部署、扩展和管理容器化应用程序。 - **Redis**: 在此上下文中用于作为任务队列的存储。 - **Golang**: 即Go语言,用于编写后端API和服务逻辑。 - **FFmpeg**: 一个强大的多媒体框架,能够记录、转换数字音频、视频,并能将其转换成流。 - **Helm**: Kubernetes的包管理工具,简化了Kubernetes应用的部署和管理。 - **PostgreSQL**: 开源的关系型数据库系统。 - **Minikube**: 一个工具,可以让你在本地计算机上运行一个单节点的Kubernetes集群。 - **Helm Charts**: Helm使用的包格式,用于描述Kubernetes应用程序的结构。 - **Video-transcoding**: 指代视频转码技术。 - **ffmpeg-root**: 可能是指使用FFmpeg的基础环境设置。 - **PostgreSQLGo**: 结合PostgreSQL和Go语言的使用。 #### 如何在本地运行 - **安装Docker,Kubernetes,Minikube和Helm软件包管理器**:这一步骤指导用户在本地环境中搭建起一套可以运行Kubernetes的开发环境。 - **安装ffmpeg && 编解码器**:说明用户需要安装ffmpeg和相应的编解码器,用于执行视频转码任务。 - **brew install ffmpeg --with-chromaprint --**:使用Homebrew包管理器在macOS上安装FFmpeg及其额外支持如Chromaprint,它通常用于提取音频指纹。 #### 总结 视频转码队列平台的设计涉及到了现代Web开发的多个方面,包括前端的React UI设计、后端的Go语言编程、数据库的使用以及Kubernetes集群的管理。通过Helm进行打包,使得部署和管理更为高效。这表明了在构建大规模的视频处理平台时,多技术栈的配合和容器化部署的重要性。而且,该项目还强调了本地开发环境的搭建,使得开发人员可以快速地在本地重现和测试集群环境下的应用行为。

相关推荐

filetype

root@VM-20-12-ubuntu:/srs-6.0-d2/trunk# ./objs/srs -c conf/rtmp_srt.conf [2025-07-17 14:51:59.302][INFO][437863][717y9o37] XCORE-SRS/6.0.85(Hang) [2025-07-17 14:51:59.302][INFO][437863][717y9o37] config parse complete [2025-07-17 14:51:59.302][INFO][437863][717y9o37] write log to console [2025-07-17 14:51:59.302][INFO][437863][717y9o37] SRS/6.0.85(Hang), MIT [2025-07-17 14:51:59.302][INFO][437863][717y9o37] authors: Winlin<[email protected]> ZhaoWenjie<[email protected]> ShiWei<[email protected]> XiaoZhihong<[email protected]> WuPengqiang<[email protected]> XiaLixin<[email protected]> LiPeng<[email protected]> ChenGuanghua<[email protected]> ChenHaibo<[email protected]> ZhangJunqin<[email protected]> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors [2025-07-17 14:51:59.302][INFO][437863][717y9o37] cwd=/srs-6.0-d2/trunk, work_dir=./, build: 2025-07-17 14:50:05, configure: --srt=on, uname: Linux VM-20-12-ubuntu 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: [2025-07-17 14:51:59.302][INFO][437863][717y9o37] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --srt=on --rtc=on --h265=off --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --ffmpeg-opus=off --nasm=on --srtp-nasm=on --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=off --shared-ffmpeg=off --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=on --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib [2025-07-17 14:51:59.302][INFO][437863][717y9o37] srs checking config... [2025-07-17 14:51:59.303][ERROR][437863][717y9o37][22] Failed, code=1023(ConfigInvalid)(Configuration is invalid) : check config : check normal : illegal directive rtmp_server thread [437863][717y9o37]: do_main() [./src/main/srs_main_server.cpp:225][errno=22] thread [437863][717y9o37]: check_config() [./src/app/srs_app_config.cpp:2242][errno=22] thread [437863][717y9o37]: check_normal_config() [./src/app/srs_app_config.cpp:2290][errno=22](Invalid argument) 上述示例启动报错修改

filetype

root@VM-20-12-ubuntu:/srs-6.0-d2/trunk# ./objs/srs -c conf/rtmp_srt.conf [2025-07-17 15:47:50.172][INFO][449748][42045zy8] XCORE-SRS/6.0.85(Hang) [2025-07-17 15:47:50.173][INFO][449748][42045zy8] config parse complete [2025-07-17 15:47:50.173][INFO][449748][42045zy8] write log to console [2025-07-17 15:47:50.173][INFO][449748][42045zy8] SRS/6.0.85(Hang), MIT [2025-07-17 15:47:50.173][INFO][449748][42045zy8] authors: Winlin<[email protected]> ZhaoWenjie<[email protected]> ShiWei<[email protected]> XiaoZhihong<[email protected]> WuPengqiang<[email protected]> XiaLixin<[email protected]> LiPeng<[email protected]> ChenGuanghua<[email protected]> ChenHaibo<[email protected]> ZhangJunqin<[email protected]> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors [2025-07-17 15:47:50.173][INFO][449748][42045zy8] cwd=/srs-6.0-d2/trunk, work_dir=./, build: 2025-07-17 14:50:05, configure: --srt=on, uname: Linux VM-20-12-ubuntu 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: [2025-07-17 15:47:50.173][INFO][449748][42045zy8] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --srt=on --rtc=on --h265=off --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --ffmpeg-opus=off --nasm=on --srtp-nasm=on --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=off --shared-ffmpeg=off --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=on --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib [2025-07-17 15:47:50.173][INFO][449748][42045zy8] srs checking config... [2025-07-17 15:47:50.174][ERROR][449748][42045zy8][22] Failed, code=1023(ConfigInvalid)(Configuration is invalid) : check config : check normal : illegal srt_server.gop_cache thread [449748][42045zy8]: do_main() [./src/main/srs_main_server.cpp:225][errno=22] thread [449748][42045zy8]: check_config() [./src/app/srs_app_config.cpp:2242][errno=22] thread [449748][42045zy8]: check_normal_config() [./src/app/srs_app_config.cpp:2340][errno=22](Invalid argument)

filetype

root@VM-20-12-ubuntu:/srs/trunk# cat conf/srt2.conf # 基础配置 (SRS 6.0.134) listen 19935; # RTMP 监听端口 max_connections 1000; daemon off; srs_log_tank console; srs_log_level info; # HTTP 管理接口 http_api { enabled on; listen 1985; crossdomain on; } # HTTP 服务器 http_server { enabled on; listen 8080; dir ./objs/nginx/html; } # SRT 服务器配置 srt_server { enabled on; listen 6666; connect_timeout 4000; maxbw 1000000000; latency 200; tlpktdrop on; mss 1316; # 最大分段大小 } # 默认虚拟主机 vhost __defaultVhost__ { # RTMP 配置直接放在 vhost 根级别 chunk_size 4096; # 发布者配置放在 publish 块中 publish { firstpkt_timeout 15000; normal_timeout 15000; } # SRT 输出配置 srt { enabled on; # 修正变量名中的空格 srt_stream { input rtmp://127.0.0.1:19935/$ app/$ stream; output srt://:6666?streamid=#!::r=$ app/$ stream,m=request; } } # HTTP-FLV 监控 http_remux { enabled on; mount [vhost]/[app]/[stream].flv; } } root@VM-20-12-ubuntu:/srs/trunk# ./objs/srs -c conf/srt2.conf [2025-07-17 18:02:50.009][INFO][503259][563b55i2] XCORE-SRS/6.0.134(Hang) [2025-07-17 18:02:50.009][INFO][503259][563b55i2] config parse complete [2025-07-17 18:02:50.009][INFO][503259][563b55i2] write log to console [2025-07-17 18:02:50.009][INFO][503259][563b55i2] SRS/6.0.134(Hang), MIT [2025-07-17 18:02:50.009][INFO][503259][563b55i2] authors: Winlin<[email protected]> XiaoZhihong<[email protected]> Winlin<[email protected]> ZhaoWenjie<[email protected]> ShiWei<[email protected]> XiaoZhihong<[email protected]> WuPengqiang<[email protected]> XiaLixin<[email protected]> LiPeng<[email protected]> ChenGuanghua<[email protected]> ChenHaibo<[email protected]> ZhangJunqin<[email protected]> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors [2025-07-17 18:02:50.009][INFO][503259][563b55i2] cwd=/srs/trunk, work_dir=./, build: 2025-07-17 17:53:32, configure: --srt=on --sanitizer=off, uname: Linux VM-20-12-ubuntu 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: [2025-07-17 18:02:50.009][INFO][503259][563b55i2] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --srt=on --sys-srt=off --rtc=on --h265=on --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --sys-ffmpeg=off --ffmpeg-opus=off --nasm=on --srtp-nasm=on --sys-srtp=off --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=reserved --shared-ffmpeg=reserved --shared-srtp=reserved --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=off --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --build-cache=on --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib [2025-07-17 18:02:50.009][INFO][503259][563b55i2] srs checking config... [2025-07-17 18:02:50.009][INFO][503259][563b55i2] ips, iface[0] eth0 ipv4 0x11043 10.0.20.12, iface[1] eth0 ipv6 0x11043 fe80::5054:ff:fec6:792a%eth0 [2025-07-17 18:02:50.009][INFO][503259][563b55i2] devices, intranet eth0 10.0.20.12, intranet eth0 fe80::5054:ff:fec6:792a%eth0 [2025-07-17 18:02:50.009][WARN][503259][563b55i2][22] stats network use index=0, ip=10.0.20.12, ifname=eth0 [2025-07-17 18:02:50.009][WARN][503259][563b55i2][22] stats disk not configed, disk iops disabled. [2025-07-17 18:02:50.009][INFO][503259][563b55i2] write log to console [2025-07-17 18:02:50.010][ERROR][503259][563b55i2][22] Failed, code=1023(ConfigInvalid)(Configuration is invalid) : check config : check normal : illegal vhost.srt.srt_stream of __defaultVhost__ thread [503259][563b55i2]: do_main() [./src/main/srs_main_server.cpp:225][errno=22] thread [503259][563b55i2]: check_config() [./src/app/srs_app_config.cpp:2287][errno=22] thread [503259][563b55i2]: check_normal_config() [./src/app/srs_app_config.cpp:2737][errno=22](Invalid argument)

filetype

root@VM-20-12-ubuntu:/srs/trunk# cat conf/srt2.conf # 基础配置 (SRS 6.0+) listen 19935; # RTMP 监听端口 max_connections 1000; daemon off; srs_log_tank console; srs_log_level info; # 生产环境建议使用 info # HTTP 管理接口 http_api { enabled on; listen 1985; crossdomain on; } # HTTP 服务器 http_server { enabled on; listen 8080; dir ./objs/nginx/html; } # SRT 服务器配置 (6.0+ 新语法) srt_server { enabled on; listen 6666; # SRT 高级参数 connect_timeout 4000; maxbw 1000000000; latency 200; tlpktdrop on; payload_size 1316; # 重要:设置MTU优化 } # 默认虚拟主机 vhost __defaultVhost__ { # RTMP 输入配置 rtmp { enabled on; chunk_size 4096; # 超时设置防止流占用 publish_1stpkt_timeout 15000; publish_normal_timeout 15000; drop_idle_publisher on; } # SRT 输出配置 (6.0+ 新语法) srt { enabled on; # 启用 RTMP 到 SRT 的转换 rtmp_to_srt on; # 设置 SRT 为拉流模式 srt_mode caller; # 流映射规则 (6.0+ 使用新变量) srt_stream { input rtmp://127.0.0.1:19935/$ app/$ stream; output srt://:6666?streamid=#!::r=$ app/$ stream,m=request; } } # 启用 HTTP-FLV 用于监控 http_remux { enabled on; mount [vhost]/[app]/[stream].flv; } } root@VM-20-12-ubuntu:/srs/trunk# ./objs/srs -c conf/srt2.conf [2025-07-17 17:39:11.728][INFO][495841][71k10522] XCORE-SRS/6.0.134(Hang) [2025-07-17 17:39:11.728][INFO][495841][71k10522] config parse complete [2025-07-17 17:39:11.728][INFO][495841][71k10522] write log to console [2025-07-17 17:39:11.728][INFO][495841][71k10522] SRS/6.0.134(Hang), MIT [2025-07-17 17:39:11.728][INFO][495841][71k10522] authors: Winlin<[email protected]> XiaoZhihong<[email protected]> Winlin<[email protected]> ZhaoWenjie<[email protected]> ShiWei<[email protected]> XiaoZhihong<[email protected]> WuPengqiang<[email protected]> XiaLixin<[email protected]> LiPeng<[email protected]> ChenGuanghua<[email protected]> ChenHaibo<[email protected]> ZhangJunqin<[email protected]> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors [2025-07-17 17:39:11.728][INFO][495841][71k10522] cwd=/srs/trunk, work_dir=./, build: 2025-07-17 16:13:24, configure: --srt=on, uname: Linux VM-20-12-ubuntu 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: [2025-07-17 17:39:11.728][INFO][495841][71k10522] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --srt=on --sys-srt=off --rtc=on --h265=on --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --sys-ffmpeg=off --ffmpeg-opus=off --nasm=on --srtp-nasm=on --sys-srtp=off --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=reserved --shared-ffmpeg=reserved --shared-srtp=reserved --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=on --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --build-cache=on --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib [2025-07-17 17:39:11.728][INFO][495841][71k10522] srs checking config... [2025-07-17 17:39:11.729][ERROR][495841][71k10522][22] Failed, code=1023(ConfigInvalid)(Configuration is invalid) : check config : check normal : illegal srt_server.payload_size thread [495841][71k10522]: do_main() [./src/main/srs_main_server.cpp:225][errno=22] thread [495841][71k10522]: check_config() [./src/app/srs_app_config.cpp:2287][errno=22] thread [495841][71k10522]: check_normal_config() [./src/app/srs_app_config.cpp:2385][errno=22](Invalid argument)

filetype

root@VM-20-12-ubuntu:/srs-6.0-d2/trunk# ./objs/srs -c conf/rtmp_srt.conf [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] XCORE-SRS/6.0.85(Hang) [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] config parse complete [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] write log to console [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] SRS/6.0.85(Hang), MIT [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] authors: Winlin<[email protected]> ZhaoWenjie<[email protected]> ShiWei<[email protected]> XiaoZhihong<[email protected]> WuPengqiang<[email protected]> XiaLixin<[email protected]> LiPeng<[email protected]> ChenGuanghua<[email protected]> ChenHaibo<[email protected]> ZhangJunqin<[email protected]> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] cwd=/srs-6.0-d2/trunk, work_dir=./, build: 2025-07-17 12:18:20, configure: , uname: Linux VM-20-12-ubuntu 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --srt=on --rtc=on --h265=off --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --ffmpeg-opus=off --nasm=on --srtp-nasm=on --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=off --shared-ffmpeg=off --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=on --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib [2025-07-17 14:16:50.852][INFO][429193][7e9jv004] srs checking config... [2025-07-17 14:16:50.853][INFO][429193][7e9jv004] ips, iface[0] eth0 ipv4 0x11043 10.0.20.12, iface[1] eth0 ipv6 0x11043 fe80::5054:ff:fec6:792a%eth0 [2025-07-17 14:16:50.853][INFO][429193][7e9jv004] devices, intranet eth0 10.0.20.12, intranet eth0 fe80::5054:ff:fec6:792a%eth0 [2025-07-17 14:16:50.853][WARN][429193][7e9jv004][22] stats network use index=0, ip=10.0.20.12, ifname=eth0 [2025-07-17 14:16:50.853][WARN][429193][7e9jv004][22] stats disk not configed, disk iops disabled. [2025-07-17 14:16:50.853][INFO][429193][7e9jv004] write log to console [2025-07-17 14:16:50.854][ERROR][429193][7e9jv004][22] Failed, code=1023(ConfigInvalid)(Configuration is invalid) : check config : check normal : illegal vhost.proxy thread [429193][7e9jv004]: do_main() [./src/main/srs_main_server.cpp:225][errno=22] thread [429193][7e9jv004]: check_config() [./src/app/srs_app_config.cpp:2242][errno=22] thread [429193][7e9jv004]: check_normal_config() [./src/app/srs_app_config.cpp:2536][errno=22](Invalid argument) ================================================================= ==429193==ERROR: LeakSanitizer: detected memory leaks Direct leak of 72 byte(s) in 1 object(s) allocated from: #0 0x55580b82dc87 in operator new(unsigned long) (/srs-6.0-d2/trunk/objs/srs+0x4afc87) #1 0x55580b9ee24e in discover_network_iface(ifaddrs*, std::vector<SrsIPAddress*, std::allocator<SrsIPAddress*> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, bool, bool) src/protocol/srs_protocol_utility.cpp:703 #2 0x55580b9eef1e in retrieve_local_ips() src/protocol/srs_protocol_utility.cpp:760 #3 0x55580b9ef9e8 in srs_get_local_ips() src/protocol/srs_protocol_utility.cpp:817 #4 0x55580bb78ed5 in SrsConfig::check_normal_config() src/app/srs_app_config.cpp:2424 #5 0x55580bb75e5f in SrsConfig::check_config() src/app/srs_app_config.cpp:2241 #6 0x55580beccb2a in do_main(int, char**, char**) src/main/srs_main_server.cpp:224 #7 0x55580beccea7 in main src/main/srs_main_server.cpp:256 #8 0x7f8136c8a082 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x24082) Direct leak of 72 byte(s) in 1 object(s) allocated from: #0 0x55580b82dc87 in operator new(unsigned long) (/srs-6.0-d2/trunk/objs/srs+0x4afc87) #1 0x55580b9ee24e in discover_network_iface(ifaddrs*, std::vector<SrsIPAddress*, std::allocator<SrsIPAddress*> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, bool, bool) src/protocol/srs_protocol_utility.cpp:703 #2 0x55580b9ef220 in retrieve_local_ips() src/protocol/srs_protocol_utility.cpp:781 #3 0x55580b9ef9e8 in srs_get_local_ips() src/protocol/srs_protocol_utility.cpp:817 #4 0x55580bb78ed5 in SrsConfig::check_normal_config() src/app/srs_app_config.cpp:2424 #5 0x55580bb75e5f in SrsConfig::check_config() src/app/srs_app_config.cpp:2241 #6 0x55580beccb2a in do_main(int, char**, char**) src/main/srs_main_server.cpp:224 #7 0x55580beccea7 in main src/main/srs_main_server.cpp:256 #8 0x7f8136c8a082 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x24082) Indirect leak of 31 byte(s) in 1 object(s) allocated from: #0 0x55580b82dc87 in operator new(unsigned long) (/srs-6.0-d2/trunk/objs/srs+0x4afc87) #1 0x7f813710729e in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/lib/x86_64-linux-gnu/libstdc++.so.6+0x14329e) SUMMARY: AddressSanitizer: 175 byte(s) leaked in 3 allocation(s).

AR新视野
  • 粉丝: 2268
上传资源 快速赚钱