Bug 2066893

Summary: When playing some avi files, it uses the wrong audio format, leading to video lockup in mplayer
Product: [Fedora] Fedora Reporter: stan <gryt2>
Component: mpg123Assignee: Wim Taymans <wtaymans>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gryt2, negativo17, philip.wyett, wtaymans
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-03-22 17:19:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description stan 2022-03-22 17:09:06 UTC
Description of problem:
I compile a local version of mplayer from the subversion repositories.  It pulls in mpg123 as a configuration option.  When I play some avi videos (most of those I have), it misinterprets the audio encoding.  It still works, unless I move around in the video using the arrow keys.  Then it plays a few seconds of audio, and the video locks.  It has no problems playing mp4, webm, mkv videos.

When I use the system mplayer from the fedora repositories, it plays the problematic videos without issue.  However, I think that version of mplayer is not compiled with mpg123 support enabled, because it uses ffmpeg instead of mpg123.


Version-Release number of selected component (if applicable):
Name        : mpg123
Version     : 1.29.3
Release     : 1.fc37
Architecture: x86_64

How reproducible:
On a problematic video, every time.

Steps to Reproduce:
1.  Compile mplayer with mpg123 enabled
2.  Try to play a problematic avi file
3.

Actual results:
Video plays until moving within the video.  After that, it plays a few seconds of the movie, and then locks up.
Audio is misinterpreted.
[lavf] stream 1: audio (mp3float), -aid 0
AUDIO: 48000 Hz, 2 ch, s16le, 32.0 kbit/2.08% (ratio: 4000->192000)


Expected results:
Video plays correctly, with full functionality.
Audio is interpreted correctly.
[lavf] stream 1: audio (mp3float), -aid 0
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
libavcodec version 59.18.100 (external)
AUDIO: 48000 Hz, 1 ch, floatle, 62.6 kbit/4.08% (ratio: 7824->192000)

Additional info:
Here is the output with mplayer using mpg123
$ mplayer -novideo Walter_Futter_Africa_Speaks_1930.avi
MPlayer SVN-r38359-12 (C) 2000-2022 MPlayer Team
do_connect: could not connect to socket
connect: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing Walter_Futter_Africa_Speaks_1930.avi.
libavformat version 59.18.101 (internal)
-novideo not supported by native AVI demuxer, selecting libavformat
libavformat file format detected.
[lavf] stream 0: video (mpeg4), -vid 0
[lavf] stream 1: audio (mp3float), -aid 0
Load subtitles in ./
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 32.0 kbit/2.08% (ratio: 4000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or directory
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
A:   0.0 (00.0) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.1 (00.1) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.3 (00.2) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.4 (00.3) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.5 (00.4) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.6 (00.6) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.7 (00.7) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   0.8 (00.8) of 3001.6 (50:01.6)  0.3% 
Audio device got stuck!
A:   1.0 (00.9) of 3001.6 (50:01.6)  0.3% 


MPlayer interrupted by signal 2 in module: play_audio
Audio device got stuck!
A:   1.0 (01.0) of 3001.6 (50:01.6)  0.3% 

Exiting... (Quit)

Here is the output with mplayer using ffmpeg

$ /usr/bin/mplayer -novideo Walter_Futter_Africa_Speaks_1930.avi
MPlayer 1.5-12 (C) 2000-2022 MPlayer Team
do_connect: could not connect to socket
connect: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing Walter_Futter_Africa_Speaks_1930.avi.
libavformat version 59.16.100 (external)
-novideo not supported by native AVI demuxer, selecting libavformat
libavformat file format detected.
[lavf] stream 0: video (mpeg4), -vid 0
[lavf] stream 1: audio (mp3float), -aid 0
Load subtitles in ./
==========================================================================
Requested audio codec family [mpg123] (afm=mpg123) not available.
Enable it at compilation.
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
libavcodec version 59.18.100 (external)
AUDIO: 48000 Hz, 1 ch, floatle, 62.6 kbit/4.08% (ratio: 7824->192000)
Selected audio codec: [ffmp3float] afm: ffmpeg (FFmpeg MPEG layer-3 audio)
==========================================================================
AO: [pulse] 48000Hz 1ch floatle (4 bytes per sample)
Video: no video
Position: 0 %
A:   5.3 (05.3) of 3001.6 (50:01.6)  0.1%                                                                                                                                                                         

Exiting... (Quit)

Comment 1 Phil Wyett 2022-03-22 17:19:20 UTC
This is a subversion version of a package that is not in fedora. Please report any issues to the relevant upstream project.

Comment 2 stan 2022-03-22 17:24:55 UTC
This system is up to date and uses wireplumber and pipewire for audio.

Comment 3 stan 2022-03-22 17:29:22 UTC
This isn't an issue with mplayer.  It is an issue with mpg123, which *is* a fedora package.  I can compile the local version to use ffmpeg instead of mpg123, but that is just ignoring the issue with mpg123.  I just wanted to bring it to your attention.  Anyway, if you won't fix, you won't fix, and I have a workaround.  Thanks for the fast response.