Hey monkey: I have made suggested changes still not getting any playable recordings I am missing something ! Can have a look on the pr requested a review !
2025-07-16 19726, 2025
monkey[m]
<mamanullah7[m]> "monkey: I cant find any document..." <- > <@m.amanullah7:matrix.org> monkey: I cant find any documentation regarding multi SVG path implementation i can only able to send single string and things are getting messy!... (full message at <https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/PNCKeuCrJmOqihoEAHPvCusZ>)
2025-07-16 19742, 2025
monkey[m]
<rayyan_seliya123> "Hey monkey: I have made..." <- Is this on the BrainzPlayer side only? As in, do you you get a search response from the IA with the media, all of that working as expected?
2025-07-16 19704, 2025
mthax has quit
2025-07-16 19728, 2025
mthax joined the channel
2025-07-16 19725, 2025
rayyan_seliya123
<monkey[m]> "Is this on the BrainzPlayer side..." <- Yes monkey: the backend API is working as expected when I search for a track at the endpoint `/1/internet_archive/search` it returns a valid response including stream_urls and metadata
2025-07-16 19725, 2025
rayyan_seliya123
I think the issue is on the BrainzPlayer side also for a hardcoded one on my latest implementation the player works fine but for the API- fetched track playback does not occur
2025-07-16 19757, 2025
monkey[m]
OK, thanks for the details, will look.
2025-07-16 19725, 2025
rayyan_seliya123
monkey[m]: > <@monkey:chatbrainz.org> OK, thanks for the details, will look.
2025-07-16 19725, 2025
rayyan_seliya123
>
2025-07-16 19725, 2025
rayyan_seliya123
Sure !
2025-07-16 19744, 2025
monkey[m]
m.amanullah7: They don't really document making custom icon definitions because they rely on a "pro++" feature model which includes custom icons.
2025-07-16 19744, 2025
monkey[m]
But a little bit of retro-engineering goes a long way...
For reference, I took this svg (https://cdn.jsdelivr.net/gh/homarr-labs/dashboard…) and copied the value of each path's `d` attribute.... (full message at <https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/FoNwGpGrJkSEJRZFfHTaSBel>)
2025-07-16 19725, 2025
monkey[m]
For my reference I looked into the fontawesome source code to see how they managed multiple paths (i know the spotify icon for example is multiple paths) https://github.com/FortAwesome/Font-Awesome/blob/…
You might need to play with the width and height values (the two numbers in the icon definition) to make it look the correct size compared to other icons. I leave that to you.
2025-07-16 19743, 2025
monkey[m]
rayyan_seliya123: So I'm looking at the IAPlayer component, and I think I see the issue. It seems like you are setting a `currentTrack` in the state, but then relying on componentDidUpdate to actually play the track. I think that looks incorrect at first glance. Why did you end up implementing it like that?
2025-07-16 19730, 2025
monkey[m]
Also, do you have an example handy of a media returned by the internet archive API, for testing?
2025-07-16 19718, 2025
monkey[m]
I mean by the /internet_archive/search endpoints, rather
2025-07-16 19703, 2025
rayyan_seliya123
<monkey[m]> "rayyan_seliya123: So I'm looking..." <- I moved the playback trigger to componentDidUpdate because React state updates are async calling play right after setState wasn’t reliable, as the audio element might not be ready yet. By triggering playback in componentDidUpdate when currentTrack changes, I ensure the DOM and refs are updated before playing. If there’s a preferred pattern, I’m happy to follow it! but
2025-07-16 19703, 2025
rayyan_seliya123
despite of following this pattern i was able to play a hardcoded track
2025-07-16 19738, 2025
rayyan_seliya123
monkey[m]: Sure let me start the server and provide you the results of the endpoint !
2025-07-16 19706, 2025
monkey[m]
I see. I'll try a couple of things, the first two being: 1. awaiting the this.audioRef.current.play() call; since it is async, it might be throwing an error silently and 2. setting this.audioRef.current.src programmatically instead of relying on the rendering order.
2025-07-16 19703, 2025
rayyan_seliya123
monkey[m]: Sure ! Will send u asap the results so that it helps you more !
2025-07-16 19705, 2025
monkey[m]
I see how using an audio element is more complex than those abstracted SDKs we use for other players, but we can definitely make it work :)
2025-07-16 19746, 2025
rayyan_seliya123
monkey[m]: Sure !
2025-07-16 19710, 2025
mamanullah7[m]
monkey: Thanks I'll look n get back to u ! I'm traveling rn!
monkey[m] uploaded an image: (26KiB) < https://matrix.chatbrainz.org/_matrix/media/v3/download/chatbrainz.org/pXEMsYGrLLsPQclMcqmSoNLe/image.png >
2025-07-16 19702, 2025
monkey[m]
Will leave a review on the PR, and you can try implementing the same changes and see if it works.
2025-07-16 19706, 2025
monkey[m]
Or should I push my changes and explain them on the PR?
2025-07-16 19731, 2025
rayyan_seliya123
monkey[m]: Do you hardcoded or what you have done I had made the changes but it's not playing on my end like how we can check that the api fetched tracks are playing ?
2025-07-16 19759, 2025
rayyan_seliya123
monkey[m]: Yeah sure looks good to me !
2025-07-16 19740, 2025
monkey[m]
The changes I made are only about the audio element and the react component cycle, basically only changes on the part after the API call
2025-07-16 19737, 2025
rayyan_seliya123
monkey[m]: I would love to implement the same we can discuss on my pr how we should go ahead as pf now thx by the way !!
2025-07-16 19750, 2025
rayyan_seliya123
* I would love to implement the same we can discuss on my pr how we should go ahead as of now thx by the way !!
2025-07-16 19709, 2025
suvid[m]
lucifer: How do I get musicbrainz_id for the user for submitting listens?
suvid[m] uploaded an image: (61KiB) < https://matrix.chatbrainz.org/_matrix/media/v3/download/matrix.org/iuIhpbLATxpYdzaGaMQuafHD/image.png >
2025-07-16 19753, 2025
lucifer[m]
[@suvid:matrix.org](https://matrix.to/#/@suvid:matrix.org) it's the listenbrainz user id/user name
2025-07-16 19709, 2025
lucifer[m]
See how submit listens api works.
2025-07-16 19723, 2025
suvid[m]
oh but the comment says both user_id and username are needed
2025-07-16 19708, 2025
lucifer[m]
Yes you can query the user table to get the username from the user id
2025-07-16 19726, 2025
monkey[m]
rayyan_seliya123: I updated your PR with the latest master changes, which will require rebuilding the static_builder docker image: `./develop.sh build static_builder`
2025-07-16 19748, 2025
monkey[m]
Also left comments
2025-07-16 19727, 2025
Zhele has quit
2025-07-16 19749, 2025
Zhele joined the channel
2025-07-16 19716, 2025
monkey[m]
LB team, we're due for a prod release, going to do that today after seeing what's ready to merge
2025-07-16 19758, 2025
d4rkie has quit
2025-07-16 19723, 2025
d4rkie joined the channel
2025-07-16 19727, 2025
suvid[m]
Hi lucifer: I've implemented all the suggested changes in the PR
2025-07-16 19727, 2025
suvid[m]
Kindly review it whenever you find it convenient 🙃
<monkey[m]> "rayyan_seliya123: I updated your..." <- Thankyou so much monkey: yeah I missed to rebuild the static_builder just getting a lot of errors will try again and yeah I will see the pr for the comments !thx
2025-07-16 19700, 2025
monkey[m]
ansh: I am temporarily going to put the release ^ on beta, but how do you feel about putting the recording page PR on beta after I deploy to prod, and getting some early feedback from the community?
2025-07-16 19742, 2025
monkey[m]
rayyan_seliya123: Yeah, sorry about that. At least there are no merge conflicts, and preventing any in the future
2025-07-16 19717, 2025
rayyan_seliya123
monkey[m]: No worries and thx about updating my branch with the latest changes