[教學文]
利用OBS-NDI實現多平台直播
https://home.gamer.com.tw/creationDetail.php?sn=4054775
最近打算開雙平台直播(Youtube+FB)
上次的仁王就是一次試水溫
不過其實我在嘗試的過程中受到不少挫折啦...
OBS+Nginx+rtmp+FFmpeg明顯是個更高明的作法
但我真的不會用QQ
也期待這篇文章能夠拋磚引玉引出一些大神來寫個教學文這樣
同時也有2部Youtube影片,追蹤數超過11萬的網紅Bmon's Live,也在其Youtube影片中提到,DS1821+:http://sy.to/j5yhf Discord 伺服器連結:https://discord.gg/S7gURc7P4W 是ㄉ 今天偷偷用NAS架設了一台Minecraft Server(´・ω・`) 有興趣一起玩的可以進Discord和我們交流交流啦!! 得獎名單(請點連結...
「nginx rtmp教學」的推薦目錄:
- 關於nginx rtmp教學 在 楓葉綠茶 Facebook 的最佳解答
- 關於nginx rtmp教學 在 楓葉綠茶 Facebook 的最佳解答
- 關於nginx rtmp教學 在 Bmon's Live Youtube 的精選貼文
- 關於nginx rtmp教學 在 FengXu Ch. 風絮 Youtube 的最佳解答
- 關於nginx rtmp教學 在 Re: [心得] 個人實況伺服器與高畫質轉碼- 看板Live - 批踢踢實業坊 的評價
- 關於nginx rtmp教學 在 使用nginx-rtmp打造简易直播系统 的評價
- 關於nginx rtmp教學 在 教程建一個自己的直播服務器!搭建nginx + rtmp直播服務器 的評價
- 關於nginx rtmp教學 在 MAC 架設nginx 串流伺服器讓OBS 能同時直播到多平台與 ... 的評價
- 關於nginx rtmp教學 在 搭建的Nginx + rtmp 流媒体服务器#26 - GitHub 的評價
- 關於nginx rtmp教學 在 Raspberry PI 攝影機計畫之新手簡單架設HLS 和RTSP Server 的評價
- 關於nginx rtmp教學 在 一介資男- 用#RaspberryPI 來架設#RTMP #Streaming 的評價
- 關於nginx rtmp教學 在 FFMPEG流RTSP到RTMP(Youtube)添加徽標- 優文庫 的評價
nginx rtmp教學 在 楓葉綠茶 Facebook 的最佳解答
[教學文]
利用OBS-NDI實現多平台直播
https://home.gamer.com.tw/creationDetail.php?sn=4054775
最近打算開雙平台直播(Youtube+FB)
上次的仁王就是一次試水溫
不過其實我在嘗試的過程中受到不少挫折啦...
OBS+Nginx+rtmp+FFmpeg明顯是個更高明的作法
但我真的不會用QQ
也期待這篇文章能夠拋磚引玉引出一些大神來寫個教學文這樣
nginx rtmp教學 在 Bmon's Live Youtube 的精選貼文
DS1821+:http://sy.to/j5yhf
Discord 伺服器連結:https://discord.gg/S7gURc7P4W
是ㄉ 今天偷偷用NAS架設了一台Minecraft Server(´・ω・`)
有興趣一起玩的可以進Discord和我們交流交流啦!!
得獎名單(請點連結進入觀看):https://media.discordapp.net/attachments/679581500475179044/825756924216606751/unknown.png
———抽獎方式———
公主今天特別幫大家和廠商爭取了一台DS120j
他是一台低功耗的1Bay NAS,並且同樣支援影片中所提到的各種各種套件功能,對於有存儲需求的朋友來說,可說是再適合不過了呢。
很謝謝大家願意等我們這麼久(´◓Д◔`)
上次的活動抽獎結果已經在影片中公布囉(ゝ∀・)
▫截止時間:2021/03/27 上午11:00
▫抽獎名單公布:2021/03/28 下午8:00
▫本次活動獎品:Synology DS120j
▫參加方式:
(1)喜歡這部影片
(2)將這部影片發表到你的Discord伺服器或Facebook後設定成公開,並且截圖保存以利後續確認(´◓Д◔`)
(3)在底下留言這部影片中,你最喜歡的NAS特殊玩法或是你自己想到的用法(ゝ∀・),並加上「我要抽DS120j」即可完成抽獎。
▫「B夢實況」 保有變更、修改、解釋活動規則的權利,參加此活動時即視為同意我們變更、修改及解釋活動規則之權利。
———一些酷酷的連結———
▫公主IG:https://www.instagram.com/dorabmontw
▫FB觀眾場社團:https://www.facebook.com/groups/BmonTeamFight
▫FB粉絲團網址:https://www.facebook.com/DorabmonVideo
▫合作信箱:sam3u7858@gmail.com
▫小宗宗的教學:https://www.soujirou.info/blog/39893
▫nginx rtmp server on Github:https://github.com/illuspas/nginx-rtmp-win32
0:00 開頭
1:05 NAS是什麼?
2:20 用NAS架Minecraft Server
4:52 架設虛擬機開Minecraft Server
6:36 其他酷酷的功能
7:17 Steam Server
9:03 Discord機器人
10:42 http-server
11:28 來用NAS來架設一台RTMP直播系統
12:58 總結
13:30 抽獎公布
#Synology #NAS #steamserver #rtmpserver
———Music used———
Jelly Stone
Brain Trust
Electrician - Jeremy Black
Electric Heritage
Ella Vater - The Mini Vandals
nginx rtmp教學 在 FengXu Ch. 風絮 Youtube 的最佳解答
nginx下載
https://pse.is/KADJ5
------------------------------------------------------------------------------------------------
option.txt 內容
push rtmp://live.twitch.tv/app/[串流金鑰];
push rtmp://a.rtmp.youtube.com/live2/[串流金鑰];
push rtmp://live-api-a.facebook.com:80/rtmp/[串流金鑰];
------------------------------------------------------------------------------------------------
OBS網址
rtmp://127.0.0.1:1935/live
------------------------------------------------------------------------------------------------
有甚麼問題可以再問哦!
FaceBook: https://www.facebook.com/AlayKeruGaming
Instagram: https://www.instagram.com/alaykeru/
Mixer :https://mixer.com/AlayKeru
Twitch: https://www.twitch.tv/alaykeru
Twitter: https://twitter.com/AlayGod
nginx rtmp教學 在 使用nginx-rtmp打造简易直播系统 的推薦與評價
【數位達人】如何善用手邊的 相機、攝影機 [線上直播]教學/ FB YouTube 線上直播. 數位達人. 數位達人 ... ... <看更多>
nginx rtmp教學 在 教程建一個自己的直播服務器!搭建nginx + rtmp直播服務器 的推薦與評價
教程建一個自己的直播服務器!搭建nginx + rtmp直播服務器 ... [10分鐘學會OBS多平台直播] OBS多 ... ... <看更多>
nginx rtmp教學 在 Re: [心得] 個人實況伺服器與高畫質轉碼- 看板Live - 批踢踢實業坊 的推薦與評價
各位好
有鑑於要達到類似YouTube的多編碼!
分享一下720p的轉碼設定值給大參考
如果有興趣還可以做出給手機的360p
不過我覺得這真的要很小心謹地使用
因為擁有個人影音播放伺服器可能會 ...被斷電(至少我前幾天停電週邊區域都沒停)
先不管那多了還是直接分享參數好了
有鑑於rtmp-nginx-module已有說明!
所以我們直接分享最重要的關鍵參數
IP架構如下:
192.168.2.22 主要直播伺服器對內IP
192.168.2.33 次要直播伺服器對內IP
192.168.2.111 個人直播影像處理機IP <- 總之就是用這個來直播給上面兩部
我們先當作192.168.2.33不存在好了
因為這有可能會侵犯其他公司的IP呢
這是接收1080FullHD原始畫質的設定
所以要設定以下的參數到你的OBS裡!
rtmp://192.168.2.22/live_in/CardLin
假設OBS出去的就是1080p不用再轉碼
先來描述一下架構由接收伺服器轉碼
MoreServer
|
|
111 --1080p--> 22 --720p,1080p--> 33
| |
| |
UserGroup1 UserGroup2
-- nginx.conf -- 192.168.2.22 --
application live_in {
live on;
allow play 127.0.0.1;
deny play all;
allow publish 192.168.2.111;
deny publish all;
drop_idle_publisher 10s;
record off;
# Transcode to 720p
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/live_in/$name live=1" -vcodec libx264 -preset veryfast -x264opts "threads=4:opencl=1:opencl_device=0:partitions=all:aq-mode=2:trellis=2:deblock=-1,-1:rc-lookahead=18:scenecut=18:ref=1:b-adapt=2" -maxrate 2300k -bufsize 23000k -s 1280x720 -sws_flags lanczos -acodec copy -f flv "rtmp://127.0.0.1/720p_live/$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-720p.log;
# Transcode to 1080p
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/live_in/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1/1080p_live/$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-1080p.log;
}
application 720p_live {
live on;
allow publish 127.0.0.1;
allow publish 192.168.2.33;
deny publish all;
record all;
record_path /path_to_shared_storage/720p;
recorder allin {
record all;
record_suffix 720p-%F-%H-%M-%S.flv;
}
# Coop Server
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/720p_live/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://192.168.2.33/720p_live/$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-720p-PushToCoop192.168.2.33.log;
# Live Service
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/720p_live/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1/live_out/720p$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-720p-live_out.log;
}
application 1080p_live {
live on;
allow publish 127.0.0.1;
allow publish 192.168.2.33;
deny publish all;
record all;
record_path /path_to_shared_storage/1080p;
recorder allin {
record all;
record_suffix 1080p-%F-%H-%M-%S.flv;
}
# Coop Server
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/1080p_live/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://192.168.2.33/1080p_live/$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-1080p-PushToCoop192.168.2.33.log;
# Live Service
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/1080p_live/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1/live_out/1080p$name live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-1080p-live_out.log;
}
application live_out {
live on;
allow publish 127.0.0.1;
deny publish all;
record off;
# Turn On optional exec
exec_options on;
# Condition: name=720pCardLin
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/live_out/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://live-tpe.twitch.tv/app/************************ live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-PushToTwitch.log name=720pCardLin;
# Condition: name=1080pCardLin
exec_push /opt/ffmpeg/bin/ffmpeg -i "rtmp://127.0.0.1/live_out/$name live=1" -vcodec copy -acodec copy -f flv "rtmp://a.rtmp.youtube.com/live2/************************ live=1" 2>>/usr/local/nginx/logs/ffmpeg-$name-PushToYouTube.log name=1080pCardLin;
}
--------------------------------
值得注意的是ffmpeg一定要絕對路徑
當然有人會將720p推送到Twitch網站
當然也可將1080p推送到YouTube網站
值得一提的是如果OBS選用GPU編碼器
可以設置到50Mbps傳輸給直播伺服器
讓直播伺服器壓縮到10Mbps以下輸出
謝謝大家
※ 引述《a34021501 (CARD)》之銘言:
: 標題: [心得] 個人實況伺服器與高畫質轉碼
: 時間: Tue Mar 21 04:24:56 2017
:
: 各位好,小弟的電腦又被GANK了!
:
: 所以來分享一下之前實況的參數!
:
: 希望大家可以提升畫質增加母數!
:
: 畢竟似乎只有一些高畫質被GANK!
:
: 需要一台空閒不使用的前遊戲機!
:
: 幾乎只有顯示卡加速轉碼畫質好!
:
: 簡單解釋一下: CPU CPU CPU CPU v.s. GPU GPU GPU GPU GPU GPU
: (通常匹配記憶體顆粒的數量)
: BUT..GPU裡面有至少數百個CPU
:
: 以我的前顯卡Bart為例共960個CPU
:
: 而CPU基本上越多核心越適合~轉檔
:
: 硬碟容量就看要不要自己錄影留存
:
: 接下來將一步一步安裝實況轉檔機
:
:
: 1.安裝Linux系統
: 我是使用Debain8.3.0共13張DVD全部拔縣斷網安裝
:
: 如果你不在意網路上自動更新伺服器可以連網安裝
:
: 總之一定要斷網安裝後修改/etc/apt/source.list
:
: 將裡13張ISO檔之路徑資料夾放進source.list裡面
:
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-1 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-2 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-3 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-4 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-5 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-6 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-7 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-8 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-9 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-10 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-11 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-12 jessie main contrib
: deb file:/opt/repo/debian-8.3.0-amd64-DVD-13 jessie main contrib
:
: 當然要先把每張ISO光碟之內容物複製進指定資料夾
:
: 之後要執行 # apt-get update 指令掃描整個清單
:
: 我的意思是若沒改清單,預設會連上網掃描雲端更新 (有中毒風險)
:
: 建議大家裝完系統後執行 apt-get install build-essential 即可安裝基本的編譯器
:
:
: 2.安裝 nginx 與 nginx-rtmp-module (即實況轉播伺服器的rtmp通訊兵)
:
: nginx
: https://nginx.org/
: https://nginx.org/download/
:
: nginx-rtmp-module
: https://github.com/arut/nginx-rtmp-module
:
: 這部分是最麻煩的,若碰到系統缺少lbrary時會錯誤 (*1.電腦也要查一下圖書館)
:
: 總之缺少library的時候使用 apt-cache search [******] 即可找到相關的圖書館
:
: 若找到 ******-dev 就是代表這是一個用於建構你的程式碼所需要的圖書建議安裝
:
: 舉個例子我常常編譯 nginx 時會出現 libssl 的錯誤 ,我會先輸入指令試著搜尋
:
: apt-cache search libssl 通常會跳出 libssl-dev 這個圖書可以供我安裝解問題
:
: 即 apt-get install libssl-dev 即可以安裝 libssl-dev 然後讓我的編譯器閉嘴
:
: 我好像忘了說編譯 nginx with rtmp module 的指令,我覺得我提供的網站更詳細
:
: 不過我還是說一下,在 nginx 的原始碼資料夾下輸入以下指令並加入 rtmp-module
:
: 不過還是先看一下清單選擇一下 nginx-rtmp-module 目前推薦的 nginx 版本較好
:
: # mkdir -p /opt/src
:
: # cd /opt/src
:
: /opt/src# wget https://nginx.org/download/nginx-1.11.5.tar.gz
:
: /opt/src# tar -xzf nginx-1.11.5.tar.gz
:
: /opt/src# wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
:
: /opt/src# unzip master.zip
:
: /opt/src# cd nginx-1.11.5/
:
: /opt/src/nginx-1.11.5# ./configure --add-module=/opt/src/nginx-rtmp-module-master
:
: /opt/src/nginx-1.11.5# make
:
: /opt/src/nginx-1.11.5# make install
:
: 如果以上安裝流程出現任何問題可以在下方推文發問,我會盡可能回答大家的問題
:
: 接下來就可以到 /usr/local/nginx/conf/nginx.conf 修改設定檔,請參考網頁吧
:
: 如果想要有不錯的連線與流量顯示頁面可以參考 rtmp-module 中 stat.xsl之用法
:
:
: 3. 安裝 libx264 與 ffmpeg (即實況轉碼伺服器的h264翻譯官)
:
: x264 (含lib)
: https://www.videolan.org/developers/x264.html
:
: ffmpeg
: https://ffmpeg.org/
:
: 總之先下載最新版的程式碼,因為通常x264都是經常在更新保持最佳編碼效率與效能兼顧
:
: 當然ffmpeg也很重要因為有時候會編碼失敗通通都是ffmpeg的錯!除非你的電腦有穩題!
:
: 這次我就不提供詳細的解決方案了,我只提供下載路徑與編譯的方式還有最後要如何用!
:
: /opt/src# wget ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
:
: /opt/src# tar -xvjf last_x264.tar.bz2
:
: /opt/src# wget https://ffmpeg.org/releases/ffmpeg-3.2.4.tar.bz2
:
: /opt/src# tar -xvjf ffmpeg-3.2.4.tar.bz2
:
: 一定有人問為什麼解壓縮的參數不同,因為我也不知道為何tar能解壓縮其實還蠻神奇的
:
: 總之tar與bz2的關係就像ffmpeg與x264的關係,如果有閒可以去下載tar與bz2的原始碼!
:
: /opt/src# cd x264-snapshot-20170319-2245/ (*時間流逝可能讓路徑不同請自行修正)
:
: /opt/src/x264-snapshot-20170319-2245# cd ..
:
: 為了確保下載到今天的最新版本的 x264 所以我要選擇使用另一個方法下載 x264 好嗎?
:
: /opt/src# git clone https://git.videolan.org/git/x264.git
:
: /opt/src# cd x264
:
: /opt/src/x264# ./configure --enable-static --enable-shared --enable-lto --enable-strip --enable-pic
:
: /opt/src/x264# make
:
: /opt/src/x264# make install
:
: 說明一下static library與shared library的不同好了,就差在.a是塞進執行檔.so放系統
:
: 不過通常我都是用 $LD_LIBRARY_PATH 指定要用哪個版本的.so,還可以排PATH的優先順序
:
: 不過一般人如果要將自己的 lib/*.so 列入清單,只要在 /etc/ld.so.conf.d/ 加lib路徑
:
: 然後執行 ldconfig 就可以更新,而且 /etc/profile.d/ 可以放登入時要執行的系統參數
:
: 例如置換 $PATH 與 $LD_LIBRARY_PATH 可以用 export PATH=myPATH:$PATH 讓myPATH優先
:
: 好了廢話講太多了,不過還可以加在個人的 ~/.bashrc 或 ~/.profile 等相關方式設定之
:
: 接下來我們要安裝ffmpeg並引入libx264的函式庫(圖書館)讓ffmpeg可以使用x264壓縮編碼
:
: /opt/src/x264# cd ../ffmpeg-3.2.4/
:
: /opt/src/ffmpeg-3.2.4# ./configure --enable-gpl --enable-libx264 --enable-pic --enable-hardcoded-tables -enable-memalign-hack --enable-memory-poisoning
:
: (不理新版x264) --extra-ldflags=-static
:
: (編不過的參數) --enable-lto
:
: /opt/src/ffmpeg-3.2.4# make
:
: /opt/src/ffmpeg-3.2.4# make install
:
: 基本上就會置換你系統中的 ffmpeg 讓它可以用最新版的 libx264 並高畫質壓縮你的實況
:
: ------------------------------------------------------------------------------
: 以下這三行給有需要很多版本的勇者: (這樣就可以把x264直接塞進ffmpeg避免被換掉)
: /opt/src/ffmpeg-3.2.4# ./configure --help
: /opt/src/ffmpeg-3.2.4# ./configure --prefix=/opt/ffmpeg-3.2.4_with_current_x264ver#.# --enable-gpl --enable-libx264 --enable-pic --enable-thumb --enable-lto --enable-hardcoded-tables --disable-safe-bitstream-reader --enable-memalign-hack --enable-memory-poisoning --extra-ldflags=-static
: /opt# ln -s ffmpeg-3.2.4/ ffmpeg
: 其中--enable-lto舊版gcc應該可以編得過, --enable-thumb好像是ARM的指令及加速160%
: ------------------------------------------------------------------------------
:
: 4.轉媽參數設定: (我直接分享我的YouTube與Twitch參數囉)
:
: 在分享我的參數之前,請您先使用 ldd ffmpeg 檢視圖書館中 libx264 路徑是否正確無誤
:
: -twitch_720p.sh---------------------------------------------------------------
: !#/bin/sh
: ffmpeg -i rtmp://127.0.0.1/live_in/CardLin -vcodec libx264 -preset veryfast -x264opts "qp=25:keyint=100:min-keyint=100:threads=4:opencl=1:opencl_device=0:partitions=all:aq-mode=2:trellis=2:deblock=-1,-1:rc-lookahead=25:scenecut=25:ref=1:b-adapt=2" -maxrate 2300k -bufsize 23000k -s 1280x720 -r 50 -force_fps -sws_flags lanczos -acodec copy -f flv rtmp://127.0.0.1/twitch_live_out/CardLin -rtmp_buffer 30000 -rtmp_live live
: ------------------------------------------------------------------------------
:
: -youtube_1080p.sh-------------------------------------------------------------
: !#/bin/sh
: ffmpeg -i rtmp://127.0.0.1/live_in/CardLin -vcodec libx264 -preset veryfast -x264opts "qp=25:keyint=100:min-keyint=100:threads=8:opencl=1:opencl_device=0:partitions=all:aq-mode=2:trellis=2:deblock=-1,-1:rc-lookahead=25:scenecut=25:ref=1:b-adapt=2" -maxrate 8000k -bufsize 80000k -s 1920x1080 -r 50 -force_fps -acodec copy -f flv rtmp://127.0.0.1/youtube_live_out/CardLin -rtmp_buffer 30000 -rtmp_live live
: ------------------------------------------------------------------------------
:
: 分析一下:這兩個是畫質還不錯的低碼率動態碼率參數!以下是你有可能會更改的數據!
: threads=8 //執行序數量,建議最多為實體核心數*1.5
: opencl=1 //是否開啟OpenCL加速,建議一定要開啟
: opencl_device=0 //設定OpenCL裝置編號 (多張GPU才有效)
: keyint, min-keyint = 100 //FPS等級的keyframe_interval, 建議2秒即
: r 50 //FPS設定成50
: s 1920x1080 //畫面寬長大小
: sws_flags lanczos //使用lanczos的方法降低解析度
:
: 好啦,今天就分享到這邊了,聰明的你應該有發現127.0.0.1可以改成其他電腦的IP位址
:
: 如果你有多部舊電腦的話就可以用全部的電腦效能一起做出和大型網站一樣多種解析度!
:
: 再提供兩個指令給大家自己查詢要如何使用ffmpeg與如何搭配libx264的"..."內設定值!
:
: $ ffmpeg --help full
:
: $ x264 --fullhelp
:
: 總結就是我會把我的OBS的rtmp網址設為實況伺服器,然後輸出25Mbps以上的高畫質!
:
: 然後再到我的實況伺服器或其他的子伺服器輸入指令以轉碼並輸出到不同的實況網站中!
:
: 可以在 nginx 設置 push 到實況網站,當然你要 push 到另一個實況伺服器當分流也可~
:
: 所以基本上大家可以參考一下轉出來的流量有多寬再決定要投放到哪個區域的實況網站!
:
: 補充一下OBS的設定好了,可以用"使用裝置時間戳記"的320kbps,44100hz音質會較好!
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.252.34
: ※ 文章網址: https://www.ptt.cc/bbs/Live/M.1490041511.A.C4D.html
: 跟大家開個玩笑,所以修改了內容,其實我只是在比擬通訊兵責任較輕,翻譯官要負責!
: ※ 編輯: a34021501 (1.164.252.34), 03/21/2017 04:42:55
: 推 wyiwyi: 推一下 03/21 06:50
: → a34021501: https://times.hinet.net/times/news/20080824 今天新聞 03/21 19:52
: → a34021501: 有提到git之內容可能下載到不當的內容,所以台灣的電信 03/21 19:53
: → a34021501: 業者針對http提供TranspartentProxy可有效防範下載失敗 03/21 19:55
: → a34021501: 我的Google對TP的見解 03/21 20:01
: ※ 編輯: a34021501 (1.164.252.34), 03/21/2017 21:33:45
:
: 來講一下壓縮參數好了,不過我不是開發人員,我所知道的都是我在網路上搜尋到的結果
:
: 首先講一下壓縮時的 I P B 三種 frame!! 在時間的流逝就像 IBBPBBPBBIBBPBBPBBI....
:
: 講白了 I 最重要! P 次要! B 普通! 說普通就是因為如果 B 的品質差畫面也會很差
:
: 所以重點是 I frame 已經固定了,反正我也不知道以後的 x264 如何定義 I frame間距
:
: 不過那不重要,重要的是 P frame 是由 I frame 搭配一些參數計算而成的預測未來畫面
:
: 我要說未來是因為那個未來是 I 的未來,但 P 其實是要與真實的未壓縮影像匹配算參數
:
: 總而言之在你看到 IPB 這三種 frame 出現在你的螢幕上的時候,代表那是以前發生的事
:
: 好了,現在來提一提 B frame 其實可以定義 bframe=0 關掉所有 B 就是只有 IP 這兩種
:
: 總之建議你不要設定 bframe=0 因為我加了 b-adapt=2 就是 Adaptive BFrame decision
:
: 再來就是我最喜歡的 trellis2 讓影像壓縮使用全模式的 decision 使整個壓縮效率增加
:
: 然後再來是我覺得應該這些參數都應該預設開啟可是不知道為什麼沒有開可能我沒很懂吧
:
: 先來說說 weightp 好了,因為 B 通常夾在兩個 P 中間,所以 B 是由 P 經過向量計算!
:
: 我還是沒講 weightp 因為我真的不太懂,不過看手冊的意思大概是有些P重要有些不重要
:
: 所以就以這 weight 比重來計算出要用哪個 P 參考較多,哪個 P 參考較少,畫質會變好
:
: 反正 I 還是最重要,畢竟 P 是由 I 計算而成,所以 me 與 subme 有很多種模式可以調
:
: 但我建議還是保留預設值,因為通常調高之後但腦會無法負荷而無法正常實況例如沒畫面
:
: 至於 aq-mode 似乎是用於評估上面這些參數及壓縮後的影像是否滿足我們設定的 qp=25
:
: 總之 aq-mode = 2 是我玩一些明亮遊戲時用的參數, aq-mode = 3 是我玩恐怖遊戲所用
:
: 畢竟 aq-mode = 3 有考慮黑暗場景,所以我還是設成 aq-mode = 2 好了壓縮率應該較高
:
: 至於 weightp 我還是覺得怪怪的所以我先設為 veryfast preset 的預設參數即不複製圖
:
: 畢竟經過了一段時間,這張圖像如果還一樣我覺得真的要考慮是否有畫面定格的情況發生
:
: 以上是我個人的理解,並且我其實不明白 x264 與 ffmpeg 的搭配與組合似乎有點很複雜
:
: 我的意思是說 ffmpeg 有很多種不同版本,而且還附上不同的 resize 程式碼讓我好難選
:
: 因為我從 3840x2160 解析度降到 1920x1080 的之後還要再降到 1280x720 字體有點模糊
:
: 我可能還要再花點時間查詢一下是否有包含增強邊緣的 Edge Detection Resize Method!
:
: 總之這樣應該可以非常低流量又可以有很清晰的字體,變更解析度似乎是 ffmpeg 的責任
:
: 等我研究出來再跟大家分享,今天先分享到這了!感謝大家的支持!記得用 qp 調整畫質
:
: qp 數值越低越接近原始圖片,但我覺得如果原始圖片很糟糕就讓 qp 增加也沒甚麼感覺!
: ※ 編輯: a34021501 (1.164.252.34), 03/22/2017 03:18:24
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.32.195
※ 文章網址: https://www.ptt.cc/bbs/Live/M.1495942204.A.996.html
感謝來信詢問有關RTMP傳輸中斷的情況,目前我是用OBS Classic 0.659b
我最近也有遭遇的相同的情況,以下是我的實況主機詳細編譯參數及流程
~$ su
Password:
# cd /opt
# mkdir src
# cd /opt/src
/opt/src# wget
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20170320-2245.tar.bz2
/opt/src# tar -xvjf x264-snapshot-20170320-2245.tar.bz2
/opt/src# cd x264-snapshot-20170320-2245
/opt/src/x264-snapshot-20170320-2245# ./configure --enable-static --enable-shared --enable-lto --enable-strip --enable-pic
/opt/src/x264-snapshot-20170320-2245# make
/opt/src/x264-snapshot-20170320-2245# make install
/opt/src# wget https://ffmpeg.org/releases/ffmpeg-3.2.4.tar.gz
/opt/src# tar -xzf ffmpeg-3.2.4.tar.gz
/opt/src# cd ffmpeg-3.2.4
/opt/src/ffmpeg-3.2.4# ./configure --prefix=/opt/ffmpeg-3.2.4 --enable-gpl --enable-libx264 --enable-pic --enable-hardcoded-tables -enable-memalign-hack --enable-memory-poisoning
/opt/src/ffmpeg-3.2.4# make
/opt/src/ffmpeg-3.2.4# make install
/opt/src/ffmpeg-3.2.4# ln -s /opt/ffmpeg-3.2.4 /opt/ffmpeg
基本上這樣的參數在使用exec_push的時候應該就不會出現buf異常的情況
基本上這樣的設置在 debian 8.3.0 內建的 gcc4.9.2 還算穩定且效率高
※ 編輯: a34021501 (1.171.20.188), 05/30/2017 16:58:47
另外值得注意的是可用直播時所選用的參數名稱決定是否要推送影音串流至更多的伺服器~
如此一來這樣的設定還可分隔內部的 np_live 轉檔與儲存系統以及外部的 live_out 服務
遭受外部網路攻擊 live_out 時,內部的 np_live 不至於被立即癱瘓而失去影音串流存檔
※ 編輯: a34021501 (1.171.20.188), 05/31/2017 10:48:16
... <看更多>