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

Import/Export and Share options for patterns #51

Open
Teteros opened this issue Feb 25, 2022 · 4 comments
Open

Import/Export and Share options for patterns #51

Teteros opened this issue Feb 25, 2022 · 4 comments
Assignees

Comments

@Teteros
Copy link
Contributor

Teteros commented Feb 25, 2022

Thank you for Efflux 2.0, been having a lot of fun with it, here's my feature request after using it again.

Currently the entire song is able to be saved to a file or to a link as well as the instruments (which are able to be imported/exported to a file, but not shared.)
Would it be easy to make the patterns themselves be exportable too?

The great thing about this tracker is the portability, however I've been wishing Efflux had a bit more collaboration tools to take advantage of it being a webapp.

Being able to copy/paste the pattern data into a clipboard and share them with a friend would be pretty big. You'd be able to work on a song together by working on a pattern locally simultaneously. At the moment this workflow is not really viable because Efflux requires you to work on the whole song so one person would have to wait on the patterns to be finished before being able to work on theirs.
Copy paste-able instruments would be a good addition as well.

The other use case for this is being able to reuse patterns offline (e.g importable drum loops/breaks snippets), to speed up song creation.

@igorski igorski self-assigned this Feb 26, 2022
@igorski
Copy link
Owner

igorski commented Feb 26, 2022

Good to hear Efflux 2 is proving useful! :)

I like your ideas as so far Efflux had been developed with audio features and performance first, and great usability second 🙈 so it's good to catch up on that aspect.

If I understand your request is that: individual patterns should be exportable

I assume this would be similar to the "advanced" pattern button : e.g. you can select a range of patterns and an optional range of channels within the patterns to export ?

You also mention clipboard copy/pasting. Maybe I'm not entirely sure I follow but with clipboard pasting I assume you mean being able to copy the data, save it in a txt file and share this file with your collaborator ? We can create a new file format for this purpose that you can export directly from Efflux with the "pattern export flow" described above.

Note that for instruments this currently exists. In the instrument manager you can click the "export" button for individual instruments (which your collaborator can import using the import button in their instrument manager).

For ease of use I can imagine extended the clipboard paste and file drop functionality. Currently you can drop audio files and Efflux songs into the application. This could be extended to also allow pasting from clipboard and also include paste/drop of instruments and the exported patterns.

What do you think?

@Teteros
Copy link
Contributor Author

Teteros commented Feb 26, 2022

so far Efflux had been developed with audio features and performance first, and great usability second see_no_evil so it's good to catch up on that aspect.

That's true, the Vue rewrite definitely runs better than the previous version which tended to lag behind when following the tracks played, well done!

If I understand your request is that: individual patterns should be exportable
I assume this would be similar to the "advanced" pattern button : e.g. you can select a range of patterns and an optional range of channels within the patterns to export ?

It could be implemented by having a second button Export Content (after "Copy Content") in the "advanced pattern editor" menu in which the specified data can be exported, which might work.

You also mention clipboard copy/pasting. Maybe I'm not entirely sure I follow but with clipboard pasting I assume you mean being able to copy the data, save it in a txt file and share this file with your collaborator ? We can create a new file format for this purpose that you can export directly from Efflux with the "pattern export flow" described above.

Txt or JSON or something like that could work, although if the data is compact enough to fit into the clipboard, maybe this could be implemented even more seamlessly. There could be a global option in settings that turns on "collaboration/share mode"?

When this is on the CTRL-C and CTRL-V on pattern selections, as well as the Copy/Paste pattern operation buttons under the tool bar will utilise the clipboard (storing the data in plaintext). That way, the UI will not be cluttered by any new options and the user can paste stuff in and out of the application into a chat app etc.

If the data is too big for that (especially with the samples considering they are binary data), there could be a couple buttons to export patterns in/out. The advanced pattern menu option as well as "Share" or "Export" in the pattern operations:
share

Currently you can drop audio files and Efflux songs into the application. This could be extended to also allow pasting from clipboard and also include paste/drop of instruments and the exported patterns.

Sounds good 👍
Just did some tests, dropping efflux songs and samples into the application works. Drag and dropping instruments doesn't work. Also there is "import file" for samples but no "export file" to retrieve them in the sample editor. However this can be worked around currently by exporting the instrument itself, though that is not an audio clip of course.

@igorski
Copy link
Owner

igorski commented Mar 6, 2022

A small update on the latest added features:

  • Pasting Efflux projects (.xtk) and audio files now also works from the clipboard (e.g. ctrl+C/ctrl+V across applications), has been added in 5b41fc5
  • Exported instruments (.xit) can now also be dragged/pasted into the application as of 11aa4f3

Still to do : import/export fo both individual samples as pattern content.

@igorski
Copy link
Owner

igorski commented Apr 3, 2022

Patterns can now be exported to .xtp-files from the "advanced" pattern editor window. As before, you can select arbitrary pattern and channel ranges to export/clone. Additionally, this is also added to state history (previously you couldn't undo the action of inserting a range of patterns into a song). The aforementioned has been added in 1126ac0

Like any other supported file format, you can paste an .xtp file from your clipboard into the application using ctrl|cmd+V or by dragging the file into the Efflux window.

Still to do: import/export of individual samples.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants