Giter VIP home page Giter VIP logo

decklink's People

Contributors

achimb avatar mczonk avatar benfed avatar istefo avatar mladenmikic avatar lov avatar leonardchrist avatar oliverbreidenbach avatar piets avatar

Stargazers

Grant J. Butler avatar  avatar Dan Murfin avatar Mark Heath avatar Todd Freese avatar PrePostAssistX avatar Patrick Kaim avatar Mark Godfrey avatar Ricardo Mello avatar  avatar  avatar Pavel Dyakov avatar  avatar Benoît LAHOZ avatar Greg Cotten avatar

Watchers

 avatar  avatar  avatar  avatar  avatar schlingel avatar  avatar  avatar  avatar James Cloos avatar  avatar Greg Cotten avatar Benoît LAHOZ avatar  avatar Sammy Smallman avatar  avatar  avatar  avatar Brad Brighton avatar  avatar Patrick Kaim avatar Anas mansuri avatar  avatar PrePostAssistX avatar Neil avatar

decklink's Issues

Are there any plans to update to SDK 12.2?

I am interested in using this framework for a project I'm working on, and would love to know whether you have any plans to update to a newer version of the SDK at some point?
Thanks!

Possible deadlock on playback

Hi guys,

in DeckLinkDevice+Playback.mm file there are 3 methods, that using the internal serial playbackQueue synchronously:

  • setPlaybackActiveVideoFormatDescription
  • setPlaybackActiveAudioFormatDescription
  • setPlaybackActiveKeyingMode

There is a possible problem of these calls: if you are calling any them on the main thread, and the execution is longer than a few milliseconds, this could deadlock the main thread. On the other hand, getting this calls async should not introduce any internal problems, since playbackQueue will maintain order anyway. However, this would need change of the methods, because they have a return value.

By the way, I see this issue in real life, although it is hardly reproducible - but could be happening when a device disconnects and reconnects during playback on my end.

Add option to use bmdFrameFlagFlipVertical

It would be nice to have an option to use the bmdFrameFlagFlipVertical with DeckLinkPixelBufferFrame, so we can let the hardware to do the flipping if required, which is pretty common when your buffer is coming from OpenGL rendering.

Code License?

Hi there! I'm interested in using this in a project, but I noticed that there's no license file in this repo. Is this code licensed under the MIT license, like most of the other things under this org are licensed, or is this project governed by a different license?

[DeckLinkDevice devices] crashes

Hi and thank you for your work!

I'm trying to get a list of connected devices with [DeckLinkDevice devices] but it crashes, due to a dispatch_once error. I get this crash log:

**2016-05-01 22:46:45.392 StreamKnot[2939:76500] An uncaught exception was raised
2016-05-01 22:46:45.393 StreamKnot[2939:76500] * -[__NSArrayM insertObject:atIndex:]: object cannot be nil
2016-05-01 22:46:45.393 StreamKnot[2939:76500] (
0 CoreFoundation 0x00007fff8c72f4f2 __exceptionPreprocess + 178
1 libobjc.A.dylib 0x00007fff8830973c objc_exception_throw + 48
2 CoreFoundation 0x00007fff8c645ae0 checkForCloseTag + 0
3 DeckLink 0x0000000100145daf +[DeckLinkDevice(Devices) devicesWithIODirection:] + 559
4 DeckLink 0x0000000100145b75 +[DeckLinkDevice(Devices) devices] + 37

and the error concerns the following lines in once.h (dispatch)

void
_dispatch_once(dispatch_once_t *predicate, dispatch_block_t block)
{
    if (DISPATCH_EXPECT(*predicate, ~0l) != ~0l) {
        dispatch_once(predicate, block);
    }
}

Do you have any clue on what's happening?
Thanks!

Ben

AVAssetReader playback

I am trying to use this framework for a simple player that will playback video files to a DeckLink device using scheduled playback. However, I am struggling to work out how to get the data from an AVAssetReader into a CVPixelBuffer. Do you have any pointers, or example code, that would get me going?

Or is this not the best approach? I don't want to do any manipulation to the images, just straight playback. Would I be better with a different set of wrappers around the SDK? I'm working in Swift, so do need an Obj-C layer.

TIA

bmdFormat8BitBGRA vs. bmdFormat8BitARGB

Hi,

for some reason playback prefers bmdFormat8BitARGB instead of bmdFormat8BitBGRA, but I'm not sure this is intentional. In case you are playback OpenGL rendering then bmdFormat8BitBGRA should be preferred since that is the native format of the GPU.

In case bmdFormat8BitARGB is intentional for whatever reason, are you open for receiving a pull request that make it possible to define ARGB or BGRA should be in use?

Thanks!

multiple devices

would this framework allow multiple devices to be used simultaneously?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.