1. 01 2月, 2016 1 次提交
  2. 31 1月, 2016 4 次提交
  3. 30 1月, 2016 1 次提交
    • B
      UI: Fix GCC 4.8 compilation issue · 8593c4ba
      boombatower 提交于
      Apparently using QPointer container for the QObject being given to the
      connect function makes it so it can't find the actual function to use.
      I'm guessing this is incomplete functionality or a bug that existed in
      GCC 4.8.  Doesn't happen in 4.9+.
      8593c4ba
  4. 27 1月, 2016 6 次提交
    • J
      UI: Implement transitions and preview/program mode · 544953c8
      jp9000 提交于
      Implements transitions, and introduces "Studio Mode" which allows live
      editing of the same or different scenes while preserving what's
      currently being displayed.
      
      Studio Mode offers a number of new features:
        - The ability to edit different scenes or the same scene without
          modifying what's currently being displayed (of course)
      
        - The ability to set up "quick transitions" with a desired transition
          and duration that can be assigned hotkeys
      
        - The option to create full copies of all sources in the program scene
          to allow editing of source properties of the same scene live without
          modifying the output, or (by default) just use references.  (Note
          however that certain sources cannot be duplicated, such as capture
          sources, media sources, and device sources)
      
        - Swap Mode (enabled by default) which swaps the program scene with
          the preview scene when a transition completes
      
      Currently, only non-configurable transitions (transitions without
      properties) are listed, and the only transitions available as of this
      writing are fade and cut.  In future versions more transitions will be
      added, such as swipe, stingers, and many other various sort of
      transitions, and the UI will support being able to add/configure/remove
      those sort of configurable transitions.
      544953c8
    • J
      (API Change) libobs: Add 'type' to obs_scene_duplicate · a61933dd
      jp9000 提交于
      (Note: This commit also modifies the UI)
      
      Allows the ability to duplicate sources fully copied, and/or have the
      scene and its duplicates be private sources
      a61933dd
    • J
      libobs: Do not use signals with audio capture/controls · 669da7ba
      jp9000 提交于
      (Note: This commit also modifies UI)
      
      Instead of using signals, use designated callback lists for audio
      capture and audio control helpers.  Signals aren't suitable here due to
      the fact that signals aren't meant for things that happen every frame or
      things that happen every time audio/video is received.  Also prevents
      audio from being allocated every time these functions are called due to
      the calldata structure.
      669da7ba
    • J
      (API Change) libobs: Remove source_type param from functions · b0104fce
      jp9000 提交于
      (Note: test and UI are also modified by this commit)
      
      API Changed (removed "enum obs_source_type type" parameter):
      -------------------------
      obs_source_get_display_name
      obs_source_create
      obs_get_source_output_flags
      obs_get_source_defaults
      obs_get_source_properties
      
      Removes the "type" parameter from these functions.  The "type" parameter
      really doesn't serve much of a purpose being a parameter in any of these
      cases, the type is just to indicate what it's used for.
      b0104fce
    • J
      UI: Remove "audio buffering time" (skip) · adcbf931
      jp9000 提交于
      (Note: This commit breaks libobs compilation.  Skip if bisecting)
      adcbf931
    • B
      UI: Don't create sources popup menu if no scenes · f32f65bb
      bla 提交于
      Closes jp9000/obs-studio#499
      f32f65bb
  5. 26 1月, 2016 16 次提交
    • J
      UI: Disable OSX V-Sync when program is open · 832043fc
      jp9000 提交于
      OSX has an annoying feature called "BeamSync", which on later versions
      of OSX is always on.  For whatever reason, Apple devs decided to force
      this feature to always be on, so applications must always render with
      v-sync regardless of what they set their swap interval to.
      
      This issue would cause syncing to the vertical refresh for each
      additional active display, and wouldn't allow rendering above the
      current refresh rate.  This caused major rendering stalls and prevented
      video frame timing from being accurate.
      
      This fixes the issue by using an undocumented set of functions to
      disable BeamSync.  Note that because this is an undocumented method of
      working around the issue, its existence cannot be guaranteed.  If the
      functions no longer exist for whatever reason, it will safely do
      nothing.
      832043fc
    • J
      UI: Hide renderer/adapter when not on windows · c072ba55
      jp9000 提交于
      Also hide adapter list if not using Direct3D.
      c072ba55
    • J
      UI: Move Renderer/Adapter to advanced · 22f7e6a8
      jp9000 提交于
      These really are advanced options that users shouldn't need to change
      normally, so moving them to advanced makes sense, and keeps them away
      from users who don't know what they're doing.
      22f7e6a8
    • J
      UI: Fix a case where output res. stays invalid · 9e476134
      jp9000 提交于
      If the base resolution is set to an invalid resolution, it would cause
      the output resolution to automatically change to an invalid resolution.
      After the invalid resolution was set for the output resolution, it would
      stay at that invalid resolution.
      
      This fixes it so it always tries to find the output resolution closest
      to what was last actually set or actually edited.
      9e476134
    • J
      UI: Fix preview right-click menu getting wrong source · 9b5ac1fb
      jp9000 提交于
      When right-clicking items in the preview window and getting context
      menus for them, it would often make the wrong scene item be associated
      with the context menu because of the fact that it was using
      QListWidget::currentItem instead of querying the actual selected list.
      
      You must query the actual selection list via QListWidget::selectedItems
      because QListWidget::currentItem does not work properly for
      multi-selection list widgets.
      9b5ac1fb
    • J
      UI: Warn if high resource usage when encoding · e5fc4dbb
      jp9000 提交于
      Shows a warning stating that encoding is stalling, and shows the number
      and percentage of frames that were skipped due to encoding.
      e5fc4dbb
    • J
      UI: Fix "invalid" audio devices in audio settings · 3749436c
      jp9000 提交于
      If a global audio device is disconnected or for whatever reason is no
      longer available when audio settings is opened, it will erroneously
      select index 0 of the combo box ("Disabled") by default because it can't
      find it in the combo box.  This fixes that issue by making it insert an
      item in to the combo box specifying that the previously available audio
      device is no longer available, and properly preserving the user's
      settings.
      3749436c
    • J
      UI: Add options to enable/disable stream confirm dialogs · bbbdd444
      jp9000 提交于
      Some streamers would accidentally hit start/stop streaming, which on
      certain services would send out mass emails to all their followers.
      This just adds options to general settings to optionally enable dialogs
      that confirm whether to actually start/stop streaming when the button is
      clicked.
      bbbdd444
    • J
      UI: Add "Always On Top" option to file menu · 213d8ce1
      jp9000 提交于
      213d8ce1
    • J
      UI: Fix advanced audio properties duplication bug · 9991f6a7
      jp9000 提交于
      Because of the patch that removed the "user sources list" in libobs
      (70fec7ae), obs_enum_sources will now enumerate the global audio
      sources, where it didn't before.  In the advanced audio properties
      dialog, before the patch I had to use code to manually include them, but
      I neglected to remove that code when I made that patch, so it would
      cause them to be added more than once.  This just removes that code.
      9991f6a7
    • J
      UI: Fix bug where default scene would not be added to list · 6da742ba
      jp9000 提交于
      6da742ba
    • J
      UI: Add GetCurrentSceneSource inline function · db48e347
      jp9000 提交于
      db48e347
    • J
      UI: Add menu button (split button) class · b8547aa8
      jp9000 提交于
      When you assign a menu to a normal QPushButton, it becomes a button that
      only allows you to have a menu.  This class lets you click the button
      and have a menu at the same time.
      b8547aa8
    • J
      UI: Add helper to delete layout and layout contents · 370761ba
      jp9000 提交于
      370761ba
    • J
      UI: Resize main preview on the widget's resize signal · 6262abc2
      jp9000 提交于
      Fixes a bug where the preview's size calculations wouldn't update if the
      widget itself was resizes but the window wasn't resized.
      6262abc2
    • J
      UI: Add splitter to main window · d7d5e55d
      jp9000 提交于
      Allows adjusting the size of the bottom section of the main window
      d7d5e55d
  6. 22 12月, 2015 2 次提交
    • J
      UI: Remove obs_source_add and sourceSceneRefs variable · 3c83be37
      jp9000 提交于
      Prunes code used to workaround libobs "user sources" (such as
      sourceSceneRefs) and instead simply holds its own references and saves
      sources it chooses with obs_save_sources_filtered.
      3c83be37
    • J
      UI: Hold ref when storing signals (skip) · e3795a21
      jp9000 提交于
      (Note: This commit breaks UI compilation.  Skip if bisecting)
      
      Ensures that a reference is kept until the signals associated with that
      reference are disconnected.
      e3795a21
  7. 27 11月, 2015 3 次提交
  8. 17 11月, 2015 2 次提交
  9. 16 11月, 2015 3 次提交
    • J
      UI: Fix "unreferenced local function" warning · 24d217f7
      jp9000 提交于
      Fixes the following warning:
      
      warning C4505: 'operator ==' : unreferenced local function has been
      removed
      
      This function actually is used despite this warning, so the only way to
      get rid of the warning is to disable the warning itself in this
      particular case.
      24d217f7
    • J
      UI: Fix multi-item selection · 6ba723a9
      jp9000 提交于
      Allows changing item selection via list box or via preview window, and
      keeps their selection status in sync with each other.
      6ba723a9
    • J
      UI: Add signal blocker helper class · c1b9901b
      jp9000 提交于
      c1b9901b
  10. 14 11月, 2015 2 次提交