-
-
Notifications
You must be signed in to change notification settings - Fork 4k
playback of .tpm2 #2876
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
base: main
Are you sure you want to change the base?
playback of .tpm2 #2876
Conversation
|
@constant-flow: I have a question/suggestion concerning the 2D mode coming up with V0.14: So my question: |
|
It uses |
|
I just can tell you what I noticed: |
|
Is the 2d setup something that prohibits this user mod from being merged? I would really like to use it. Especially the segments feature is important for my use case. |
|
I've just tested your mod with my matrix and faced an issue: So I wonder if this a limitation of the ESP32 or WLED or if there is a code issue. (My tpm2 records are fine; I also habe tested it with another tpm2 player where everything is running properly.) I tested it with 0.13.3 and 0.14. |
|
So far the implementation is rather naïve and doesn't do any kind of double/triple buffering. Loading data for so many LEDs is something I didn't test and cannot test (no hardware at hand). All data is read just-in-time from the file. Did you load the data from SD or from flash, I bet SD is slower than the Flash as well. I think if required the performance can be boosted, but at some point there will be definitely a limit by the hardware itself to playback that fast, latest when the animation doesn't fit into memory or when it's too many LEDs to get the info for. |
|
@ElToberino concerning the 2D setup. I located the origin of the issue. My code relies on the |
|
@constant-flow: Thanks for investigating the 2D setup! |
|
Try adjusting WLED FPS in LED settings (advanced part). Start with 25FPS. |
|
@blazoncek: |
|
@ElToberino you may want to try the development branch of this PR I just commited a change that hopefully fixes the 2D Segments issue. More than welcome to get feedback if it works for you. I will start to look into buffering and timing today. |
|
@constant-flow: |
|
@constant-flow: |
|
Hi, @constant-flow! The code of this draft in here also works fine with the current 0.14 beta (of course showing the issue of far too slow speed with my 858 leds.) Best regards! |
|
Hey! This issue has been open for quite some time without any new comments now. It will be closed automatically in a week if no further activity occurs. |
|
It's not stale. |
|
@ElToberino do you remember what you meant with your post. From what i read it is (referencing this commit graph), you mean commit Can you recall what specifically didn't work? Not compiling, No playback, Wrong speed, Wrong display, or simply still too slow?
Looking at the graph, it seems like I branched off to far off from the working state. Merging the buffering part into the functional version creates way to many conflicts. So probably a rewrite is required. Hooray 😞 |
|
@blazoncek @Aircoookie @ElToberino OK, I was able to manually merge the changes of my buffering code (7ab6cc3) and the code of this PR (0df38e6). I literally didn't do any changes to the code other than the changes from the branches. 🫵 How to test (please do 🙇 )Get my code from here and make sure you are on the Build and DeploySelect and build the You have three option (you probably know 🤓 but I add it for completeness)
Store playback fileSo please test this first you need to upload a TPM2 (e.g. ... after uploading it should look similar to this:
Create presetThen setup a preset, according to your filename:
Hit Save
Play recordingClick the preset, to play it Please replyif this works for you, only then, i'd check how much work FSEQ would be to implement. |
@constant-flow can you provide a sample TPM2 file? I have none. |
|
Here is a simple file living on the discord. Please try with a segment defined, as it relies on the segments |
|
@constant-flow I've checked your fork, tpm2 branch and although the code is clean and well written I would recommend different approach. Please exercise a new possibility in 0.14 to create custom effects and use that to:
I would also like to see in the code:
I do not know anything about TPM2 but was wondering if it does not have FPS field? Does it? |
|
Also tested the usermod and more often than not I get a crash. Sometimes it will play something. :) |
|
Hi, @constant-flow, |
|
Having compiled and tested your code I have to report some problems unfortunately: Additional setup information: Tested with two different files recorded with Jinx! (size: 508 kb and 86 kb). WLED configured as a 1-D-strip, matrix patching was done in Jinx!). As it was before in your first PR (before buffering was added) there seem to be problems with a larger number of leds, though 768 leds should be no problem for an esp32 (with tpm2.net via Wifi everything works fine.) |



Enable playback of animation recordings via presets (tpm2 right now, extensible to other formats).
Animations can be stored in flash
/editor on SD card (see other upcoming PR)