BradLarson / GPUImage

An open source iOS framework for GPU-based image and video processing
http://www.sunsetlakesoftware.com/2012/02/12/introducing-gpuimage-framework
BSD 3-Clause "New" or "Revised" License
20.25k stars 4.61k forks source link

subclassing histogram filter crash #2304

Open kallipigous opened 8 years ago

kallipigous commented 8 years ago

If I subclass the histogram filter it works fine until I overwrite

even if I duplicate the original it crashes in

is there anything I can do to prevent that?

BradLarson commented 8 years ago

When you say it crashes, where does it crash and what do you see on the console? I'm betting you're trying to create a framebuffer at an illegal size (height lower than 3 pixels, for example).

kallipigous commented 8 years ago

Oh Hello Brad

No I’m creating something at 256x256, This is a vectorscope incidentally.

it looks to me that as soon as I overwrite renderToTerxture it doesn’t know what self.outpyuttextureoptions is.

I’m just trying to remove the GL_FUNC_ADD

remove renderToTexture and it works fine

Add it back and it crashes

On Jun 8, 2016, at 1:52 PM, Brad Larson notifications@github.com wrote:

When you say it crashes, where does it crash and what do you see on the console? I'm betting you're trying to create a framebuffer at an illegal size (height lower than 3 pixels, for example).

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BradLarson/GPUImage/issues/2304#issuecomment-224723462, or mute the thread https://github.com/notifications/unsubscribe/AAlNgYGwJjxnfinX9Zxy76Ex-Dfy6V_Uks5qJytwgaJpZM4IxXjt.

kallipigous commented 8 years ago

If I subclass GPUImageFilter and cut and paste all the methods from the histogram (avoiding the duplicate Shader Strings) it crashes in a slightly different place.

[framebufferFromCache lock];

[__NSCFData lock]: unrecognized selector sent to instance 0x15f824ef0

On Jun 8, 2016, at 1:52 PM, Brad Larson notifications@github.com wrote:

When you say it crashes, where does it crash and what do you see on the console? I'm betting you're trying to create a framebuffer at an illegal size (height lower than 3 pixels, for example).

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BradLarson/GPUImage/issues/2304#issuecomment-224723462, or mute the thread https://github.com/notifications/unsubscribe/AAlNgYGwJjxnfinX9Zxy76Ex-Dfy6V_Uks5qJytwgaJpZM4IxXjt.

kallipigous commented 8 years ago

I have found a work around by editing the original histogramFilter and moving the drawing elements to a new method and overwriting that. It’s just the framebuffer part that seems to cause issues. Is it a thread issue?

Every time I update cocopods it’s going to break again but this is great for the time being and gives me full control of the blending.

On Jun 10, 2016, at 7:20 AM, Mr. Toby Evetts naughtylizard@gmail.com wrote:

If I subclass GPUImageFilter and cut and paste all the methods from the histogram (avoiding the duplicate Shader Strings) it crashes in a slightly different place.

[framebufferFromCache lock];

[__NSCFData lock]: unrecognized selector sent to instance 0x15f824ef0

On Jun 8, 2016, at 1:52 PM, Brad Larson <notifications@github.com mailto:notifications@github.com> wrote:

When you say it crashes, where does it crash and what do you see on the console? I'm betting you're trying to create a framebuffer at an illegal size (height lower than 3 pixels, for example).

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/BradLarson/GPUImage/issues/2304#issuecomment-224723462, or mute the thread https://github.com/notifications/unsubscribe/AAlNgYGwJjxnfinX9Zxy76Ex-Dfy6V_Uks5qJytwgaJpZM4IxXjt.

ryanstout commented 8 years ago

@kallipigous did you ever manage to get your vectorscope working? I'm seeing crashes with the histogram also.

kallipigous commented 8 years ago

I did when I edited the histogram and moved the drawing parts into a separate function.

I never figured out why but editing it worked.

ryanstout commented 8 years ago

@kallipigous thanks for getting back to me. So you actually changed the class in the library?

ryanstout commented 8 years ago

@kallipigous what did you use the vectorscope for? (Just curious)

kallipigous commented 8 years ago

Exactly. Then I found I could subclass it fine. The histogram worked off the bat but not subclasses.

Sent from my iPhone

On Oct 20, 2016, at 2:57 PM, Ryan Stout notifications@github.com wrote:

@kallipigous thanks for getting back to me. So you actually changed the class in the library?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

kallipigous commented 8 years ago

An app for cinematographers called Artemis

Sent from my iPhone

On Oct 20, 2016, at 3:27 PM, Ryan Stout notifications@github.com wrote:

@kallipigous what did you use the vectorscope for? (Just curious)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

omxcodec commented 7 years ago

@kallipigous have you turned off the ARC?NO ARC will cause crash.

((void)renderToTextureWithVertices:(const GLfloat *)vertices textureCoordinates) my git version: 167b0389bc6e9dc4bb0121550f91d8d5d6412c53

maybe you should add "-fobjc-arc" flags for you filter souce file.