mirror of
https://github.com/datarhei/restreamer.git
synced 2025-12-11 22:14:02 +01:00
Add v2.1.0
This commit is contained in:
62
CHANGELOG.md
Normal file
62
CHANGELOG.md
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
# Restreamer
|
||||||
|
|
||||||
|
### v2.1.0
|
||||||
|
|
||||||
|
- Fix Dockerfile (bundles frontend, backend and FFmpeg)
|
||||||
|
|
||||||
|
#### Restreamer UI v1.0.0 > v1.1.0
|
||||||
|
|
||||||
|
- Add "HLS cleanup" as an optional function ([Philipp Trenz](https://github.com/philipptrenz))
|
||||||
|
- Add /ui info to / ([#326](https://github.com/datarhei/restreamer/issues/326))
|
||||||
|
- Add Russian translation (thx Inthegamelp)
|
||||||
|
- Add missed VAAPI encoder
|
||||||
|
- Add missed V4L2_M2M encoder
|
||||||
|
- Add missed Raspberry Pi 64bit Docker image
|
||||||
|
- Mod updates VideoJS
|
||||||
|
- Add option to disable playersites share-button (thx Anders Mellgren)
|
||||||
|
- Fix hides unset content license on playersite (thx Anders Mellgren)
|
||||||
|
- Fix updates V4L2 device-list on select
|
||||||
|
- Fix snapshot interval ([#341](https://github.com/datarhei/restreamer/issues/340))
|
||||||
|
- Fix reverse proxy issue ([#340](https://github.com/datarhei/restreamer/issues/340))
|
||||||
|
- Fix double escape failer ([#336](https://github.com/datarhei/restreamer/issues/336))
|
||||||
|
- Fix type in player plugin ([#336](https://github.com/datarhei/restreamer/issues/336))
|
||||||
|
- Fix deletes processes with dependencies (thx Patron Ramakrishna Chillara)
|
||||||
|
- Fix datarhei Core publication service
|
||||||
|
- Fix dependabot alerts
|
||||||
|
- Fix code scanning alerts
|
||||||
|
- Merge security pr
|
||||||
|
|
||||||
|
Preparation for FFmpeg v5.0 (migration will not work)
|
||||||
|
|
||||||
|
- Add FFmpeg v5.0 commands (preparation)
|
||||||
|
- Mod allows FFmpeg v5.0 (preparation)
|
||||||
|
|
||||||
|
#### Core v16.7.2 > v16.8.0
|
||||||
|
|
||||||
|
- Add purge_on_delete function
|
||||||
|
- Mod updated dependencies
|
||||||
|
- Mod updated API docs
|
||||||
|
- Fix disabled session logging
|
||||||
|
- Fix FFmpeg skills reload
|
||||||
|
- Fix ignores processes with invalid references (thx Patron Ramakrishna Chillara)
|
||||||
|
- Fix code scanning alerts
|
||||||
|
|
||||||
|
#### FFmpeg v4.2.2 > v4.2.2-1
|
||||||
|
|
||||||
|
- Mod enables libv4l2 + v4l2_m2m for all Docker images ([#339](https://github.com/datarhei/restreamer/issues/339))
|
||||||
|
- Mod updates packages (freetype, libxml2, VAAPI-Libs (gmmlib, media-driver, media-sdk))
|
||||||
|
- Fix cuda Docker image ([#328](https://github.com/datarhei/restreamer/issues/328))
|
||||||
|
- Fix VAAPI Docker image
|
||||||
|
|
||||||
|
#### FFmpeg v5.0.1
|
||||||
|
|
||||||
|
- Add FFmpeg v5.0 JSONSTATS patch (preparation)
|
||||||
|
|
||||||
|
#### Documentation
|
||||||
|
|
||||||
|
- Add [Basic troubleshooting guide](https://docs.datarhei.com/restreamer/knowledge-base/troubleshooting/basic-troubleshooting)
|
||||||
|
- Add [custom playersite guide](https://docs.datarhei.com/restreamer/knowledge-base/user-guides/how-to-integrate-a-website) ([#337](https://github.com/datarhei/restreamer/issues/337))
|
||||||
|
- Add [guide for custom RTMP port](https://docs.datarhei.com/restreamer/knowledge-base/user-guides/how-to-change-the-rtmp-port)
|
||||||
|
- Add [encoding compatiblity list](https://docs.datarhei.com/restreamer/knowledge-base/troubleshooting/encoding-compatibility-list))
|
||||||
|
|
||||||
|
---
|
||||||
@@ -1,26 +1,10 @@
|
|||||||
ARG NODE_IMAGE=node:17-alpine3.15
|
ARG RESTREAMER_UI_IMAGE=datarhei/restreamer-ui:latest
|
||||||
|
|
||||||
ARG CORE_IMAGE=datarhei/base:alpine-core-latest
|
ARG CORE_IMAGE=datarhei/base:alpine-core-latest
|
||||||
|
|
||||||
ARG FFMPEG_IMAGE=datarhei/base:alpine-ffmpeg-latest
|
ARG FFMPEG_IMAGE=datarhei/base:alpine-ffmpeg-latest
|
||||||
|
|
||||||
FROM $NODE_IMAGE as restreamer-ui
|
FROM $RESTREAMER_UI_IMAGE as restreamer-ui
|
||||||
|
|
||||||
ARG NODE_SPACE_SIZE=10240
|
|
||||||
ENV NODE_OPTIONS="--openssl-legacy-provider --max-old-space-size=$NODE_SPACE_SIZE"
|
|
||||||
|
|
||||||
ENV PUBLIC_URL "/ui"
|
|
||||||
|
|
||||||
COPY . /ui
|
|
||||||
|
|
||||||
RUN cd /ui && \
|
|
||||||
npm config set fetch-retries 10 && \
|
|
||||||
npm config set fetch-retry-mintimeout 100000 && \
|
|
||||||
npm config set fetch-retry-maxtimeout 600000 && \
|
|
||||||
npm config set cache-min 3600 && \
|
|
||||||
npm config ls -l && \
|
|
||||||
npm install && \
|
|
||||||
npm run build
|
|
||||||
|
|
||||||
FROM $CORE_IMAGE as core
|
FROM $CORE_IMAGE as core
|
||||||
|
|
||||||
@@ -29,6 +13,9 @@ FROM $FFMPEG_IMAGE
|
|||||||
COPY --from=core /core /core
|
COPY --from=core /core /core
|
||||||
COPY --from=restreamer-ui /ui/build /core/ui
|
COPY --from=restreamer-ui /ui/build /core/ui
|
||||||
|
|
||||||
|
COPY ./run.sh /core/bin/run.sh
|
||||||
|
COPY ./ui-root /core/ui-root
|
||||||
|
|
||||||
RUN ffmpeg -buildconf
|
RUN ffmpeg -buildconf
|
||||||
|
|
||||||
ENV CORE_CONFIGFILE=/core/config/config.json
|
ENV CORE_CONFIGFILE=/core/config/config.json
|
||||||
2
LICENSE
2
LICENSE
@@ -186,7 +186,7 @@
|
|||||||
same "printed page" as the copyright notice for easier
|
same "printed page" as the copyright notice for easier
|
||||||
identification within third-party archives.
|
identification within third-party archives.
|
||||||
|
|
||||||
Copyright {yyyy} {name of copyright owner}
|
Copyright 2022 FOSS GmbH
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
you may not use this file except in compliance with the License.
|
you may not use this file except in compliance with the License.
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ docker run -d --restart=always --name restreamer \
|
|||||||
|
|
||||||
*`--privileged` just for local devices like soundcard or HDMI-out.*
|
*`--privileged` just for local devices like soundcard or HDMI-out.*
|
||||||
|
|
||||||
**ARMv7 Raspberry Pi:**
|
**ARMv7/ARM64 Raspberry Pi:**
|
||||||
```sh
|
```sh
|
||||||
docker run -d --restart=always --name restreamer \
|
docker run -d --restart=always --name restreamer \
|
||||||
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
||||||
@@ -62,7 +62,7 @@ docker run -d --restart=always --name restreamer \
|
|||||||
```sh
|
```sh
|
||||||
docker run -d --restart=always --name restreamer \
|
docker run -d --restart=always --name restreamer \
|
||||||
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
||||||
--runtime=nvidia \
|
--runtime=nvidia --privileged \
|
||||||
-p 8080:8080 -p 8181:8181 -p 1935:1935 datarhei/restreamer:cuda-latest
|
-p 8080:8080 -p 8181:8181 -p 1935:1935 datarhei/restreamer:cuda-latest
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -70,7 +70,7 @@ docker run -d --restart=always --name restreamer \
|
|||||||
```sh
|
```sh
|
||||||
docker run -d --restart=always --name restreamer \
|
docker run -d --restart=always --name restreamer \
|
||||||
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
-v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data \
|
||||||
--privileged \
|
-v /dev/dri:/dev/dri --privileged \
|
||||||
-p 8080:8080 -p 8181:8181 -p 1935:1935 datarhei/restreamer:vaapi-latest
|
-p 8080:8080 -p 8181:8181 -p 1935:1935 datarhei/restreamer:vaapi-latest
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
21
run.sh
Executable file
21
run.sh
Executable file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Start script for the Restreamer bundle
|
||||||
|
|
||||||
|
# First run the import program. It will read the db.dir from the config file in order to
|
||||||
|
# find an old v1.json. This will be converted to the new db format.
|
||||||
|
|
||||||
|
./bin/import
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create a hint for the admin interface if there is no index.html
|
||||||
|
|
||||||
|
if ! [ -f "${CORE_STORAGE_DISK_DIR}/index.html" ]; then
|
||||||
|
cp /core/ui-root/index.html /core/ui-root/index_icon.svg ${CORE_STORAGE_DISK_DIR}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Now run the core with the possibly converted configuration.
|
||||||
|
|
||||||
|
./bin/core
|
||||||
66
ui-root/index.html
Normal file
66
ui-root/index.html
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<link rel="icon" href="/ui/favicon.ico" />
|
||||||
|
<meta name="viewport" content="minimum-scale=1, initial-scale=1, width=device-width" />
|
||||||
|
<meta name="theme-color" content="#000000" />
|
||||||
|
<meta name="description" content="Restreamer – Video-Streaming" />
|
||||||
|
<link rel="apple-touch-icon" href="/ui/logo192.png" />
|
||||||
|
<link rel="manifest" href="/ui/manifest.json" />
|
||||||
|
<title>Restreamer</title>
|
||||||
|
<style>
|
||||||
|
html {
|
||||||
|
background-color: rgb(26,26,26);
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
a, a.hover {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
hr {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
border-color: rgba(0,0,0,.25);
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-top: -15px;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.box {
|
||||||
|
width: 350px;
|
||||||
|
height: 365px;
|
||||||
|
background-color: rgba(56, 56, 56, .95);
|
||||||
|
border-radius: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.icon {
|
||||||
|
width: 285px;
|
||||||
|
height: 190px;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin: 30px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="container">
|
||||||
|
<div class="box">
|
||||||
|
<img src='index_icon.svg' class="icon" alt='datarhei Restreamer logo' />
|
||||||
|
<p style="padding: 10px 20px 20px 20px;">
|
||||||
|
An easy to use video server and framework for video streaming.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<hr>
|
||||||
|
<a href='/ui'>Did you mean to go to the admin panel?</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
1
ui-root/index_icon.svg
Normal file
1
ui-root/index_icon.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 19 KiB |
Reference in New Issue
Block a user