#18877 closed bug (fixed)
{Regression} system .wav sounds freeze Media
Reported by: | bbjimmy | Owned by: | pulkomandy |
---|---|---|---|
Priority: | normal | Milestone: | R1/beta5 |
Component: | Audio & Video/Codecs | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
hrev57689 x86_64
Set beep in the Sounds prefrences to a .wav sound file. In my case, BeBeep.wav.
Change the volume control. This shoule play the beep sound.
The volume control freezes and the sound does not play.
The media serveses need to be re-started for any sounds to play and un-freeze the volume control.
MediaPlayer freezes as well withany .wav sound files, although .wav sounds seem to play ok with games. My LoopDLoop has several .wav files that play fine in the game, but MediaPlayer freezes on them.
I insatlled audacity and it plays BeBeep wave as expected
As this affecte media player aned system sounds but does not affect with other players, I am unsure what component is responsible.
Attachments (2)
Change History (12)
follow-ups: 2 3 comment:1 by , 9 months ago
Version: | R1/beta4 → R1/Development |
---|
comment:2 by , 9 months ago
comment:3 by , 9 months ago
This looks like ffmpeg6 may be the problem.
media_addon_server, which links to the ffmpeg library pegs a CPU at 100%.
comment:4 by , 9 months ago
Component: | - General → Audio & Video/Codecs |
---|---|
Owner: | changed from | to
Can't check till the weekend, but we may need to return AVERROR_EOF on EOF instead of just "0 bytes read" in StreamBase::_Read for ffmpeg6.
From the doc for avio_alloc_context, the read function 'For stream protocols, must never return 0 but rather a proper AVERROR code.' It seems 0 was temporarily allowed for libavformat < 59.
comment:5 by , 9 months ago
I tried a few .wav files here, MediaPlayer doesn't freeze for me. Is it only with specific files?
by , 9 months ago
Attachment: | BeBeep.wav added |
---|
by , 9 months ago
Attachment: | BeStartup.wav added |
---|
comment:7 by , 9 months ago
Also happens with longer ones, and with flac files, the media extractor thread pegs one CPU. Starting MediaPlayer with a flac file with cover art wouldn't even show its window.
Enabling traces shows a never ending loop of:
StreamBase::_Read(0x10c0ba775760, 0x10c0ba810960, 32768) position: 138899 read: 0
follow-up: 10 comment:8 by , 9 months ago
Merged in hrev57699.
Does it also fix the 100% CPU use on files with cover art? (there are various tickets about this I think)
comment:9 by , 9 months ago
Milestone: | Unscheduled → R1/beta5 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
comment:10 by , 9 months ago
Replying to pulkomandy:
Does it also fix the 100% CPU use on files with cover art? (there are various tickets about this I think)
You may be thinking of old issues you fixed, like #13622. We still get a black image. But now that you've mentioned it, I've tried removing the check in AVFormatReader. Both that and returning 1.0 make the audio unseekable and unstoppable, which I guess will continue to be so until MediaPlayer changes its way to calculate position.
Last know working hrev? Thanks.