Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Enhance] Update fluid.waveform~ #116

Merged
merged 9 commits into from
Jan 25, 2022

Conversation

jamesb93
Copy link
Member

Updates fluid.waveform~ to have parity with the SuperCollider waveform.

addlayer line is now addlayer featurebuf.

addlayer image is now addlayer imagebuf

addlayer wave is now addlayer audiobuf

All calls are backwards compatible too.

Copy link
Member

@tremblap tremblap left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great, thanks. A few things to fix:

the interface we spoke of was:
audioBuffer
imageBuffer
featureBuffer
indicesBuffer

so for now I think we should

  • change *buf to *buffer
  • change markers to indiceBuffer (no camel for max I know)
  • remove the generic 'buffer' message

I'm not sure I'd leave the backward compatibility although I understand we are exploring interface here. We'll need to break something at some point but I'm happy to wait for this last point of breaking backward compatibility.

@jamesb93
Copy link
Member Author

great, thanks. A few things to fix:

the interface we spoke of was: audioBuffer imageBuffer featureBuffer indicesBuffer

so for now I think we should

  • change *buf to *buffer
  • change markers to indiceBuffer (no camel for max I know)
  • remove the generic 'buffer' message

I'm not sure I'd leave the backward compatibility although I understand we are exploring interface here. We'll need to break something at some point but I'm happy to wait for this last point of breaking backward compatibility.

Okay, I'll need to change these names as well as dig around the markers API too 😱

@jamesb93
Copy link
Member Author

Paging @tremblap. Those changes are now in place.

@tremblap
Copy link
Member

Can I push on this branch to change typos, or, more streetbandit like me, I'd just merge now and I'll correct the typos right on dev once merged?

@tremblap
Copy link
Member

tremblap commented Jan 25, 2022

oh and now the pedantic english language dude in me says: we have indicesbuffer (plural) and featurebuffer (singular)

I presume at this point it is relatively easy to change but my anxiety level is high: which should it be

audioBuffer
imageBuffer
(so far so good)
featuresbuffer vs featurebuffer
indicesbuffer vs indicebuffer

sorry for finding that out now. interface consistency, your worse nightmare. btw @tedmoore that implies a SC change either way we go! I won't vote though apart from having one of each :)

@jamesb93
Copy link
Member Author

It should be singular! Good catch. I'll make this so.

@jamesb93
Copy link
Member Author

I've also fixed the typos @tremblap

@tedmoore
Copy link
Member

The plural of indices is just index. I think indexBuffer is confusing because it implies that it will (or should?) have just one index, but it will almost always have many. Same with features, even if it is just one channel, all the frames are features, aka analysis results.

My vote would be that they all be plural, although I don't feel strongly about it either way.

We should avoid indiceBuffer though because indice is an incorrect spelling.

@jamesb93
Copy link
Member Author

The plural of indices is just index.

Woops! 😂

How about:

indicesBuffer
featuresBuffer
audioBuffer
imageBuffer

That feels consistent enough to me.

@tedmoore
Copy link
Member

i like it

@jamesb93 jamesb93 merged commit d28e174 into flucoma:dev Jan 25, 2022
@jamesb93 jamesb93 deleted the enhance/update-waveform branch January 25, 2022 15:40
jamesb93 added a commit that referenced this pull request Feb 16, 2022
* copy the misc folder in installation target

* Add relative path file writing for data objects

In principle consistent with other Max objects (which aren't wholly 
consistent in edge cases)

* reset points if dict is successfully parsed

* crediting (#78)

crediting the new team

* update kdtree help file

* add fluid.stats~ and change category to statistical analysis

* move stft and add fluid.grid~

* grid out help file real estate

* adds fluid.plotter to the autocomplete objectlist

* adds fluid.waveform~ to objectlist

* first tab beautified

* reorder latency message

* getlatency after changing preset

* Transients Help File (#82)

* grid out help file

* update transients~ help file

* ci/automatic building (#29)

* incorporate Ted's changes and recommendations

Revert "fix pre/post cmake"

This reverts commit 7d04ffb.

Create does-it-build.yml

does it build?

consume SDK

curl the 8.0.3 SDK

add a ls stage for sanity

remove cmake flags for OSX architectures

move list cmd

add working directories for steps that urn in build

use macos as runner

use ninja for build process

add specific name for build

will write a text file named foo to the home directory

see if we can headless max patchers

also build on the ci branch

Buf2List: tidy up and add a 'buffer' message for immediate processing

Revert "fat binaries"

This reverts commit 35ef645.

Revert "build script"

This reverts commit 1ee3f5a.

# Conflicts:
#	create.sh

Initialize dumpDictionary pointer in MaxWrapper explicitly, as this is assumed in destructor

removed dangling script naming to buf2list

corrected buf2list use in mlpclass

corrected interface of mds to make it more interactive

updated buf2list2buf helpfiles with doc

dial back automatic patch testing in workflow

* Adjust cmake to handle changes to Max SDK from 8.2 onwards (#32)

* Adjust cmake to handle changes to Max SDK from 8.2 onwards

* correct typo

* Update macos-build-test.yml

use the latest sdk from github

* you actually have to git clone...

* only build ampslice for now

* test releasing

* make names + commits

* give a proper asset name

* use ref for tag

* Update macos-build-test.yml

* spell prerelease properly

* change convention for naming n stuff

* Update macos-build-test.yml

* add windows-build script

* quotes around path for windows

* test a composite workflow

* update composite

* make a nightly action

* now check to see if we can build and see an external

* update infrastructure

* check with cached outputs too

* pre check in the right place

* dont check a non-existant file

* remove nightly cache workflow

* build and combine

* remove bad line

* do some sanity checks for cleaning

* inspect what is going on

* cleanup ls -R and change to latest macos

* see if we can copy the entire externals folder

* check

* now build fat and see

* remove mistake space

* get uname

* get clang version

* get system info

* try some silicon black magic

* use custom core

* use https

* check if core is there

* core is only one folder up

* make a release again

* make externals early

* 🩴 :burger:

* pass DCMAKE_APPLE flag

* full install of max

* make release builds on windows

* remove pdbs from release-packaging

* dont remove pdb files

* fix paths because they have spaces 👿

* try and deal with the hell that is windows

* now release it!

* try again

* only build on dev and ci branches

* now with DDOCS=ON

* ddocs off

* provide a more detailed tag for nightly builds

* also make docs

* use blas compilation branch (temporarily)

* fix malformed paths

* missing -D

* take max_ref and merge with final compile

* delete nightly before remaking it

* delete extraneous experimental patch

Co-authored-by: James Bradbury <jamesbradbury93@gmail.com>
Co-authored-by: weefuzzy <gungwho@gmail.com>

* dont use BLAS branch (fixed in pr#67)

* remove dangling line

* use dev branch of flucoma core for ci

* cleanup english and patching on tab 2

* deferlow on file load (was failing before)

* update cosmetics

* point to /reference/sines in the learn platform not ampslice

* add learn and flucoma.org links

* apply 10x10 grid

* cancel previous runs if a new push is made

* Only need 1 outlet

* update outlet assistance

* update outlet 1 assist

* change tag name of nightly to be versionless

* Remove per-PR merge checks

* update bufselect

* add links to top of file

* initial cleanup

* patcher for linking to learn articles more easily

* changes to chroma help file

* remove spaces from installation path name (#90)

* fix references to spaced package name in CI

* sorted the package-info with a few fun anachronicisms

* missed a space in macbuild target

* only do a release on dev branch

* only do a release on dev branch

* trigger build on PR

* remove per PR building

* remove release checking

* add a deferlow to fluid.learn

* provide a small musical example on first tab

* add chroma frequency calculation

* replace list.change with zl.change

* human unit test maxpat

* make a soundful demonstration on each tab

* fix incorrect refrences to previous help files

* update positioning of online reference/flucoma link

* Fix fluid.learn abstraction not displaying properly (#101)

* initial cleanup

* changes to chroma help file

* add a deferlow to fluid.learn

* provide a small musical example on first tab

* add chroma frequency calculation

* replace list.change with zl.change

* make a soundful demonstration on each tab

* fix incorrect refrences to previous help files

* update positioning of online reference/flucoma link

* update fluid.learn patch to render more reliably

* Load media files from package abstraction (#102)

* a preliminary go at the bufloader

* tighten regex and implement auto loading

* add second tab for curating statistics with bufselect

* add cosmetic upgrades to second tab and neaten first tab

* fix loading woes with fluid.learn

* more cosmetic upgrades to patch

* cosmetic upgrades to chroma

* [Review Changes] BufChroma Help File (#98)

* update fluid.bufchroma~ help file

* Fix fluid.learn abstraction not displaying properly (#101)

* initial cleanup

* changes to chroma help file

* add a deferlow to fluid.learn

* provide a small musical example on first tab

* add chroma frequency calculation

* replace list.change with zl.change

* make a soundful demonstration on each tab

* fix incorrect refrences to previous help files

* update positioning of online reference/flucoma link

* update fluid.learn patch to render more reliably

* Load media files from package abstraction (#102)

* a preliminary go at the bufloader

* tighten regex and implement auto loading

* stripping back of first tab

* an interactive playback mechanism with chroma data

* chroma lookup

* add more detail tab

* polish patch

* layout fixes for help patch

* [Review Changes] KDTree Help File (#92)

* more cleanup on fluid.kdtree

* separate tabs

* add analysis data

* cleanup tab 1

* add presliced corpus points

* add a tab simplifying the explanation

* cosmetic upgrades

* add numbered instructions

* [CI] Refactor and use composite actions (#106)

* use flucoma actions

* use composite actions to build windows

* remove duplicate env setu

* use maxdocs composite action

* do CI on every ci located branch

* Re-enable building docs as part of ALL

* [CI] Fat Binaries (#107)

* do CI on every ci located branch

* bump to v3

* [CI] Actions@v4 (#108)

* do CI on every ci located branch

* use v4 of actions

* update docs

* Re-enable building docs as part of ALL

* [CI] Fat Binaries (#107)

* do CI on every ci located branch

* bump to v3

* [CI] Actions@v4 (#108)

* do CI on every ci located branch

* use v4 of actions

* update docs

* indentation

* remove duplicate

* typo

* [CI] Fix Documentation Build (#115)

* fix ci docs component

* make release all the time

* use ubuntu latest for building docs

* [Enhance] Update fluid.waveform~ (#116)

* update to translational api layer

* use new api in help file

* buf -> buffer

* alias indicesbuffer to addmarkers

* update help to reflect internal api

* singular for methods

* update waveform help

* fix pluarlisation of methods and arguments

* update help file for fluid.waveform

* various cosmetic upgrades (#103)

* BufNNDSVD Help File (#88)

* update bufnndsvd~ helpfile

* add playback to the help file

* [Docs] Fix Layout issues in BufChroma help (#117)

* fixes layout issues of bufchroma

* fix bufcompose load issue

* Update fluid.sines~.maxhelp

* update dataset help file (#120)

* labelset cosmetics

* remove frombuffer tab

* [Docs] Blocking Help Tab (#121)

* add back blocking attribute

* add attribute blocking to bufnndsvd

* add tab to bufstft

* add tab to bufselect

* change release action

* [Docs] BufLoudness Help (#122)

* griddify help file

* remove js starter

* experiment with waveform-based interface

* first tab done (possibly)

* finish multichannel tab

* PAs changes

* [Docs] Loudness Help File (#118)

* shell out loudness second tab

* cosmetic updates to second tab

* update second tab

* PA suggestions

* typo

* more typos

* [Docs] Audiotransport Help File (#105)

* work on audiotransport help file

* add fluid.learn abstraction

* cosmetic updates

* [Enhance] Retrieve toy DataSets (#126)

* pull datasets from the location specificed in PR 88 of core

* pull datasets to misc

* also add an abstraction for loading datasets

* update help file with new asset names

* add misc to ignore

* copy from Data instead of DataSets

* copy resources on cmake configure

* moved patchers from misc to patchers

* delete the files tracked by mistake

* update bufchroma to have an adaptive number of chroma (#129)

* AmpSlice Help File (#81)

* griddify help file

* in progress work for explaining thresholds and curves

* update bpatchers for providing linkage to sites

* update ampslice to be more friendly and clear

* add margin to link helper bpatchers (so they display correctly on load)

* update help file to accomodate bpatcher changes

* make text box way longer than it needs to be.

* update cosmetics

* update with review advice

* update learn subpatchers

* shuffle cosmetics

* update bufaudiotransport names (#131)

* Update nightly.yaml

Add workflow dispatch for manual launch

* correct docs path variable in CMake

* [Docs] Grid Help File (#110)

* add datasets that can be reused for examples

* update to fluid.grid helpfile

* try and make learn load in the right order...

* update aesthetics and separation of tabs

* cosmetic upgrades

* Revert "add datasets that can be reused for examples"

This reverts commit 20f58a3.

* update dataloader abstraction

* fix layout with new dataset loader

* Max buffer references weren't being freed safely (ASan) (#132)

* update quickstart

* [Fix] fluid.plotter~ clear label data (#135)

* fix single quotes

* remove old var

* clear all of the data that we need to clear

* re-order precedence of colouring (#136)

Co-authored-by: weefuzzy <gungwho@gmail.com>
Co-authored-by: tremblap <info@pierrealexandretremblay.com>
Co-authored-by: Timo Hoogland <timohoogland@gmail.com>
Co-authored-by: James Bradbury <jamesbradbury93@gmail.com>
Co-authored-by: Ted Moore <ted@tedmooremusic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants