iOS Dev | Watching the same demon in different ways

If you ever wonder what I fight about with demons the most these days, believe it or not, it's whether I can do and succeed at stuff like this...

Today, I wrote code that splits a single iPhone video camera feed among multiple displays, each of which can be processed separately and individually and simultaneously, in real-time, without affecting app performing or significant increases to memory and energy consumption using multicast delegation. It displays video as it is acquired by the camera in multiple windows, but with a filter applied at a different setting in each one.

The point of that is to be able to monitor the same scene for different types of demonic activity simultaneously; that would require separate windows, each displaying video processed to reveal and/or enhance visibility of the specific type.

In order to process or filter a video feed in your app, you need the image data. Although you can set up multiple preview layers to display the image feed, the video is going to look the same in each one. That's because the camera supplies the image data required for processing an image (e.g., apply filters, etc.) to one recipient. It doesn't make copies and reroute them to multiple objects in your app.

To do that, you'd have to copy the data, and then redistribute it yourself; but, that means consuming way too much memory and using lot of processing power (and energy) to redistribute (or forward) it. Add the two together, and you end up with performance bottlenecks. On top of that, you'd have to create and maintain separate, custom views. Even without piping video to them, multiple views always means more overhead.

Not just any iOS developer can split video from an iPhone camera into multiple windows, and then process the video in each individually and differently in real-time—and with de minimus impact to resources
With the solution I implemented today, you can create multiple recipients of the same set of image data without expressly copying it, and you can create multiple views of the single class type.

Four views, but of the same class; no references (outlets) to the views were created. As far as the app is concerned, there is only one view
In spite of quadrupling the video feed, and quadrupling image processing tasks, the energy impact was negligible:

Energy use and memory consumption were both low, in spite of four video feeds displaying in real-time, each processed separately, and independent of each other (the exposure was set to a different setting for each)
Performance from the user's perspective is flawless—even when eight windows are displayed—as shown by this video of the app running on my iPhone:


Even while processing eight videos feeds individually and in different ways (an exposure adjustment filter was applied separately to each using a different EV setting), the app displayed them at 120 frames per second.

Update on May 23rd, 2017
Even better than that was a Grand Central Dispatch (GCD) variation on the same theme I tried later:

The highlighted area of the source code editor pane (Xcode) is all the code required to do the same thing as the protocol checker/multicast delegation solution shown first in this post

'Finding demons in the stills' finds demons in the groups

Granted, I could have (and should have) picked a better still frame to use in my video demonstration, showing how to find demons in still frames of videos made during a period of high demonic activity; still, this is a bit much:

One of several, recent tirades on Facebook, all of which are characterized by a flood of criticism, accusation and a decrying my psychological health for having posted "fake" demon pics
The only reason why I didn't spend a lot of time searching for that "perfect" still frame is because I intended to demonstrate how quick and easy it is to find demons with a camera-enabled mobile device; if I spent a lot of time, that wouldn't be very quick, would it? I like to be authentic.

Unfortunately, as you can see from the above, not everyone is convinced of that; however, fortunately, that's not a problem for me when it comes to demons and what-not as it might be for any other thing. My constant connection to that whole business allows me to demonstrate nearly anything I've photographed or recorded to video, face-to-face, anytime, anywhere, regardless. Whenever I feel challenged by someone to prove myself, I offer to do so. So far, I've delivered every time.

I suspect, though, credibility is not the issue in most cases—certainly, not recently; rather, I think I simply stumbled upon a group of persons tasked with diverting people who aren't in-the-know from becoming otherwise. I'm not all that worried about it, or I'd point out other key things that suggest this, my decade-old experience with such persons notwithstanding. I will, though, define what I mean by in-the-know, in case you don't know, and explain what these groups do.

Disinform, dissuade, deter, discomfort...
It's not a new fact that demons divided the world whose population they intended to "reduce in numbers" into two categories of persons before they started culling it—those in-the-know, and those to-find-out—and, that those who know are placed at various points along the road to safety, recourse and recovery for their victims. Such persons do so as a means to an end—literally—in that, by precluding help, victims are ushered more quickly and efficiently the fate that awaits them—the fate that is called The Exclusion. In 2006, I documented some of my encounters with such groups on The Sunnyvale Knock.

Back then, I was routinely surprised to encounter the problems where they existed—police, courts, family, friends, mortgage companies, banks—you name it, the problem was there right when you didn't need a new one. Now, I've adjusted somewhat, and work around such problems as best I can (with varying degrees of success). Searching this blog for attorney (or lawyer), doctor, judge, landlord, or family using Google will bring up a plethora of posts in which I recount struggle after struggle to receive legal help, medical care, due process, etc., that should have gone smoothly in all cases.

The blog is just as much about the human contributions to the demon problem as it is about demons
So, those are examples that show what I mean by groups of people who disinform, dissuade, deter and discomfort those who need help, albeit help they would never have needed were it not for demons and people like those described in the posts.

I think the Facebook criticism campaign is the same thing, although I do not think it was intended for me, per se. I don't even think it was intended to serve the same ends as those served by demon person described in Demon-people drama: "I think I'm finally getting to him"]. As I said, I think the two groups who carried on as shown above, and also below are there to keep people in the dark about the true nature of some of the phenomena they witness, or even problems that arise from them.

A few of the comments on a recent post to Facebook Group, S.P.I.R.I.T (Do you believe?)
In Human technology is not always the demonic inferior, I posted a series of comments by Facebook users to a woman's post of a picture of her head, semi-transparent. The picture looks utterly ridiculous; everything said to me about my blog and the posts that took the beating could be said about it; nevertheless, everyone fawned over it. It garnered dozens upon dozens of comments and branched out into nearly as many conversations that are still ongoing over a week-and-a-half later.

She wanted to know what people thought, and they told her, en masse. What makes me suspect this as a group of disinformers at work is what they told her they thought. Their explanation includes involvement by a whole host of magical creatures, including fairies, ghosts, spirits, angels, the tooth fairy, Easter Bunny and nearly all else—except demons.

And, that's the thing: if her head was really see-through at one point, that would have been a sign of demonic activity. I said so, and nobody believed me. So, I took her pic and highlighted where the demons were in the pic. Still, that didn't explain the head, half-missing, for anyone; even the poster brushed it off, having responded to the effort with her slight intention to take a closer look at the problem someday in the future. So, I posted about a half dozen or more of the videos showing various limbs (including heads) disappearing and reappearing that I've been fortunate enough to acquire over the past five years to prove that this was a demon thing.

Now, with all the interest expressed in the head pic, you'd think that actual video of this happening (one of which showed my own decapitation, for goodness sakes) might have sparked even more conversation and interest. Instead, I was thanked by the poster, and people who couldn't deny the facts anymore simply stopped commenting.
NOTE | That's fine with me, by the way; I'm don't have a need to prove anything more than what I've proved so far, and I don't think I could prove things any better than I do with the blog, nor do I think the ability to bring the problem to your doorstep so you can eyeball it yourself to be less than adequate proof-ability on my part. I was just mentioning the disparity between the expected and the actual interest to point out the narrowing of efforts by the commenters to focus oh the poster.
Anyway, here's the video that did get interest, albeit the wrong kind:



As you can infer, my readers are the primary audience, and I posted the video to all the places I know them to be. They are past any proof or credibility issues, and are on to learning the means and methods for producing what they see on my blog. I also posted the video to some of the paranormal groups I joined recently, where members are relatively unfamiliar with me and my blog. Under normal circumstances, it might stand to reason that I assumed too much credibility in those groups, not having established myself first before putting things like the video out there; but, in this case, I think the members of these groups and I know each other all too well, so it must be something else.