1. 07 10鏈, 2019 1 娆℃彁浜
  2. 06 10鏈, 2019 2 娆℃彁浜
    • J
      obs-ffmpeg: Remove unbuffered mode from media source · 89586ef4
      jp9000 鎻愪氦浜
      Unbuffered mode is causing the frames of media sources to potentially
      have some slight jitter in playback, so instead of using unbuffered mode
      with media sources, just leave buffering on.  There may be a frame or so
      of latency, but it shouldn't be noticeable to most users.
      89586ef4
    • J
      obs-transitions: Fix stingers sometimes getting cut off · e023060a
      jp9000 鎻愪氦浜
      The file duration is a bit of an estimate.  This adds 500ms to the
      estimated stinger media file duration to help ensure stinger videos
      play back in full without getting cut off prematurely.
      e023060a
  3. 05 10鏈, 2019 1 娆℃彁浜
  4. 04 10鏈, 2019 1 娆℃彁浜
    • J
      obs-ffmpeg: Fix deadlock with nvenc lookahead · eabebd17
      jp9000 鎻愪氦浜
      Lookahead requires examining frame data over a large number of frames,
      so when pkv added the change to fully reset the encoder when the bitrate
      changes, nvenc will invalidate all buffers and basically starts over
      from a completely clean slate.
      
      It's possible to make lookahead work when changing the bitrate, but due
      to how lookahead seems to works internally in nvenc, it will cause
      continually increasing latency every time the bitrate is updated, which
      is unideal.
      
      Additionally, when lookahead is enabled, deadlocks can occur when
      changing the bitrate in a thread other than the graphics thread.
      Currently we allow it to be reset outside of the graphics thread.  From
      limited investigating, it would appear this deadlock occurs because
      nvenc is locking and releasing old textures.
      
      So instead of dealing with all these potential issues, disable the
      ability to adjust bitrate when the user has lookahead enabled on nvenc.
      It's not really worth implementing dynamic bitrate support when
      lookahead is enabled if the latency is just going to continually
      increase for every bitrate adjustment anyway.
      eabebd17
  5. 03 10鏈, 2019 3 娆℃彁浜
  6. 27 9鏈, 2019 1 娆℃彁浜
    • R
      UI: Fix path calculation for disk space check · 27b7f45f
      Richard Stanway 鎻愪氦浜
      When using custom FFmpeg output mode, the check would instead use the
      standard recording path which is no longer visible in the settings. This
      commit also simplifies the checks by moving the duplicated code to a new
      function.
      27b7f45f
  7. 24 9鏈, 2019 1 娆℃彁浜
    • J
      obs-ffmpeg: Do not enable hardware decoding by default · 66967b7a
      jp9000 鎻愪氦浜
      If a user has a tremendous amount of media files, this can cause
      instability.  Instead, make hardware decoding something the user has to
      explicitly enable.
      
      Although hardware decoding was technically enabled by default even
      before we fixed it, fixing it was essentially a change to defaults for
      users because it was just not even available before version 24.
      66967b7a
  8. 20 9鏈, 2019 7 娆℃彁浜
    • J
      obs-browser: Fix a deadlock · 94570478
      jp9000 鎻愪氦浜
      This fixes a freeze that can occur if you try to destroy browser while
      another browser is being created.  The CEF UI thread has to wait on a
      window message to the main application UI thread, meanwhile the destroy
      call in the main application UI thread is waiting on the CEF UI thread,
      thus causes a deadlock.
      
      Now that we have the SetParent(hwnd, nullptr) code that detaches the CEF
      window from the Qt window, we no longer have to worry about
      synchronously shutting down the browser, so instead of waiting for that
      operation to finish, just allow it to occur asynchronously.
      94570478
    • J
      libobs: Update version to 24.0.1 · 54f4b678
      jp9000 鎻愪氦浜
      54f4b678
    • J
      libobs: Add API to get last OBS version of a source · 65c7e2d1
      jp9000 鎻愪氦浜
      Allows the ability to change the behavior of a source depending on the
      previous OBS version.
      65c7e2d1
    • J
      obs-browser: Signal whether audio active/inactive · e200a8a8
      jp9000 鎻愪氦浜
      Uses the new obs_source_set_audio_active function to signal to the UI
      whether audio is active or inactive depending upon whether the user is
      currently allowing OBS to control the audio or whether the user is
      allowing CEF to control the audio.  Ensures that the browser does not
      show up in the mixer if CEF is playing back the audio itself.
      e200a8a8
    • J
      UI: Hide mixer sources if audio deactivated · 94cab1e5
      jp9000 鎻愪氦浜
      If audio is determined to be deactivated via the audio source (via the
      new "audio_activate" and "audio_deactivate" signals), hide the audio
      source in the mixer.
      94cab1e5
    • J
      libobs: Add funcs to determine whether audio active · 33c09d91
      jp9000 鎻愪氦浜
      Adds functions to allow sources to inform the UI whether the audio is
      currently active or not.  Allows the ability to turn on/off the items in
      the mixer.
      33c09d91
    • J
      obs-browser: Turn rerouting audio off by default · 3baa75c7
      jp9000 鎻愪氦浜
      It was determined that rerouting audio through OBS currently isn't the
      best idea even with monitoring enabled, primarily due to the fact that
      audio monitoring has never had this wide of testing before, and that
      many users complained that they were not getting audio for (as of yet)
      unknown reasons from audio monitoring.  It would appear that we need to
      address the issues with audio monitoring first before attempting to use
      audio monitoring with any sources by default.  For now, audio will
      reroute through CEF by default, and then the user must explicitly use
      the option "Control audio via OBS", (renamed from "reroute audio", and
      now disabled by default), to enable browser audio control through OBS.
      
      There are other issues that need to be resolved as well, and once all
      the various issues are addressed, the setting default can be allowed to
      change back.
      3baa75c7
  9. 19 9鏈, 2019 4 娆℃彁浜
    • J
      UI: Check for null pointer · 6464d5f8
      jp9000 鎻愪氦浜
      This was actually the line of code that the mixer dock widget crash was
      triggered by.  This technically shouldn't ever be null, but better to be
      safe than sorry.
      6464d5f8
    • J
      UI: Fix crash closing mixer dock panels · 97305782
      jp9000 鎻愪氦浜
      The function added to the BrowserDock class is SetWidget, not setWidget.
      
      I realize now that using the same exact function name but with an
      uppercase starting letter rather than a lowercase starting letter wasn't
      smart.
      97305782
    • J
      win-dshow: Do not allow H264 to have same priority as MJPEG · eee40ec6
      jp9000 鎻愪氦浜
      This prevents VideoFormat::Any from unintentionally selecting H264 when
      MJPEG is the only other format available.
      
      This fixes a bug where certain devices (Logitech C920 with latest
      drivers) will only have H264 and MJPEG available, and using
      VideoFormat::Any will then select H264 over MJPEG because it's the first
      format value and has the same priority as MJPEG.  So now, MJPEG will be
      prioritized over H264 instead.
      eee40ec6
    • J
      win-dshow: Disable HW decode in DirectShow for now · 6f1cb5a8
      jp9000 鎻愪氦浜
      This did not get enough testing, so disable it for now until more
      devices can be tested (especially the live gamer portable).
      6f1cb5a8
  10. 18 9鏈, 2019 5 娆℃彁浜
  11. 17 9鏈, 2019 1 娆℃彁浜
  12. 16 9鏈, 2019 3 娆℃彁浜
  13. 15 9鏈, 2019 2 娆℃彁浜
    • J
      UI: Fix browser docks being unchecked when created · 5d19786e
      jp9000 鎻愪氦浜
      In the view -> Docks menu, when a user first creates a custom browser
      dock, the menu item associated with them used to hide/show them will be
      unchecked in the menu by mistake.  This ensures they're checked when
      first created.
      5d19786e
    • J
      win-dshow: Fix color range when using FFmpeg decode · f60b820f
      jpark37 鎻愪氦浜
      Full color range seems to be active when decoding video with FFMmpeg
      even when partial is explicitly selected. This should keep the range
      synchronized.
      f60b820f
  14. 13 9鏈, 2019 2 娆℃彁浜
    • J
      Revert "UI: Various screen reader fixes" · 3064887a
      jp9000 鎻愪氦浜
      This reverts commit b5843caa.
      
      This breaks some hotkeys because the signals are tied to a signal which
      is now triggered because "toggled" is used instead of "clicked", so just
      revert it for now for the release and look at it later post-patch.
      3064887a
    • J
      UI: Fix pause hotkey not working properly · 52875180
      jp9000 鎻愪氦浜
      Setting the check state cause the toggle signal to trigger, so it would
      pause and immediately unpause.
      52875180
  15. 11 9鏈, 2019 3 娆℃彁浜
    • J
      obs-browser: Fix portable mode not saving cookies · 656873ab
      jp9000 鎻愪氦浜
      Request contexts don't appear to work with relative paths, only absolute
      paths.  This fixes the bug where when using portable mode,
      cookies/session wouldn't save because obs_module_config_path() was
      returning a relative path rather than an absolute path.
      656873ab
    • J
      obs-browser: Fix minor bug when using older CEF versions · 333fcb36
      jp9000 鎻愪氦浜
      Fixes duplicate visibility notifications when using 3440.
      333fcb36
    • J
      UI: Disable NVENC lookahead if dynamic bitrate on · b486cc6f
      jp9000 鎻愪氦浜
      Lookahead causes playback issues when bitrate changes mid-stream.
      Bitrate can suddenly drop to 0, and other issues such as audio
      stuttering on Twitch have been observed.  Turning off lookahead fixed
      the issue.  Lookahead is normally off by default anyway.
      b486cc6f
  16. 08 9鏈, 2019 3 娆℃彁浜