1. 09 6月, 2014 1 次提交
  2. 07 6月, 2014 3 次提交
    • J
      CoreAudio: Enumerate AudioDeviceID manually · 5cd8304d
      jp9000 提交于
      Apparently, despite the fact that Apple added
      kAudioHardwarePropertyTranslateUIDToDevice in 10.8, it's not actually
      usable in 10.8, only 10.9.  So, instead of being able to use it like a
      normal, sane person, we have to enumerate all devices manually and find
      the AudioDeviceID ourselves.  A slight annoyance and a mark against
      apple's competence, but audio devices should now be working again on
      10.8 at least, so whatever.
      5cd8304d
    • J
      UI: Remove unused variable · 3fd6d83d
      jp9000 提交于
      3fd6d83d
    • J
      libobs: Fix switch warning · 42a0411f
      jp9000 提交于
      42a0411f
  3. 06 6月, 2014 1 次提交
  4. 05 6月, 2014 7 次提交
  5. 03 6月, 2014 6 次提交
    • J
      Merge pull request #108 from andy-kliman/feature · e978308a
      Jim 提交于
      Added Russian translation
      e978308a
    • J
      Merge pull request #90 from antihax/master · 4eb62673
      Jim 提交于
      Added simple volume meter for reference of input levels.
      4eb62673
    • J
      UI: Add new volume meter handling · ab154397
      jp9000 提交于
      This adds support for the more smooth volume levels that accounts for
      both level and magnitude.  Currently, it just averages level and
      magnitude, later on a full audio meter control can be made that would
      properly utilize level, magnitude, and peak.
      
      Also cleaned up the code a bit and removed some trailing whitespace.
      ab154397
    • J
      libobs/media-io: Remove obsolete mixing functions · 4ccf928e
      jp9000 提交于
      Also, Remove the volume level processing from audio-io.c, it was moved
      to obs_source instead.
      4ccf928e
    • J
      libobs: Add level/magnitude/peak volume levels · 5cd64ce7
      jp9000 提交于
      This replaces the older code which simply queried the max volume level
      value for any given audio.
      
      I'm still not 100% sure on if this is how I want to approach the
      problem, particularly, whether this should be done in obs_source or in
      audio_line, but it can always be moved later if needed.
      
      This uses the calculations by the awesome Bill Hamilton that OBS1 used
      for its volume levels.  It calculates the current max (level),
      magnitude, and current peak.  This data then can be used to create
      awesome volume meter controls later on.
      
      NOTE: Will probably need optimization, does one float at a time right
      now.
      
      Also, change some of the naming conventions.  I actually need to change
      a lot of the naming conventions in general so that all words are
      separated by underscores.  Kind of a bad practice there on my part.
      5cd64ce7
    • J
      libobs: Fix signal handler lock bug · d891e977
      jp9000 提交于
      There was a return statement within a section of code that had a locked
      mutex.
      d891e977
  6. 02 6月, 2014 3 次提交
  7. 31 5月, 2014 1 次提交
    • J
      win-dshow module: Fix configuration issues · e72c0925
      jp9000 提交于
      The biggest problem with DirectShow is that available configuration
      capabilities can change if you so much as look at it the wrong way.
      
      Previously, configuring devices often didn't configure the device
      settings correctly, you would choose one setting and then another
      setting wouldn't be compatible with that settings.
      
      Let's take the terrible microsoft lifecam series for example.  First,
      you'd be at 640x480 happily webcam'ing away, which is using the YUY2
      format.  Then you decide "hey, this webcam resolution is a bit low.  I
      would love to have it a bit high resolution so it's a bit more crisp and
      clear."  You'd select 1280x720, and then suddenly the only format
      supported is MJPEG output.  However, the interface has to update that
      fact, it can't list YUY2 if MJPEG is the only one available for this
      resolution.  This doesn't just apply to formats either, this applies to
      framerates and such as well.  Some framerates will only be supported by
      certain resolutions which can in turn only be supported by certain
      formats.
      
      This causes user interface for configuration to be really be a nightmare
      to manage if you want these features to be available to the user.  It's
      extremely annoying because you have to update all the configuration UI
      after something has changed, double check the configuration values, and
      if the values aren't supported, update those configuration values.
      e72c0925
  8. 30 5月, 2014 17 次提交
    • J
      Fix CMakeLists.txt yet again · 040615c6
      jp9000 提交于
      040615c6
    • J
      Fix win-dshow module CMakeLists.txt · 40f9448a
      jp9000 提交于
      Didn't include the DirectShow library, and forgot to add one source file
      40f9448a
    • J
      UI: Add 'win-dshow' plugin initialization · d2ff9d5b
      jp9000 提交于
      I really need to make this thing automatically search for plugins some
      time.  I've got to admit it's kind of annoying.
      d2ff9d5b
    • J
      Add preliminary DirectShow capture plugin · c55b1771
      jp9000 提交于
      This covers the basics of devices.  Mostly functional but not at 100%
      yet.  Uses 'libdshowcapture' library to capture directshow video/audio.
      Both libdshowcapture and the plugin still need some work.  Should at
      least capture basic webcams and capture cards for the time being.
      c55b1771
    • J
      libobs: Allow deferred source udpate on create · 1343d6bd
      jp9000 提交于
      This allows sources to optionally defer update on creation in order to
      prevent updates from being called from threads other than the video
      thread.
      1343d6bd
    • J
      win-dshow: Add submodule 'libdshowcapture' · 1c8e27f2
      jp9000 提交于
      1c8e27f2
    • J
      WASAPI plugin: Mark parameter macro · 924f780f
      jp9000 提交于
      924f780f
    • J
      Plugins: Remove old dshow plugin · 796ad993
      jp9000 提交于
      796ad993
    • J
      libobs/util: Add DStr RAII helper class · 92470973
      jp9000 提交于
      ..Could also add some super nifty stuff later on too.  However, I think
      using std::string whenever possible is probably for the best.
      92470973
    • J
      UI: Add support for buttons in properties view. · 90f0bd68
      jp9000 提交于
      90f0bd68
    • J
      libobs/util: Fix string conversion functions · dfdba663
      jp9000 提交于
      There was a fundamental flaw with the string type conversion functions
      where the sizes were not being properly accounted for.  They were using
      the 'len' value as a value for the output rather than only for the
      input, which was bad because the output could have more or less
      characters than the input.
      dfdba663
    • J
      libobs/util/dstr.c: Add missing dstr_from_wcs · e18795a1
      jp9000 提交于
      e18795a1
    • J
      libobs/util/dstr.c: Don't find/replace if empty · 38b610ef
      jp9000 提交于
      38b610ef
    • J
      libobs: Init source info before calling 'create' · 75d25b4e
      jp9000 提交于
      When a source's private data is being created by a module, it wasn't
      able to call most source functions because most functions rely on the
      obs_source_info part of the context to be set.  This fixes that issue.
      
      It was strange that this wasn't already the case because the other
      context types already did the same thing.
      75d25b4e
    • J
      libobs: Add planar 4:2:0 async texture support · 9595a78e
      jp9000 提交于
      This uses the reverse planar YUV 4:2:0 conversion shader to output a YUV
      texture without having to convert it via CPU.  Again, this will reduce
      video upload bandwidth usage to 37.5% of the original rate.  I suspect
      this will be particularly useful for when an FFmpeg or libav input
      plugin for playing videos is made.
      
      NOTE: There's an issue with certain texture sizes right now I haven't
      been able to identify, if the full size of texture data divided by the
      base texture width is an uneven number, the V chroma plane seems like it
      can potentially shift, though I only had this happen with 160x90
      resolution C920.  Almost all resolutions tend to be even.  Needs further
      testing with more devices that support planar YUV 4:2:0 output.
      9595a78e
    • J
      libobs: Add button support to properties · 85dcfcaa
      jp9000 提交于
      This adds button support to properties, which will allow a properties
      pane to let the user click a button to activate something with a
      particular obs context.  When pressed, the button will execute the
      callback given, with the context's private data as a parameter.
      85dcfcaa
    • J
      libobs: Add planar YUV 4:2:0 reverse shader · 5be241b1
      jp9000 提交于
      This allows uploading of I420 textures and directly converting on the
      GPU.  Cuts down upload bandwidth to 37.5% of original rate.
      5be241b1
  9. 28 5月, 2014 1 次提交