https://github.com/rinsuki/HWAcceleratedVP9Player
Hardware Accelerated VP9 Player in macOS 11.0 Big Sur beta 4+
https://github.com/rinsuki/HWAcceleratedVP9Player
macos-big-sur vp9
Last synced: 5 months ago
JSON representation
Hardware Accelerated VP9 Player in macOS 11.0 Big Sur beta 4+
- Host: GitHub
- URL: https://github.com/rinsuki/HWAcceleratedVP9Player
- Owner: rinsuki
- License: mit
- Created: 2020-08-05T10:48:40.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2020-08-05T10:59:26.000Z (over 4 years ago)
- Last Synced: 2024-11-25T00:24:51.631Z (5 months ago)
- Topics: macos-big-sur, vp9
- Language: Swift
- Homepage:
- Size: 15.6 KB
- Stars: 8
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-video - rinsuki/HWAcceleratedVP9Player - Hardware Accelerated VP9 Player in macOS 11.0 Big Sur beta 4+ - rinsuki/HWAcceleratedVP9Player (Video Players & Playback Libraries / Desktop Players)
README
# HWAcceleratedVP9Player
macOS 11.0 Big Sur beta 4 から VP9 のHW支援でのデコードに対応したのを利用し、VP9 入り MP4 のファイルを再生するデモです。
## How to build
git clone して HWAcceleratedVP9Player.xcodeproj を開きビルドしてください。
Team や Signing Certificate を変更する必要があるかもしれません。## VP9 入り MP4 の作り方
通常通りに VP9 が入った WebM ファイルを用意し、 `ffmpeg -i vp9.webm -codec copy vp9.mp4` で作成できます。
ただし、現段階でOpusには対応していないようなので、`-acodec aac`などで音声を変換する必要があるかもしれません。
## How it works
VP9 のハードウェアデコーダは macOS 11.0 beta 4 から追加された [`VTRegisterSupplementalVideoDecoderIfAvailable(_:)`](https://developer.apple.com/documentation/videotoolbox/3666591-vtregistersupplementalvideodecod?changes=latest_beta) API に 0x7670303 (FourCode で vp09) を渡すと有効化できます。
このAPIを呼んで有効化した後に AVPlayer などに VP9 入り MP4 を読ませると普通に再生してくれます (ただし HW 支援がないと失敗するかも)。
詳しい呼び方は WebKit のこのへん https://trac.webkit.org/log/webkit/trunk/Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm を見るとよいでしょう。
(GitHub の webkit/webkit にはまだ同期されてないようなので注意。 qtwebkit/webkit-mirror とか見るといいかも)