0.60b test build 9 Notes
09 - Another fix to potential audio issues, that *should* be the last of it
08 - More adjustments to NVenc/quicksync
07 - Apparently some more NVEnc changes
09 - Another fix to potential audio issues, that *should* be the last of it
08 - More adjustments to NVenc/quicksync
07 - Apparently some more NVEnc changes
07 - Removed "Mic Sync Fix Hack" option because the problem should be fixed. I really need testers for the new audio code, I need to know if the audio is working correctly, especially people with live gamer portable devices and mics that were having issues with sync
06 - more NVEnc fixes/adjustments
06 - more tweaks/fixes to device burst compensation
05 - made some fixes to the burst sound.. fixes. fixes to fixes.
04 - testing some sound bursting sync fix issues
There is now a separate button for recording
You can now turn off/restart recording while still streaming, or vise versa
If you are disconnected, it will no longer cause recording to stop
Because of the above, we've removed the dashboard button because it was sort of useless and we needed an extra button, I hope no one hates me for this but it was honestly just a convenience tool and we needed to make space for more important buttons without creating a brand new button row
NOTE: If both recording and streaming, you must press stop both to fully turn off the stream
Text indicators for recording/streaming has been added to the status bar
Fixed a bug where microphones wouldn't reconnect if disconnected (dear god *finally*, I'm so sorry about that)
※ Наше сообщество в ВКонтакте. Вступай! Не пропустите свежие новости!
※ Наш канал в ВК. Вступай!
※ Наш Telegram-канал. Подписывайся!
※ Мой блог в Telegram, VK - велопокашутки, велоспорт, о фотографии.
※ Настройка стрима - гайды, статьи и руководства
※ Нужна помощь по настройке трансляции? Вам сюда!
ОБС молодцы что так быстро сделали поддержку NVENC. Сегодня сравнивал в режиме 1080p@30FPS 3,5Mbit :
-Quicksync на HD4600 (i7 4770K)
-NVENC на GTX 780
-Сжатие силами самого процессора (разогнан до 4.1) в пресетах veryfast/faster/fast (на fast процессора уже не хватает, идут пропуски кадров надо 6 ядер)
По качеству всех безбожно заруливает сам процессор, причем в любом из своих пресетов, если учесть что в конце года будет 8ядерный Haswell-E по цене 3930/4930K то выбор для того кто хочет стримить серьезно очевиден - сейчас это 3930/4930 а потом миграция на 8ядерный хасвелл. На втором месте по качеству Quicksync, весьма неплохое качество, плюс есть надежда что в новом поколении встроенных видях интела (GT3, GT3e) они еще раз бустанули свой энкодер т.к. заявили что он будет работать с 4к видео (т.е. если повезет производительность подняли как минимум в 4 раза) но это можно проверить или на камне i7 4770R с GT3e который днем c огнем не найти, т.к. его ставят только в ноуты или NUC'и или только в конце года, когда выйдет следующая линейка процессоров. NVENC - на данный момент хуже всех, самый качественный пресет из доступных в OBS как мне показалось "High Quality Low Latency"
Ссылки на запись стримов из поста выше у меня чето не открывается, добавил свои:
Все так как и пишут про OpenCL, на достаточно быстром CPU он позволяет выиграть что-то в пределах 5% и то под вопросом. Если учесть что дополнительно нагружается видяха, которой и так есть чем заняться + разработчики пишут что OpenCL не так стабилен, мое имхо оно того не стоит.
Как вывод:
1. На сегодня для стрима лучшее качество обеспечивается сжатием процессором.
2. При стриме и игре с 1го ПК, для ресурсоемких игр на движках последних поколений, при использовании пресетов по умолчанию и настроек 1080p@30FPS 3,5Mbit можно рассчитывать примерно на следующие результаты:
- i7 4ядра+HT серии 2xxx/3xxx/4xxx - пресет veryfast ;
- i7 6ядер+HT серии 3xxx/4xxx - пресет faster ;
- i7 8ядер+HT серии 4xxx (Haswell-E 4 поколение, ожидается 4Q2014) - пресет fast. *еще не доступен в продаже.
Я оставляю небольшой запас, т.к. когда процессор загружен на 95% это рано или поздно приведет или к просадкам в FPS или к потере кадров при сжатии видеопотока. В ряде более простых игр можно поставить пресет на 1 выше, но в целом для большинства случаев все будет именно так. Для процессоров i5 с небольшим разгоном и тем же кол-вом ядер все будет примерно также.
Last edited by escd_renamed_36515_09052020; 28.01.2014 at 03:16.
ОБС молодцы что так быстро сделали поддержку NVENC. Сегодня сравнивал в режиме 1080p@30FPS 3,5Mbit :
-Quicksync на HD4600 (i7 4770K)
-NVENC на GTX 780
-Сжатие силами самого процессора (разогнан до 4.1) в пресетах veryfast/faster/fast (на fast процессора уже не хватает, идут пропуски кадров надо 6 ядер)
странно что не попробовал Quicksync с GTX 780, на фасте должен был показать хорошие результаты...
странно что не попробовал Quicksync с GTX 780, на фасте должен был показать хорошие результаты...
Quicksync работает только на встроенных видеокартах Intel, на 780 оно не поедет :) Насколько я знаю, у Quicksync нет пресетов, то что сверху выбирается в меню применяется только в случае сжатия процессором, там так и написано "x264 CPU" У Quicksync eсть возможность поковырять только 4 параметра: 1 - буфер (на мой взгляд лучше ставить х2 или х3 от битрейта) 2 - фреймрейт, мне может кажется, но на 35-40 FPS Quicksync выглядит получше чем на 30, почти нет дерганья пикселей. 3- keyint режим, вся проблема Quicksync в том что он хуже жмет видеопоток, а ключевые кадры много "весят" в общем потоке, если интервал между ними увеличить, то картинка будет на крохи получше, по умолчанию, ключевые кадры идут каждые 2 сек, можно поставить каждые ~8 сек командой "keyint=infinite" ну и 4 - bframe режим, я скоко не крутил было токо хуже, имха лучше оставить по умолчанию. Суть в том что процессор i7 3-4го поколения легко переваривает "veryfast" режим, даже запас еще есть, а картинка намного лучше чем с Quicksync / NVENC.
Last edited by escd_renamed_36515_09052020; 27.01.2014 at 01:56.
Reason: Добавлено сообщение
пардон, вчера уж засыпал пока писал.
думал про одно писал другое.
тоже самое тока с GTX 780 https://forums.goha.ru/showpost.php?...&postcount=686
у меня железо физически больше не вытягивает amd 5750 + amd 7750
при этом записи по ссылке выше декодировал 5750, у которого отвалился кулер, и судя по другому софту, он понижает свою производительность в 3-5 раз из-за вечного перегрева)
на 780ом картина по идее должна существенно измениться.
Я думал о том что он не подключается, т.к. в логах тишина про OpenCL, но если указать явным образом, какую видеокарту использовать (на HD4600 OpenCL почемуто не подходит, и он матерится на него, а про второй все ок.
18:40:04: Open Broadcaster Software v0.592b - 32bit (´・ω・`)
18:40:04: -------------------------------
18:40:04: CPU Name: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz
18:40:04: CPU Speed: 3500MHz
18:40:04: Physical Memory: 4095MB Total, 4095MB Free
18:40:04: stepping id: 3, model 60, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 8, total cores 4
18:40:04: monitor 1: pos={0, 0}, size={1920, 1080}
18:40:04: Windows Version: 6.2 Build 9200
18:40:04: Aero is Enabled
18:40:04: -------------------------------
18:40:04: OBS Modules:
18:40:04: Base Address Module
18:40:04: 00330000 OBS.exe
18:40:04: 5F4A0000 OBSApi.dll
18:40:04: 61EE0000 DShowPlugin.dll
18:40:04: 61F80000 GraphicsCapture.dll
18:40:04: 61EC0000 NoiseGate.dll
18:40:04: 61EA0000 PSVPlugin.dll
18:40:04: ------------------------------------------
18:40:04: Adapter 1
18:40:04: Video Adapter: NVIDIA GeForce GTX 780
18:40:04: Video Adapter Dedicated Video Memory: 3124686848
18:40:04: Video Adapter Shared System Memory: 1170214912
18:40:04: Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
18:40:04: ------------------------------------------
18:40:04: Adapter 2
18:40:04: Video Adapter: Intel(R) HD Graphics 4600
18:40:04: Video Adapter Dedicated Video Memory: 33554432
18:40:04: Video Adapter Shared System Memory: 1845493760
18:40:04: Using fixed low latency mode, factor 20
18:40:04: =====Stream Start: 2014-01-28, 18:40:04========================================== =====
18:40:04: Multithreaded optimizations: On
18:40:04: Base resolution: 1920x1080
18:40:04: Output resolution: 1536x864
18:40:04: ------------------------------------------
18:40:04: Loading up D3D10 on NVIDIA GeForce GTX 780 (Adapter 1)...
18:40:04: ------------------------------------------
18:40:04: Audio Format: 48000hz
18:40:04: Playback device Default
18:40:04: ------------------------------------------
18:40:04: Using desktop audio input: Наушники (ASUS XONAR PHOEBUS Audio Device)
18:40:04: ------------------------------------------
18:40:04: Using auxilary audio input: Микрофон (HD Webcam C270)
18:40:04: ------------------------------------------
18:40:04: Audio Encoding: AAC
18:40:04: bitrate: 112
18:40:04: Using Monitor Capture
18:40:04: Scene buffering time set to 700
18:40:04: Using custom x264 settings: "opencl=true opencl_device=1"
18:40:04: x264: OpenCL: Unable to find a compatible device
18:40:04: ------------------------------------------
18:40:04: Video Encoding: x264
18:40:04: fps: 30
18:40:04: width: 1536, height: 864
18:40:04: preset: fast
18:40:04: profile: main
18:40:04: keyint: 60
18:40:04: CBR: yes
18:40:04: CFR: yes
18:40:04: max bitrate: 2500
18:40:04: buffer size: 7500
18:40:04: ------------------------------------------
18:40:04: MMDeviceAudioSource: Frequency for device 'Наушники (ASUS XONAR PHOEBUS Audio Device)' is 352800, samples per sec is 44100
18:40:04: MMDeviceAudioSource: Frequency for device 'Микрофон (HD Webcam C270)' is 192000, samples per sec is 48000
18:40:07: Using RTMP service: Twitch / Justin.tv
18:40:07: Server selection: rtmp://live-fra.justin.tv/app
18:40:07: Interface: Intel(R) Ethernet Connection I217-V (ethernet, 100 mbps)
18:40:08: Completed handshake with rtmp://live-fra.justin.tv/app in 434 ms.
18:40:09: SO_SNDBUF was at 65536
18:40:09: SO_SNDBUF is now 65536
18:40:22: Total frames encoded: 517, total frames duplicated: 0 (0.00%)
18:40:22: Total frames rendered: 521, number of late frames: 0 (0.00%) (it's okay for some frames to be late)
18:40:22: RTMPPublisher::SocketLoop: Socket error, send() returned -1, GetLastError() 10038
18:40:22: Average send payload: 16038 bytes, average send interval: 50 ms
18:40:22: Number of times waited to send: 0, Waited for a total of 0 bytes
18:40:22: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
18:40:22: Number of bytes sent: 4025733
18:40:23:
18:40:23: Profiler time results:
18:40:23:
18:40:23: ================================================== ============
18:40:23: video thread frame - [100%] [avg time: 0.467 ms] [children: 78.6%] [unaccounted: 21.4%]
18:40:23: | scene->Preprocess - [57.4%] [avg time: 0.268 ms]
18:40:23: | GPU download and conversion - [21.2%] [avg time: 0.099 ms] [children: 18.8%] [unaccounted: 2.36%]
18:40:23: | | flush - [14.6%] [avg time: 0.068 ms]
18:40:23: | | CopyResource - [3.43%] [avg time: 0.016 ms]
18:40:23: | | conversion to 4:2:0 - [0.857%] [avg time: 0.004 ms]
18:40:23: Convert444Threads - [100%] [avg time: 0.776 ms] [children: 99.2%] [unaccounted: 0.773%]
18:40:23: | Convert444toNV12 - [99.2%] [avg time: 0.77 ms]
18:40:23: encoder thread frame - [100%] [avg time: 1.672 ms]
18:40:23: ================================================== ============
18:40:23:
18:40:23:
18:40:23: Profiler CPU results:
18:40:23:
18:40:23: ================================================== ============
18:40:23: video thread frame - [cpu time: avg 0.029 ms, total 15.625 ms] [avg calls per frame: 1]
18:40:23: | scene->Preprocess - [cpu time: avg 0.029 ms, total 15.625 ms] [avg calls per frame: 1]
18:40:23: | GPU download and conversion - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:40:23: | | flush - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:40:23: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:40:23: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:40:23: Convert444Threads - [cpu time: avg 0.534 ms, total 531.25 ms] [avg calls per frame: 2]
18:40:23: | Convert444toNV12 - [cpu time: avg 0.534 ms, total 531.25 ms] [avg calls per frame: 2]
18:40:23: encoder thread frame - [cpu time: avg 1.165 ms, total 578.125 ms] [avg calls per frame: 1]
18:40:23: ================================================== ============
18:40:23:
18:40:23: =====Stream End: 2014-01-28, 18:40:23========================================== =======
а тут тоже самое с корректно выбранным устройством:
18:39:09: Open Broadcaster Software v0.592b - 32bit (´・ω・`)
18:39:09: -------------------------------
18:39:09: CPU Name: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz
18:39:09: CPU Speed: 3500MHz
18:39:09: Physical Memory: 4095MB Total, 4095MB Free
18:39:09: stepping id: 3, model 60, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 8, total cores 4
18:39:09: monitor 1: pos={0, 0}, size={1920, 1080}
18:39:09: Windows Version: 6.2 Build 9200
18:39:09: Aero is Enabled
18:39:09: -------------------------------
18:39:09: OBS Modules:
18:39:09: Base Address Module
18:39:09: 00330000 OBS.exe
18:39:09: 5F4A0000 OBSApi.dll
18:39:09: 61EE0000 DShowPlugin.dll
18:39:09: 61F80000 GraphicsCapture.dll
18:39:09: 61EC0000 NoiseGate.dll
18:39:09: 61EA0000 PSVPlugin.dll
18:39:09: ------------------------------------------
18:39:09: Adapter 1
18:39:09: Video Adapter: NVIDIA GeForce GTX 780
18:39:09: Video Adapter Dedicated Video Memory: 3124686848
18:39:09: Video Adapter Shared System Memory: 1170214912
18:39:09: Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
18:39:09: ------------------------------------------
18:39:09: Adapter 2
18:39:09: Video Adapter: Intel(R) HD Graphics 4600
18:39:09: Video Adapter Dedicated Video Memory: 33554432
18:39:09: Video Adapter Shared System Memory: 1845493760
18:39:09: Using fixed low latency mode, factor 20
18:39:09: =====Stream Start: 2014-01-28, 18:39:09========================================== =====
18:39:09: Multithreaded optimizations: On
18:39:09: Base resolution: 1920x1080
18:39:09: Output resolution: 1536x864
18:39:09: ------------------------------------------
18:39:09: Loading up D3D10 on NVIDIA GeForce GTX 780 (Adapter 1)...
18:39:09: ------------------------------------------
18:39:09: Audio Format: 48000hz
18:39:09: Playback device Default
18:39:09: ------------------------------------------
18:39:09: Using desktop audio input: Наушники (ASUS XONAR PHOEBUS Audio Device)
18:39:09: ------------------------------------------
18:39:09: Using auxilary audio input: Микрофон (HD Webcam C270)
18:39:09: ------------------------------------------
18:39:09: Audio Encoding: AAC
18:39:09: bitrate: 112
18:39:09: Using Monitor Capture
18:39:09: Scene buffering time set to 700
18:39:09: Using custom x264 settings: "opencl=true opencl_device=0"
18:39:10: ------------------------------------------
18:39:10: Video Encoding: x264
18:39:10: fps: 30
18:39:10: width: 1536, height: 864
18:39:10: preset: fast
18:39:10: profile: main
18:39:10: keyint: 60
18:39:10: CBR: yes
18:39:10: CFR: yes
18:39:10: max bitrate: 2500
18:39:10: buffer size: 7500
18:39:10: ------------------------------------------
18:39:10: MMDeviceAudioSource: Frequency for device 'Наушники (ASUS XONAR PHOEBUS Audio Device)' is 352800, samples per sec is 44100
18:39:10: MMDeviceAudioSource: Frequency for device 'Микрофон (HD Webcam C270)' is 192000, samples per sec is 48000
18:39:13: Using RTMP service: Twitch / Justin.tv
18:39:13: Server selection: rtmp://live-fra.justin.tv/app
18:39:13: Interface: Intel(R) Ethernet Connection I217-V (ethernet, 100 mbps)
18:39:13: Completed handshake with rtmp://live-fra.justin.tv/app in 588 ms.
18:39:14: SO_SNDBUF was at 65536
18:39:14: SO_SNDBUF is now 65536
18:39:32: Total frames encoded: 642, total frames duplicated: 0 (0.00%)
18:39:32: Total frames rendered: 646, number of late frames: 0 (0.00%) (it's okay for some frames to be late)
18:39:32: RTMPPublisher::SocketLoop: Aborting due to WSAEnumNetworkEvents failure, 10038
18:39:32: Average send payload: 16404 bytes, average send interval: 51 ms
18:39:32: Number of times waited to send: 7, Waited for a total of 28679 bytes
18:39:32: Number of b-frames dropped: 0 (0%), Number of p-frames dropped: 0 (0%), Total 0 (0%)
18:39:32: Number of bytes sent: 5397232
18:39:32:
18:39:32: Profiler time results:
18:39:32:
18:39:32: ================================================== ============
18:39:32: video thread frame - [100%] [avg time: 0.474 ms] [children: 79.5%] [unaccounted: 20.5%]
18:39:32: | scene->Preprocess - [56.3%] [avg time: 0.267 ms]
18:39:32: | GPU download and conversion - [23.2%] [avg time: 0.11 ms] [children: 20.7%] [unaccounted: 2.53%]
18:39:32: | | flush - [16.7%] [avg time: 0.079 ms]
18:39:32: | | CopyResource - [3.38%] [avg time: 0.016 ms]
18:39:32: | | conversion to 4:2:0 - [0.633%] [avg time: 0.003 ms]
18:39:32: Convert444Threads - [100%] [avg time: 0.782 ms] [children: 99.2%] [unaccounted: 0.767%]
18:39:32: | Convert444toNV12 - [99.2%] [avg time: 0.776 ms]
18:39:32: encoder thread frame - [100%] [avg time: 1.809 ms]
18:39:32: ================================================== ============
18:39:32:
18:39:32:
18:39:32: Profiler CPU results:
18:39:32:
18:39:32: ================================================== ============
18:39:32: video thread frame - [cpu time: avg 0.096 ms, total 62.5 ms] [avg calls per frame: 1]
18:39:32: | scene->Preprocess - [cpu time: avg 0.024 ms, total 15.625 ms] [avg calls per frame: 1]
18:39:32: | GPU download and conversion - [cpu time: avg 0.072 ms, total 46.875 ms] [avg calls per frame: 1]
18:39:32: | | flush - [cpu time: avg 0.072 ms, total 46.875 ms] [avg calls per frame: 1]
18:39:32: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:39:32: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
18:39:32: Convert444Threads - [cpu time: avg 0.514 ms, total 640.625 ms] [avg calls per frame: 2]
18:39:32: | Convert444toNV12 - [cpu time: avg 0.502 ms, total 625 ms] [avg calls per frame: 2]
18:39:32: encoder thread frame - [cpu time: avg 1.409 ms, total 875 ms] [avg calls per frame: 1]
18:39:32: ================================================== ============
18:39:32:
18:39:32: =====Stream End: 2014-01-28, 18:39:32========================================== =======
18:39:09: Using custom x264 settings: "opencl=true opencl_device=0"
это использование встроенной видеокарты для помощи в декодировании(насколько я понимаю выше 0 идут уже номера не встроенных устройств).
через диспетчер устройств можно посмотреть какой opencl_device указывать.
ну а по поводу качество хуже и толку мало, спецом кидал видос своих мало производительных графических адаптеров, без которых я думаю понятно что пресеты medium уж точно бы не пошли)
ибо amd fx-8350 максимум что вытягивает на себе это faster пресет.
Пытался сегодня посмотреть че да как... мле... качество такое редкостное говно -_-
Когда я вижу убегающего от моего хила союзника, я добиваю его, и получаю больше опыта благодаря ресу, ибон#х убегать от медика
/l、
゙(゚、 。 7
l、゙ ~ヽ
じしf_, )ノ
* Add separate Start/Stop Recording button to the main window, you can now stop/start recording without stopping the stream. On top of that, reconnecting will no longer stop everything, you will keep recording while reconnecting. Notification also added to the status bar when streaming and/or recording is on/off. (Thanks to the awesome Paibox/Palana duo)
* Because the above required more room, the "Dashboard Link" button has been removed.
* Add NVEnc encoder (Written by BtbN. NOTE: requires nvidia key on non-quadro nvidia video devices)
* More improvements to QSV (Palana)
* Fix mic/device gradual syncing issues, remove "Mic Sync Fix Hack" in advanced because it fixes that problem. This was an issue that mostly happened with mics, the Avermedia Live Gamer Portable, and next-gen consoles (Jim)
* Fix mic removal/disconnection flaw, if your mic gets disconnected it's no longer required to restart the stream, it will automatically reacquire when it's plugged in again. (Jim. FINALLY. Why, Jim, did you take so long with this? This was a serious issue. Why am I referring to myself in the third person? ..Why am I talking to myself?)
* Can now "reset" your mic if necessary in audio settings if for whatever reason the mic audio device needs to be reset, which will cause it to reacquire itself. (Jim)
* Fix a bug with using two push to talk hotkeys, make it so that if both buttons are down, only when the second button is released will it deactivate push to talk. (Jim)
* You no longer have to use the nvidia control panel to make nvidia laptops capture properly, you can now simply select the nvidia adapter in OBS and it will function properly (Jim)
* More error/bug checking/logging (R1CH)
* Fix an issue with network initialization (R1CH)
* Fix an issue where disconnections would report the wrong error code (R1CH)
* Fix an issue where hotkeys pressed while stream delay is finishing would cause a crash (R1CH)
※ Наше сообщество в ВКонтакте. Вступай! Не пропустите свежие новости!
※ Наш канал в ВК. Вступай!
※ Наш Telegram-канал. Подписывайся!
※ Мой блог в Telegram, VK - велопокашутки, велоспорт, о фотографии.
※ Настройка стрима - гайды, статьи и руководства
※ Нужна помощь по настройке трансляции? Вам сюда!
Выводы очевидны. Пока что фича сыровата и выгодней для качества кодировать процессором. Но очень хорошо что работа в этом направлении ведется. Глядишь и через пятОк билдов NVENC допилят до смотрибельного состояния.