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

general changes and improvements #51

Closed
wants to merge 7 commits into from
Closed

Conversation

superbigio
Copy link

  1. ltc_frame_get_user_bits():
    used binary OR operator instead of arithmetic + operator.
    Faster to compute and more appropriate for bit manipulations.

  2. deprecated parse_bcg_flags() and renamed it ltc_frame_parse_bcg_flags()
    What does 'bcg' stand for BTW?

  3. deprecated ltc_encoder_get_bufptr() and renamed it ltc_encoder_get_bufferptr()
    Reason for deprecation was a change in argument order that is more consistent with other functions such as ltc_encoder_get_buffer(), ltc_encoder_copy_buffer(), etc...
    So we set the buffer pointer by passing it as an argument by reference and we return the size/number of bytes.
    In the future you may want to set the size by reference as well and use the return value for a status/error indicator, as you are already doing in some other functions.

  4. fixed some comments that were referencing deprecated functions

Both deprecated functions are exported and turned them into wrappers for the new functions as I did previously. Nothing should break.

Your library works really well. I have just finished writing an encoder Max/MSP external, that allows you to change FPS, sample rate and volume on-the-fly in real time. I am gonna start writing the decoder part now.

@x42
Copy link
Owner

x42 commented Nov 11, 2019

What does 'bcg' stand for BTW?

It's an abbreviation used in the LTC spec for "binary coded group flags"

used binary OR operator instead of arithmetic + operator.

There were some issues with packed data-types and bitwise operators. If I remember correctly on ARM. I'll have to verify that and/or look through some old notes.

If you don't mind I'll only merge the other 5 commits only, and postpone this for the time being.

I have just finished writing an encoder Max/MSP external, that allows you to change FPS, sample rate and volume on-the-fly in real time.

Wow this is really cool! Thanks. Can I add a link from the doc to your project when it's done?

@superbigio
Copy link
Author

superbigio commented Nov 11, 2019

No problem of course. It's your library.
Please merge only what you feel comfortable merging.

The only thing I want to make sure is that you don't merge commit:
be398ce
I messed up on that one.

Can I add a link from the doc to your project when it's done?

Yes, of course I will give you a link when it's all ready to go.
Cheers.

@x42
Copy link
Owner

x42 commented Nov 11, 2019

I've re-done your patch-queue, separated white-space changes, also updated test/example code, and wrote proper commit messages with a short summary line.

622e82a...5debe45 should be everything except the |= -> += changes.

It would be great if you could double-check that this work for you. Cheers!

@superbigio
Copy link
Author

Yes, will double-check and report back to you. Thanks!

@superbigio
Copy link
Author

Yes, everything seems to be there.
The only thing is ltc_frame_parse_bcg_flags() is named ltc_parse_bcg_flags()
I am not sure this is intentional or just a minor oversight.
I thought ltc_frame_parse_bcg_flags() was more appropriate because of the first argument of the function being an LTCFrame, but I am good either way.
Thanks a lot for your support.

@x42
Copy link
Owner

x42 commented Nov 11, 2019

It was an oversight. Thanks for the heads up. I'll fix it

@x42 x42 mentioned this pull request Nov 11, 2019
@x42
Copy link
Owner

x42 commented Nov 11, 2019

With #52 this PR should be complete now.

@x42 x42 closed this Nov 11, 2019
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