-
Notifications
You must be signed in to change notification settings - Fork 13
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
proposal: repurposing obsolete event IDs #118
Comments
I really like this idea! I like text metadata too as a way of writing notes
for myself too. I wish there was some way to not make the text
variable-length but we'll see if that's possible.
…On Mon, Jun 24, 2024, 15:44 cob ***@***.***> wrote:
The event IDs in question are BEATCLOCK, BEATTEMPO, BEATNUM, REPEAT, and
LAST. I've been experimenting with the obsolete event IDs and how pxtone
handles them in the modern "v5" ptcop format (which is the only format that
the public pxtone lib, and thus ptcollab, can export). The only code
associated with them is used when loading a project with an older format,
where the events are removed and converted into the appropriate
project-level values. It follows, then, that these events are completely
inert if somehow present in a v5 project, so Collage will not do anything
with them (although selection-based manipulations in Collage will still
affect them).
Therefore, if there is interest in adding such functionality, these event
IDs could be used "harmlessly" by ptcollab to provide additional features
encoded in the ptcop itself that will not break Collage. My personal
preference regarding new ptcollab features matches the precedent hitherto,
which is to say that:
1.
the rendered output of the project should remain the same between
ptcollab and Collage; and
2.
Collage should not clobber the additional features of the project,
even if the functionality is not directly replicable in Collage.
For example, snap-Y / non-chromatic pitch is acceptable because it meets
both of these criteria, but implementing tempo-change events in ptcollab
would cause an output discrepancy between the two programs and would thus
not be acceptable IMO.
With that in mind, I would find it valuable to repurpose some unused event
ID for a "comment" marker that allow the user to enter very short text,
using the 32-bit event value repurposed into an array of 4 UTF-8(?) bytes.
I'm imagining that these would appear floating at the top of the piano
roll, below any pinned units. They would also be handy as a basic way to
separate sections of a song, such that when a comment marker is clicked,
the editor would automatically create a selection from that location until
the next comment marker.
—
Reply to this email directly, view it on GitHub
<#118>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACFFYULGDXVQ5PZ42HBQ2Z3ZJBZLNAVCNFSM6AAAAABJ2OEPQ6VHI2DSMVQWIX3LMV43ASLTON2WKOZSGM3TAOJWHA4TGNY>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The event IDs in question are
BEATCLOCK
,BEATTEMPO
,BEATNUM
,REPEAT
, andLAST
. I've been experimenting with the obsolete event IDs and how pxtone handles them in the modern "v5" ptcop format (which is the only format that the public pxtone lib, and thus ptcollab, can export). The only code associated with them is used when loading a project with an older format, where the events are removed and converted into the appropriate project-level values. It follows, then, that these events are completely inert if somehow present in a v5 project, so Collage will not do anything with them (although selection-based manipulations in Collage will still affect them).Therefore, if there is interest in adding such functionality, these event IDs could be used "harmlessly" by ptcollab to provide additional features encoded in the ptcop itself that will not break Collage. My personal preference regarding new ptcollab features matches the precedent hitherto, which is to say that:
the rendered output of the project should remain the same between ptcollab and Collage; and
Collage should not clobber the additional features of the project, even if the functionality is not directly replicable in Collage.
For example, snap-Y / non-chromatic pitch is acceptable because it meets both of these criteria, but implementing tempo-change events in ptcollab would cause an output discrepancy between the two programs and would thus not be acceptable IMO.
With that in mind, I would find it valuable to repurpose some unused event ID for a "comment" marker that allow the user to enter very short text, using the 32-bit event value repurposed into an array of 4 UTF-8(?) bytes. I'm imagining that these would appear floating at the top of the piano roll, below any pinned units. They would also be handy as a basic way to separate sections of a song, such that when a comment marker is clicked, the editor would automatically create a selection from that location until the next comment marker.
The text was updated successfully, but these errors were encountered: