element-hq / element-web

A glossy Matrix collaboration client for the web.

Home Page:https://element.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Audio file timestamp doesn't stop counting at the end of playback

luixxiul opened this issue · comments

Steps to reproduce

  1. Create an encrypted new room
  2. Upload you favorite 4-5 minute song
  3. Wait until the song finished by listening to it
  4. Check the player

Outcome

What did you expect?

Either (a) the song would be played again from the start or (b) the counter would stop counting at the end of the song. I am not sure which one is expected.

What happened instead?

The counter was reset to zero and started counting, but the song itself was not replayed.

player.mp4

Also, unless the room is reloaded, the audio file cannot be even replayed on the player.

Operating system

Debian

Browser information

Firefox

URL for webapp

localhost

Application version

develop

Homeserver

No response

Will you send logs?

No

I suspect the correct behaviour is for the playhead & time to reset to zero and stay there once playback has reached the end (instead of going back to zero and then counting up again which is what it sounds like it happening). Perhaps this could be a good issue for a relatively new person to help with. src/components/views/messages/MAudioBody.tsx / src/components/views/audio_messages/AudioPlayerBase.tsx in react-sdk are probably the files to start with.

I suspect the correct behaviour is for the playhead & time to reset to zero and stay there once playback has reached the end.

Also, the file should be able to be replayed, of course 😉

I noticed something else while drafting a PR for this issue. If you let the player keep counting after the song's finished, switch to another room and switch back it works as normal i.e Stoppping at zero and when the play button is clicked, it plays normally so this may be something to look out for.

I'd also like for this issue to be assigned to me but given the information at https://github.com/vector-im/element-meta/wiki/Guidance-on-assigning-issues I'll hold that off until I submit my draft PR. Thought I'd mention this here in case anyone else wants to work on this issue.

The issue here is that the counter does not only stop at the end of playback, but also the audio cannot be replayed unless the page is manually reloaded.

After digging around for a while, it seems this is a bit above me and I will not be able to continue working on this, anyone who wants to work on it can pick it up.

can anyone please explain the problem clearly, i'm unable to get the issue.

I am unable to find this files in the source code src/components/views/messages/MAudioBody.tsx ? Would you guide a little more about it ?

I want to work on it. Please assign me this issue.

Thank you for your interest in this issue @yoda-76 . We will normally not assign the issue to an external contributor until they have provided at least a draft PR which is taking the right direction. For further details, see our guidance on assigning issues.

If you have any technical questions about this issue, you can ask for help in #element-dev:matrix.org .

I am working on this issue and what i've noticed that the counter goes to zero but you want it to stay at the end right?!
And also I didn't find any problrm in playing it again.....Could anyone please confirm. @dbkr @luixxiul

@chandra1899 I edited the explanation for you so that you can understand the issue.

@ABHIXIT2 Do you mean that the issue is no longer reproduced?

I confirmed the issue still could be reproduced on my side.

I think it has something to do with the app because it wasn't happening but after installing app and playing audio there it started happening. I will try to solve the problem and if there anything i need to know just lemme know... @luixxiul

Edit : This is happening for above 5 min clips

I am unable to find this file in the source code src/components/views/messages/MAudioBody.tsx
Where can i find it?

@t3chguy I looked at https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/components/views/messages/MAudioBody.tsx. Can a reset Function be added to this react component?
I think this is a bit too complicated for my current level.

would like to work on this, but new so would love to collaborate and work together on this issue if anyone is interested!

commented

is the issue still open or is anyone working in it?

is the issue still open

yes i can still reproduce the same

Hi @t3chguy @luixxiul
I found the issue it related to "ended" event
after the audio (size greater than 5mb as mentioned in desc) gets completed the ended event callback doesnt get fired even though the attribute ended says true
I think the issue might be related to HTML5 cause I have tested on firefox, chrome & brave..its there

so a dirty work around would be comparing the currentTime and duration and firing the ended callback
any thoughts?

Is this issue still there, because I cannot reproduce this, I tried to reproduce in the Chrome, Brave, Firefox but I wasn't able to do so. Can anybody confirm ? Attaching the POC video for reference.

Element._.audio-file-timestamp-21796.-.Brave.2024-01-08.00-31-05.mp4

i am still able to reproduce @nallapaneni-sreehari

www_screencapture_com_2024-1-8_12_45.mp4