RTMP to MPEG-DASH로 라이브 스트리밍하는 방법
16145 단어 mpeg-dashnginx-rtmp-moduleffmpeg
소개
스테디셀러 nginx-rtmp-module 로 RTMP to HLS 전송을 실시하고 있었습니다만,
RTMP to MPEG-DASH로 해달라고 말해 버렸으므로 그 대응을 실시했습니다.
RTMP to HLS로 전달하는 방법은 많은 웹으로 넘쳐났습니다만,
RTMP to MPEG-DASH로 전송하는 방법에 대해서는 찾지 못했기 때문에,
기사로 남겨두려고 생각하고 하는 방법에 대해 정리했습니다.
nginx-rtmp-module에서 MPEG-DASH 배포를 위한 설정(Docker)
RTMP to MPEG-DASH를 수행하는 Dockerfile은 ↓입니다.
DockerfileFROM tiangolo/nginx-rtmp
# Debian OS (64bit) に対応した static build をダウンロード & 解凍して、/usr/local/bin 以下に移動する
WORKDIR /tmp
RUN mkdir ffmpeg
RUN curl -L -O https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
RUN tar -Jxvf ffmpeg-release-amd64-static.tar.xz -C ffmpeg --strip-components 1
RUN mv ./ffmpeg/ffmpeg /usr/local/bin/ffmpeg
# MPEG-DASH の配信ファイルを配置するためのフォルダ (.mpd, .m4s)
RUN mkdir -p /usr/local/nginx/dash
WORKDIR /usr/local/nginx/dash
# MPEG-DASH 配信のための設定を記載した nginx.conf で
# Docker イメージ内の nginx.conf を上書きする (nginx.conf の詳細は後述)
COPY nginx.conf /etc/nginx/nginx.conf
CMD nginx -g "daemon off;"
이번에는 이 Docker 이미지을 사용했습니다.
MPEG-DASH 배포를 위해 ffmpeg 버전은 4 이상을 사용합니다. (Defo apt-get
에서 설치할 수있는 ffmpeg 버전 (3.2)에서는 MPEG-DASH를 라이브 스트리밍 전송하는 데 필요한 streaming 옵션을 사용할 수 없기 때문에)
이번에 사용한 nginx-rtmp-module의 Docker 이미지 OS에는 Debian OS(64bit)가 사용되고 있습니다.
ffmpeg 를 빌드하는 것은 시간과 노력이 걸리기 때문에 ffmpeg 공식 사이트 (ffmpeg-release-amd64-static.tar.xz)
nginx.conf의 내용
nginx.conf의 내용은 ↓와 같습니다.
중요한 것은 application live
의 범위내의 exec
부분이 됩니다.
nginx.confuser root;
worker_processes auto;
rtmp_auto_push on;
events {}
http {
include mime.types;
default_type application/octet-stream;
server_tokens off;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location /index.html {
root /usr/local/nginx/html;
}
location / {
root /usr/local/nginx/dash;
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(mpd)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(m4s)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
}
}
}
rtmp {
server {
listen 1935;
listen [::]:1935 ipv6only=on;
application live {
live on;
record off;
wait_key on;
wait_video on;
# ffmpeg を使用して RTMP のストリームを MPEG-DASH に変換する
# 変換した MPEG-DASH 関連のファイルは /usr/local/nginx/dash フォルダに生成される
exec /usr/local/bin/ffmpeg -i rtmp://localhost:1935/$app/$name -c copy -r 30 -sc_threshold 0 -b_strategy 0 -streaming 1
-use_timeline 1 -use_template 1 -seg_duration 4 -window_size 5 -adaptation_sets "id=0,streams=v id=1,streams=a"
-init_seg_name $name\$RepresentationID\$.m4s -media_seg_name $name\$RepresentationID\$-\$Number%05d\$.m4s
-f dash /usr/local/nginx/dash/$name.mpd;
}
}
}
ffmpeg 의 옵션으로 init_seg_name
와 media_seg_name
를 명시적으로 지정하고 있는 것은,
복수의 RTMP 를 받았을 때에, 생성되는 MPEG-DASH 관련의 파일명이 중복하지 않게 하기 (위해)때문에입니다.
실제로 움직여보세요
폴더 구성은 Dockerfile
와 같은 계층구조에 nginx.conf
를 배치하기만 하면 됩니다.
tree -L 2 nginx-rtmp-to-dash/
nginx-rtmp-to-dash/
├── Dockerfile
└── nginx.conf
0 directories, 2 files
터미널에서 nginx-rtmp-to-dash
폴더에 들어간 후,
↓ 명령을 실행하여 실제로 움직여보십시오.
↓ 와 같은 출력을 확인할 수 있으면 빌드와 실행이 성공한 상태입니다.
$ docker build -t nginx-rtmp-to-dash .
Sending build context to Docker daemon 5.12kB
Step 1/10 : FROM tiangolo/nginx-rtmp
---> ab0f3f3dcb6f
Step 2/10 : WORKDIR /tmp
---> Using cache
---> 46e748fb4d69
Step 3/10 : RUN mkdir ffmpeg
---> Using cache
---> 945870247325
Step 4/10 : RUN curl -L -O https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
---> Using cache
---> f2ee9c7e8e70
Step 5/10 : RUN tar -Jxvf ffmpeg-release-amd64-static.tar.xz -C ffmpeg --strip-components 1
---> Using cache
---> fcf0ddca90f6
Step 6/10 : RUN mv ./ffmpeg/ffmpeg /usr/local/bin/ffmpeg
---> Using cache
---> 79a38f12d835
Step 7/10 : RUN mkdir -p /usr/local/nginx/dash
---> Using cache
---> 2d6aaeaa3bcb
Step 8/10 : WORKDIR /usr/local/nginx/dash
---> Using cache
---> 9968125c8fac
Step 9/10 : COPY nginx.conf /etc/nginx/nginx.conf
---> Using cache
---> b83b59608d28
Step 10/10 : CMD nginx -g "daemon off;"
---> Using cache
---> bb90e10e5c8e
Successfully built bb90e10e5c8e
Successfully tagged nginx-rtmp-to-dash:latest
$ docker run --name nginx-rtmp-to-dash -p 80:80 -p 1935:1935 nginx-rtmp-to-dash
# エラーが発生する等で処理が中断されなければ成功
OBS 을 사용하여 실제로 rtmp://localhost:1935/live/test
브라우저에서 http://localhost/test.mpd에 액세스하면,
생성된 MPEG-DASH 파일에 액세스할 수 있는지 확인할 수 있습니다.
그러나 ↑로 파일의 생성은 확인할 수 있다고 생각합니다만,
실제로 동영상도 재생해보고 정상적으로 보이고 있는지 확인할 수 없으면 불안하므로,
이번에는 dash.js 을 사용하여 실제로 전달되는 영상을 보고 싶습니다.
html 파일을 준비하고 Chrome에서 연 후 화면 중앙에 나오는 로딩이 끝난 단계에서 재생 버튼을 클릭하면 MPEG-DASH 재생을 확인할 수 있습니다.
동영상 재생을 확인하는 데 사용한 html 파일은 ↓입니다.
index.html<head>
<title>RTMP to MPEG-DASH</title>
<meta charset="UTF-8">
<script src="https://cdn.dashjs.org/latest/dash.all.min.js"></script>
<style>
video {
width: 640px;
height: 360px;
}
</style>
</head>
<body>
<div>
<!-- rtmp://localhost:1935/live/test に配信した際に生成される MPEG-DASH の URLを指定 -->
<video data-dashjs-player autoplay src="http://localhost/test.mpd" controls></video>
</div>
</body>
OBS에서 rtmp://localhost:1935/live/test
로 RTMP를 보낼 때 Chrome에서 ↑의 HTML을 열 때 ↓
결론
RTMP에서 MPEG-DASH로 변환하기위한 ffmpeg의 구성을 고려하여,
컨버터에서 재생 가능하게 될 때까지 옵션 설정을 찾을 때까지
여러가지 빠져 버려, 이것만으로 꽤 시간을 먹어 버렸습니다. .
참고 링크
htps : // 니코 b. 네 t/다 sh_무ぇr_우ぃth_っ fmぺg/
htps : // 기주 b. 이 m/다 sh-인즈 스트리-후우 m/다 sh. js ?
htps : // m / mh / ms / d5c3-b173 에바 c5b0b53
Reference
이 문제에 관하여(RTMP to MPEG-DASH로 라이브 스트리밍하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/nikaera/items/f46d45bc1957a71b42e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
RTMP to MPEG-DASH를 수행하는 Dockerfile은 ↓입니다.
Dockerfile
FROM tiangolo/nginx-rtmp
# Debian OS (64bit) に対応した static build をダウンロード & 解凍して、/usr/local/bin 以下に移動する
WORKDIR /tmp
RUN mkdir ffmpeg
RUN curl -L -O https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
RUN tar -Jxvf ffmpeg-release-amd64-static.tar.xz -C ffmpeg --strip-components 1
RUN mv ./ffmpeg/ffmpeg /usr/local/bin/ffmpeg
# MPEG-DASH の配信ファイルを配置するためのフォルダ (.mpd, .m4s)
RUN mkdir -p /usr/local/nginx/dash
WORKDIR /usr/local/nginx/dash
# MPEG-DASH 配信のための設定を記載した nginx.conf で
# Docker イメージ内の nginx.conf を上書きする (nginx.conf の詳細は後述)
COPY nginx.conf /etc/nginx/nginx.conf
CMD nginx -g "daemon off;"
이번에는 이 Docker 이미지을 사용했습니다.
MPEG-DASH 배포를 위해 ffmpeg 버전은 4 이상을 사용합니다. (Defo
apt-get
에서 설치할 수있는 ffmpeg 버전 (3.2)에서는 MPEG-DASH를 라이브 스트리밍 전송하는 데 필요한 streaming 옵션을 사용할 수 없기 때문에)이번에 사용한 nginx-rtmp-module의 Docker 이미지 OS에는 Debian OS(64bit)가 사용되고 있습니다.
ffmpeg 를 빌드하는 것은 시간과 노력이 걸리기 때문에 ffmpeg 공식 사이트 (ffmpeg-release-amd64-static.tar.xz)
nginx.conf의 내용
nginx.conf의 내용은 ↓와 같습니다.
중요한 것은 application live
의 범위내의 exec
부분이 됩니다.
nginx.confuser root;
worker_processes auto;
rtmp_auto_push on;
events {}
http {
include mime.types;
default_type application/octet-stream;
server_tokens off;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location /index.html {
root /usr/local/nginx/html;
}
location / {
root /usr/local/nginx/dash;
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(mpd)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(m4s)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
}
}
}
rtmp {
server {
listen 1935;
listen [::]:1935 ipv6only=on;
application live {
live on;
record off;
wait_key on;
wait_video on;
# ffmpeg を使用して RTMP のストリームを MPEG-DASH に変換する
# 変換した MPEG-DASH 関連のファイルは /usr/local/nginx/dash フォルダに生成される
exec /usr/local/bin/ffmpeg -i rtmp://localhost:1935/$app/$name -c copy -r 30 -sc_threshold 0 -b_strategy 0 -streaming 1
-use_timeline 1 -use_template 1 -seg_duration 4 -window_size 5 -adaptation_sets "id=0,streams=v id=1,streams=a"
-init_seg_name $name\$RepresentationID\$.m4s -media_seg_name $name\$RepresentationID\$-\$Number%05d\$.m4s
-f dash /usr/local/nginx/dash/$name.mpd;
}
}
}
ffmpeg 의 옵션으로 init_seg_name
와 media_seg_name
를 명시적으로 지정하고 있는 것은,
복수의 RTMP 를 받았을 때에, 생성되는 MPEG-DASH 관련의 파일명이 중복하지 않게 하기 (위해)때문에입니다.
실제로 움직여보세요
폴더 구성은 Dockerfile
와 같은 계층구조에 nginx.conf
를 배치하기만 하면 됩니다.
tree -L 2 nginx-rtmp-to-dash/
nginx-rtmp-to-dash/
├── Dockerfile
└── nginx.conf
0 directories, 2 files
터미널에서 nginx-rtmp-to-dash
폴더에 들어간 후,
↓ 명령을 실행하여 실제로 움직여보십시오.
↓ 와 같은 출력을 확인할 수 있으면 빌드와 실행이 성공한 상태입니다.
$ docker build -t nginx-rtmp-to-dash .
Sending build context to Docker daemon 5.12kB
Step 1/10 : FROM tiangolo/nginx-rtmp
---> ab0f3f3dcb6f
Step 2/10 : WORKDIR /tmp
---> Using cache
---> 46e748fb4d69
Step 3/10 : RUN mkdir ffmpeg
---> Using cache
---> 945870247325
Step 4/10 : RUN curl -L -O https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
---> Using cache
---> f2ee9c7e8e70
Step 5/10 : RUN tar -Jxvf ffmpeg-release-amd64-static.tar.xz -C ffmpeg --strip-components 1
---> Using cache
---> fcf0ddca90f6
Step 6/10 : RUN mv ./ffmpeg/ffmpeg /usr/local/bin/ffmpeg
---> Using cache
---> 79a38f12d835
Step 7/10 : RUN mkdir -p /usr/local/nginx/dash
---> Using cache
---> 2d6aaeaa3bcb
Step 8/10 : WORKDIR /usr/local/nginx/dash
---> Using cache
---> 9968125c8fac
Step 9/10 : COPY nginx.conf /etc/nginx/nginx.conf
---> Using cache
---> b83b59608d28
Step 10/10 : CMD nginx -g "daemon off;"
---> Using cache
---> bb90e10e5c8e
Successfully built bb90e10e5c8e
Successfully tagged nginx-rtmp-to-dash:latest
$ docker run --name nginx-rtmp-to-dash -p 80:80 -p 1935:1935 nginx-rtmp-to-dash
# エラーが発生する等で処理が中断されなければ成功
OBS 을 사용하여 실제로 rtmp://localhost:1935/live/test
브라우저에서 http://localhost/test.mpd에 액세스하면,
생성된 MPEG-DASH 파일에 액세스할 수 있는지 확인할 수 있습니다.
그러나 ↑로 파일의 생성은 확인할 수 있다고 생각합니다만,
실제로 동영상도 재생해보고 정상적으로 보이고 있는지 확인할 수 없으면 불안하므로,
이번에는 dash.js 을 사용하여 실제로 전달되는 영상을 보고 싶습니다.
html 파일을 준비하고 Chrome에서 연 후 화면 중앙에 나오는 로딩이 끝난 단계에서 재생 버튼을 클릭하면 MPEG-DASH 재생을 확인할 수 있습니다.
동영상 재생을 확인하는 데 사용한 html 파일은 ↓입니다.
index.html<head>
<title>RTMP to MPEG-DASH</title>
<meta charset="UTF-8">
<script src="https://cdn.dashjs.org/latest/dash.all.min.js"></script>
<style>
video {
width: 640px;
height: 360px;
}
</style>
</head>
<body>
<div>
<!-- rtmp://localhost:1935/live/test に配信した際に生成される MPEG-DASH の URLを指定 -->
<video data-dashjs-player autoplay src="http://localhost/test.mpd" controls></video>
</div>
</body>
OBS에서 rtmp://localhost:1935/live/test
로 RTMP를 보낼 때 Chrome에서 ↑의 HTML을 열 때 ↓
결론
RTMP에서 MPEG-DASH로 변환하기위한 ffmpeg의 구성을 고려하여,
컨버터에서 재생 가능하게 될 때까지 옵션 설정을 찾을 때까지
여러가지 빠져 버려, 이것만으로 꽤 시간을 먹어 버렸습니다. .
참고 링크
htps : // 니코 b. 네 t/다 sh_무ぇr_우ぃth_っ fmぺg/
htps : // 기주 b. 이 m/다 sh-인즈 스트리-후우 m/다 sh. js ?
htps : // m / mh / ms / d5c3-b173 에바 c5b0b53
Reference
이 문제에 관하여(RTMP to MPEG-DASH로 라이브 스트리밍하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/nikaera/items/f46d45bc1957a71b42e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
user root;
worker_processes auto;
rtmp_auto_push on;
events {}
http {
include mime.types;
default_type application/octet-stream;
server_tokens off;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location /index.html {
root /usr/local/nginx/html;
}
location / {
root /usr/local/nginx/dash;
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(mpd)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
# dash.js で MPEG-DASH の動作確認を行うための CORS を設定 (詳細は後述)
location ~* \.(m4s)$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
if ($request_method = 'OPTIONS') {
return 204;
}
}
}
}
}
rtmp {
server {
listen 1935;
listen [::]:1935 ipv6only=on;
application live {
live on;
record off;
wait_key on;
wait_video on;
# ffmpeg を使用して RTMP のストリームを MPEG-DASH に変換する
# 変換した MPEG-DASH 関連のファイルは /usr/local/nginx/dash フォルダに生成される
exec /usr/local/bin/ffmpeg -i rtmp://localhost:1935/$app/$name -c copy -r 30 -sc_threshold 0 -b_strategy 0 -streaming 1
-use_timeline 1 -use_template 1 -seg_duration 4 -window_size 5 -adaptation_sets "id=0,streams=v id=1,streams=a"
-init_seg_name $name\$RepresentationID\$.m4s -media_seg_name $name\$RepresentationID\$-\$Number%05d\$.m4s
-f dash /usr/local/nginx/dash/$name.mpd;
}
}
}
폴더 구성은
Dockerfile
와 같은 계층구조에 nginx.conf
를 배치하기만 하면 됩니다.tree -L 2 nginx-rtmp-to-dash/
nginx-rtmp-to-dash/
├── Dockerfile
└── nginx.conf
0 directories, 2 files
터미널에서
nginx-rtmp-to-dash
폴더에 들어간 후,↓ 명령을 실행하여 실제로 움직여보십시오.
↓ 와 같은 출력을 확인할 수 있으면 빌드와 실행이 성공한 상태입니다.
$ docker build -t nginx-rtmp-to-dash .
Sending build context to Docker daemon 5.12kB
Step 1/10 : FROM tiangolo/nginx-rtmp
---> ab0f3f3dcb6f
Step 2/10 : WORKDIR /tmp
---> Using cache
---> 46e748fb4d69
Step 3/10 : RUN mkdir ffmpeg
---> Using cache
---> 945870247325
Step 4/10 : RUN curl -L -O https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
---> Using cache
---> f2ee9c7e8e70
Step 5/10 : RUN tar -Jxvf ffmpeg-release-amd64-static.tar.xz -C ffmpeg --strip-components 1
---> Using cache
---> fcf0ddca90f6
Step 6/10 : RUN mv ./ffmpeg/ffmpeg /usr/local/bin/ffmpeg
---> Using cache
---> 79a38f12d835
Step 7/10 : RUN mkdir -p /usr/local/nginx/dash
---> Using cache
---> 2d6aaeaa3bcb
Step 8/10 : WORKDIR /usr/local/nginx/dash
---> Using cache
---> 9968125c8fac
Step 9/10 : COPY nginx.conf /etc/nginx/nginx.conf
---> Using cache
---> b83b59608d28
Step 10/10 : CMD nginx -g "daemon off;"
---> Using cache
---> bb90e10e5c8e
Successfully built bb90e10e5c8e
Successfully tagged nginx-rtmp-to-dash:latest
$ docker run --name nginx-rtmp-to-dash -p 80:80 -p 1935:1935 nginx-rtmp-to-dash
# エラーが発生する等で処理が中断されなければ成功
OBS 을 사용하여 실제로
rtmp://localhost:1935/live/test
브라우저에서 http://localhost/test.mpd에 액세스하면,생성된 MPEG-DASH 파일에 액세스할 수 있는지 확인할 수 있습니다.
그러나 ↑로 파일의 생성은 확인할 수 있다고 생각합니다만,
실제로 동영상도 재생해보고 정상적으로 보이고 있는지 확인할 수 없으면 불안하므로,
이번에는 dash.js 을 사용하여 실제로 전달되는 영상을 보고 싶습니다.
html 파일을 준비하고 Chrome에서 연 후 화면 중앙에 나오는 로딩이 끝난 단계에서 재생 버튼을 클릭하면 MPEG-DASH 재생을 확인할 수 있습니다.
동영상 재생을 확인하는 데 사용한 html 파일은 ↓입니다.
index.html
<head>
<title>RTMP to MPEG-DASH</title>
<meta charset="UTF-8">
<script src="https://cdn.dashjs.org/latest/dash.all.min.js"></script>
<style>
video {
width: 640px;
height: 360px;
}
</style>
</head>
<body>
<div>
<!-- rtmp://localhost:1935/live/test に配信した際に生成される MPEG-DASH の URLを指定 -->
<video data-dashjs-player autoplay src="http://localhost/test.mpd" controls></video>
</div>
</body>
OBS에서
rtmp://localhost:1935/live/test
로 RTMP를 보낼 때 Chrome에서 ↑의 HTML을 열 때 ↓결론
RTMP에서 MPEG-DASH로 변환하기위한 ffmpeg의 구성을 고려하여,
컨버터에서 재생 가능하게 될 때까지 옵션 설정을 찾을 때까지
여러가지 빠져 버려, 이것만으로 꽤 시간을 먹어 버렸습니다. .
참고 링크
htps : // 니코 b. 네 t/다 sh_무ぇr_우ぃth_っ fmぺg/
htps : // 기주 b. 이 m/다 sh-인즈 스트리-후우 m/다 sh. js ?
htps : // m / mh / ms / d5c3-b173 에바 c5b0b53
Reference
이 문제에 관하여(RTMP to MPEG-DASH로 라이브 스트리밍하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/nikaera/items/f46d45bc1957a71b42e4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
htps : // 니코 b. 네 t/다 sh_무ぇr_우ぃth_っ fmぺg/
htps : // 기주 b. 이 m/다 sh-인즈 스트리-후우 m/다 sh. js ?
htps : // m / mh / ms / d5c3-b173 에바 c5b0b53
Reference
이 문제에 관하여(RTMP to MPEG-DASH로 라이브 스트리밍하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nikaera/items/f46d45bc1957a71b42e4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)