{"id":14155334,"url":"https://github.com/milzero/reStreamer","last_synced_at":"2025-08-06T01:30:54.242Z","repository":{"id":244630143,"uuid":"815802506","full_name":"milzero/reStreamer","owner":"milzero","description":"A service for mixing and streaming media.","archived":false,"fork":false,"pushed_at":"2024-06-16T08:51:42.000Z","size":189,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-08-17T08:05:06.524Z","etag":null,"topics":["dash","ffmpeg","h264","hls","livestream","mp4","mpegts","obs","rtmp","streaming"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/milzero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-16T07:47:48.000Z","updated_at":"2024-08-17T08:05:16.663Z","dependencies_parsed_at":"2024-06-16T08:50:48.870Z","dependency_job_id":"6be0859b-46dd-4d80-8008-ec47e08e2e9f","html_url":"https://github.com/milzero/reStreamer","commit_stats":null,"previous_names":["milzero/restreamer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milzero%2FreStreamer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milzero%2FreStreamer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milzero%2FreStreamer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/milzero%2FreStreamer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/milzero","download_url":"https://codeload.github.com/milzero/reStreamer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228821402,"owners_count":17977166,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dash","ffmpeg","h264","hls","livestream","mp4","mpegts","obs","rtmp","streaming"],"created_at":"2024-08-17T08:02:51.911Z","updated_at":"2024-12-09T02:31:16.450Z","avatar_url":"https://github.com/milzero.png","language":"C","funding_links":[],"categories":["streaming"],"sub_categories":[],"readme":"# reStreamer\n\n## 概述\n多媒体融合流媒体服务器提供了一站式的媒体处理和推流解决方案,能够将音频、视频和图片等多种媒体资源进行融合并实时推送至流媒体服务器,非常适合内容创作者和媒体运营商使用。\n### 主要功能\n- 媒体文件导入:支持主流的音频、视频和图片格式,用户可以方便地上传素材文件。\n- 媒体融合处理:采用先进的流媒体处理技术,将不同类型的媒体文件进行时间轴对齐和场景融合,保证音视频同步,图片素材能够适时插入。\n- 实时推流:将处理后的媒体流通过RTMP、HLS、DASH等主流流媒体协议实时推送至流媒体服务器。\n- 控制台API:提供Web API,用户可以上传素材、调整推流参数、监控推流状态等。\n\n应用场景\n适用于: \n- 视频直播\n- 在线课堂\n- 活动直播\n- 广告营销等场景\n\n能够帮助用户将各种类型的媒体资源融合为丰富多彩的直播和点播内容。\n\n## 编译C++部分\n\n### 安装C++工具链\n\n```sh\nsudo apt update\nsudo apt install build-essential\nsudo apt install cmake\n```\n\n### 安装vcpkg\n\n#### 克隆 vcpkg 存储库\n\n```sh\ngit clone https://github.com/Microsoft/vcpkg.git\n```\n\n#### 运行引导脚本以生成 vcpkg\n\n```sh\n .\\vcpkg\\bootstrap-vcpkg.sh\n```\n\n安装成功\n\n```sh\nDownloading vcpkg-glibc...\nvcpkg package management program version 2023-12-12-1c9ec1978a6b0c2b39c9e9554a96e3e275f7556e\n\nSee LICENSE.txt for license information.\nTelemetry\n---------\nvcpkg collects usage data in order to help us improve your experience.\nThe data collected by Microsoft is anonymous.\nYou can opt-out of telemetry by re-_running the bootstrap-vcpkg script with -disableMetrics,\npassing --disable-metrics to vcpkg on the command line,\nor by setting the VCPKG_DISABLE_METRICS environment variable.\n\nRead more about vcpkg telemetry at docs/about/privacy.md\n```\n\n### 安装依赖\n\n```sh\n ./vcpkg install spdlog\n ./vcpkg install ffmpeg[ffmpeg,avcodec,avdevice,avfilter,avformat,avresample,swresample,swscale,,nvcodec,x264,x265,vpx,webp,vorbis,opus,zlib]\n ./vcpkg install nlohmann-json\n ./vcpkg install openssl\n```\n\n### 编译代码\n\n进入代码目录，创建编译目录:\n\n```sh\nmkdir build\n```\n\n生产Makefile\n\n```sh\ncd build\ncmake .. -DVCPKG_ROOT=/home/ubuntu/vcpkg\n```\n\n编译\n\n```sh\nmake\n```\n\n### 运行\n\n#### 导出动态库\n\n```sh\n ./vcpkg export --raw spdlog ffmpeg nlohmann-json openssl\n```\n\n上面步骤会将依赖的库导出到当前目录，进入可执行库目录，将动态库加入到环境变量。\n\n#### Run\n\n```sh\n./reStreamer\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilzero%2FreStreamer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmilzero%2FreStreamer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilzero%2FreStreamer/lists"}