Tuesday, December 25, 2018

Audio App Programing For Fun And Freedom

Once upon a time Apple made great products, tools on the cutting edge of creativity. Not so much anymore.  Today's iPhones are similar to those of yesterday, just faster with better cameras. The laptops are dummying down and the iPad is slow to catch up.  Since the death of Steve Jobs, Tim Cook's direction Apple has begun to focus primarily on content and short term economic returns.  In my opinion Apple's Content branch bullying users into using their streaming services while suppressing user content teeters on violations of antitrust law.  I don't expect that this will change anytime soon, people will simply have to stop buying Apple products.  The strong arm is exaggerated by iTunes and iCloud being the only authorized way to access and move the files on your phone.  The Music app and iBooks on the basis of copyright protections have progressively limited access to files by trapping them in a closed "SandBox" system.  It has always been difficult to migrate music off the remote device starting with the old iPods. Once the data was on the device it could not be removed with out a hack.  Now Apple is making it impossible to get files onto the music player presumably to force users into using their streaming service.  I don't want access to Apple radio or genius playlists curated from their monolithic Record label buddies.  I don't want to listen to their prescribed commercial swill.  If I wanted streaming, I would be paying Spotify to steal from musicians for me.  Personally I record my own music.  I want to take that music and listen to it in a playlist while out and about test my files on different sound systems. Yes I want an aux output (headphone jack).  Quit fixing things that were not broken.  It's not a difficult concept to grasp.

With the introduction of Files, Apple opened a door to a possible improvement by using iCloud made useful by purchasing a subscription for more space.  The file management system should work through USB, its faster more secure... not going to happen.  Apple's walled garden is becoming an amusement park.  Multitracking music in GarageBand is primarily an invitation to purchase sample packages.  Pay for your ticket, ride an ever more uniform and homogenized ride.  The proffessional path is buy ProTools and a massive Waves library.  Pay your slowly increasing subscription fee to Adobe Creative Cloud and get on with making high end studio quality productions with the prescribed tools, buy your ad space on Facebook so that your creation can be visible in the algorithm.  Surely the only conflict arises from trying to beat the system.  Individual success has no standing in the profits of the machine. You paid for admission to be creative.  By using the machine, the machine uses you.  Downloading a bunch of stuff not only will clutter things up but it increases the risk of viruses and and what not.  All paths open doors for malicious code.  Piracy isn’t what it used to be. Cracked software is becoming harder to find and so many apps are "free", but is anything really free? Is anything risk free? Free steals your privacy sold to your ads.  Using someone else's software means they own you.  Big Companies prey on this.  Monoliths of software steal and replicate lines of once open source code, compiling giant collections of tools the basic user may never get around to using.  The giant economic model of printing money, selling digital copies at top dollar or worse: Subscriptions.  How many minds contributed to the development of that technology built upon the creativity of the many who have come before?   Ethically shouldn't the creator be rewarded for making something useful rather than the assimilation snowball of marketing and gate keeping.

For this and many other reasons, we wish to know the back doors.  We do not wish to be used by the tools. We seek the SDK.  -   and its all here:

https://developer.apple.com/documentation

Knowledge can convert a future of app consumerism and generic AI rearrangement of cookie cut samples into your own profit and freedom.  The new craft advancing technology will be interfacing multiple systems, utilizing strings of code like brushes in an illustration app.  Knowing is a matter of immersion, and of having some one walk you through the process.  The Open source programming multimedia and arts community is a small cult around the world.  Hackers, musicians, animators, gamers, they are those on the other side of the veil.

There is a world of Java shells for hacking the unfamiliar into open connection.  Converting the hard storage 8 bit programming of a NES cartridge and Atari game controllers on a 64bit iPhone,  MacOS, Windows, Android to GNU/Linux, UNIX, Arduino, Raspberry Pi, Xbox,  IP addresses, SSL, New neural pathways for porting the information to and from different devices, comprehending components usage of libraries of code.  Single run functions, objects, arrays, storyboards, library locations, endless variations breaking all the way down to hexadecimal and binary machine code and eventually to electrons flowing through switches, potentiometers, microchips. The jargon itself is intimidating.  A quantum physicist might argue that technology eventually becomes spiritual...or not.   Soon we will need to interface with robots and automated cars. The future will become ever more modular for those in the know the rest will be consumers changing out devices every two years.  The only question is how deep do you want to go into what the foundation is built upon?

The open source environment can be daunting when considering what to download.  To click or not to click. Navigating GitHub, using Terminal, information overload. The Rabbit hole is endless.  countless programming languages, a million flavors of ice cream.  I don’t for see myself building PC chips,  but how deep into the controls do you want to go.  Is this a means or an end?  Time and daily effort is required, so much information to acquire, watching online tutorials, reading documents as the technology keeps moving knowledge from under your feet.  I started out wanting a simple looping delay on my phone and end up doing research on how to install a VirtualBox on my laptop to investigate Linux Kernel hacking...WTF.   Keep asking: "If only I had this thing I would be able to create properly" if someone makes a reliable instance of that specific tool.  What is it worth?  How do I acquire that one single simple tool. A string of code like a hammer. Besides getting around Apple's ridiculous controls,  I wanted to make programs from laptop portable through the phone.   I want to be able to build them for myself.

My initiation to multimedia programming was MAX/MSP/Jitter heavy.  Max allows a certain level of autonomy and a baseline for coding knowledge. It acts similar to Reactor or modular synths with a visual signal flow.  Seeking ways to port Max projects into IOS  I found the MobMuPlatform and PDParty which both run PD music files.  PD is by Miller Puckett’s simplified and free version of MaxMSP.  PD Vanilla is the most basic architecture. 
http://puredata.info/
http://www.pd-tutorial.com/english/

Pdparty vs mobmuplat

MobMu by Daniel Iglesia requires you to build your user GUI interface with in the MobMu Editor.
It also appears that MobMu will actually let you you access a folder "On My iPhone"
http://danieliglesia.com/mobmuplat/doc/index.htm

PDParty
http://danomatika.com/code/pdparty/guide
PDParty seems ports the user interface directly from your PD Project.

Both methods utilize Libpd  http://libpd.cc/ which allows porting of PD into mobile devices.  This is a library you would want to put into your own swift projects if you were to get serious about making your own app. Rather than running your PD projects though a 3rd party app.

https://github.com/libpd/libpd/wiki/Working-with-libpd-in-Xcode

I had some familiarity with Xcode,  but knew nothing of the Swift IOS programming language. I had minimally experimented with object oriented code with Supercolider, Javascript, C in Cocoa.  HTML and CSS gave some advantage but not much. So practically starting form scratch, I started going through tutorials like Coding with Chris and The Swift Guy.

TO BE CONTINUED...

in the meantime

https://thehelloworldprogram.com/

No comments:

Post a Comment