Homebrew / homebrew-core

🍻 Default formulae for the missing package manager for macOS (or Linux)
https://brew.sh
BSD 2-Clause "Simplified" License
13.6k stars 12.35k forks source link

[mplayer] Add support for codec libaom-av1 in libavcodec #128496

Closed superbonaci closed 1 year ago

superbonaci commented 1 year ago

brew gist-logs <formula> link OR brew config AND brew doctor output

brew config
HOMEBREW_VERSION: 4.0.13
ORIGIN: https://github.com/Homebrew/brew
HEAD: 9b60fcf7ac3f82fa589a64091376d0663262f8c6
Last commit: 3 days ago
Core tap origin: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 13fbfcc990a848deecc6dfbbc08561634f2e8c0c
Core tap last commit: 7 weeks ago
Core tap branch: master
Core tap JSON: 16 Apr 01:46 UTC
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: ["--no-quarantine"]
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.10 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 14.0.3 build 1403
Git: 2.40.0 => /opt/homebrew/bin/git
Curl: 7.87.0 => /usr/bin/curl
macOS: 13.3.1-arm64
CLT: 14.3.0.0.1.1679647830
Xcode: N/A
Rosetta 2: false

Verification

What were you trying to do (and why)?

Reproduce avif file

What happened (include all command output)?

You can create a sample avif from a gif with the command provided in this page: https://github.com/xiph/rav1e/issues/356

And use this provided gif:

animation-woods

ffmpeg -i animation-woods.gif -pix_fmt yuv420p -r 12 -vf scale=640x480 -f yuv4mpegpipe - | rav1e - -o - --quantizer 20 --speed=10 > animation-woods.avif

mplayer log:

mplayer animation-woods.avif
MPlayer 1.5-14.0.0 (C) 2000-2022 MPlayer Team
Can't init Apple Remote.

Playing clip.avif.
libavformat version 59.17.102 (internal)
libavformat file format detected.
[av1 @ 0x102dd6b28]Your platform doesn't suppport hardware accelerated AV1 decoding.
[av1 @ 0x102dd6b28]Failed to get pixel format.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1_frame_split @ 0x102db0088]zero_bit out of range: 1, but must be in [0,0].
[av1_frame_split @ 0x102db0088]Failed to read unit 2 (type 6).
[av1_frame_split @ 0x102db0088]Failed to parse temporal unit.
[av1 @ 0x102dd6b28]zero_bit out of range: 1, but must be in [0,0].
[av1 @ 0x102dd6b28]Failed to read unit 2 (type 6).
[av1 @ 0x102dd6b28]Failed to read packet.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1_frame_split @ 0x102db0088]zero_bit out of range: 1, but must be in [0,0].
[av1_frame_split @ 0x102db0088]Failed to read unit 2 (type 6).
[av1_frame_split @ 0x102db0088]Failed to parse temporal unit.
[av1 @ 0x102dd6b28]zero_bit out of range: 1, but must be in [0,0].
[av1 @ 0x102dd6b28]Failed to read unit 2 (type 6).
[av1 @ 0x102dd6b28]Failed to read packet.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[av1 @ 0x102dd6b28]Missing Sequence Header.
[ivf @ 0x102d93e40]Could not find codec parameters for stream 0 (Video: av1 (Main) (AV01 / 0x31305641), none(tv), 640x480 [SAR 1:1 DAR 4:3]): unspecified pixel format
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options
[lavf] stream 0: video (av1), -vid 0
VIDEO:  [AV01]  640x480  0bpp  12.000 fps    0.0 kbps ( 0.0 kbyte/s)
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 59.21.100 (internal)
Cannot find codec 'libdav1d' in libavcodec...
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Cannot find codec 'libaom-av1' in libavcodec...
VDecoder init failed :(
Cannot find codec matching selected -vo and video format 0x31305641.
==========================================================================
No stream found.

Exiting... (End of file)

What did you expect to happen?

Reproduce

Step-by-step reproduction instructions (by running brew commands)

brew install mplayer
carlocab commented 1 year ago

libavcodec in the ffmpeg formula should have aom support. Mplayer needs to be fixed to use our ffmpeg instead of building its own.

We'll review a pull request for this.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

superbonaci commented 1 year ago

Should I reopen this issue or open a new one?

carlocab commented 1 year ago

Neither. Please open a pull request that does this instead:

Mplayer needs to be fixed to use our ffmpeg instead of building its own.

superbonaci commented 1 year ago

Neither. Please open a pull request that does this instead:

Mplayer needs to be fixed to use our ffmpeg instead of building its own.

Do you mean that I submit the patch code?