Commit Graph

1647 Commits

Author SHA1 Message Date
gnattu
16c55918a6
avfilter/tonemap_cl: fix code style
Co-authored-by: Nyanmisaka <nst799610810@gmail.com>
2024-08-10 16:02:27 +08:00
gnattu
c07f5f5c5a avfilter/tonemap*: add ICtCp based tonemap method
This adds ICtCp based tonemap to OpenCL, Metal and CUDA based
tonemap filters, and will use the mode as the new default. On GPUs
with lower specs, OpenCL and CUDA implementation will default to
relative luminance mode. The Metal implementation does not have a
performance tradeoff mode and will always default to ICtCp mode.

This also fixed attachment related issue on Metal when output is
10bit by always setting the attachement values.
2024-08-08 12:16:41 +08:00
Nyanmisaka
c9dd753f20
Merge pull request #424 from nyanmisaka/next-7.0
New upstream version 7.0.2
2024-08-07 20:15:49 +08:00
gnattu
2d563d4ec9
Merge pull request #428 from jellyfin/renovate/ci-deps
chore(deps): update actions/upload-artifact action to v4.3.6
2024-08-07 02:20:33 +08:00
renovate[bot]
5178f5cc71
chore(deps): update actions/upload-artifact action to v4.3.6 2024-08-06 15:50:22 +00:00
nyanmisaka
fd4ee913fd Bump version to 7.0.2-1
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-08-04 01:20:29 +08:00
nyanmisaka
608fc13cee Update build scripts and dependencies
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-08-04 01:20:28 +08:00
nyanmisaka
69a9c336cf Update patches for 7.0.2
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-08-04 01:20:23 +08:00
gnattu
1f32785a3f
Merge pull request #426 from jellyfin/renovate/msys2-setup-msys2-digest
chore(deps): update msys2/setup-msys2 digest to ddf331a
2024-08-03 23:19:44 +08:00
renovate[bot]
a60359a512
chore(deps): update msys2/setup-msys2 digest to ddf331a 2024-08-03 13:27:13 +00:00
nyanmisaka
8b6e13f596 New upstream version 7.0.2
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-08-03 18:31:39 +08:00
nyanmisaka
bc8d6d51bf Fix .gitattributes
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-08-03 18:29:32 +08:00
gnattu
b6617cf6ef
Merge pull request #425 from jellyfin/renovate/ci-deps
chore(deps): update actions/upload-artifact action to v4.3.5
2024-08-03 02:40:42 +08:00
renovate[bot]
0da193423d
chore(deps): update actions/upload-artifact action to v4.3.5 2024-08-02 16:36:44 +00:00
gnattu
9691809e8a
Merge pull request #423 from jellyfin/renovate/msys2-setup-msys2-digest
chore(deps): update msys2/setup-msys2 digest to 5df0ca6
2024-07-28 00:26:42 +08:00
renovate[bot]
de41ee240d
chore(deps): update msys2/setup-msys2 digest to 5df0ca6 2024-07-27 15:09:57 +00:00
Nyanmisaka
02b8f47e4e
Merge pull request #422 from nyanmisaka/enable-libxml2-in-deb
Enable libxml2 in deb builds
2024-07-25 19:55:04 +08:00
nyanmisaka
d7086088bf Enable libxml2 in deb builds
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-25 18:54:33 +08:00
Nyanmisaka
0f74609b6d
Merge pull request #421 from nyanmisaka/fix-exec-perm
Fix execution permissions of some scripts
2024-07-25 13:50:42 +08:00
nyanmisaka
35203b6e05 Fix execution permissions of some scripts
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-25 12:43:04 +08:00
Nyanmisaka
3924a88240
Merge pull request #419 from nyanmisaka/next
Bump version to 6.0.1-8
2024-07-25 00:23:39 +08:00
nyanmisaka
4b6c125d00 Bump version to 6.0.1-8
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-24 22:34:11 +08:00
nyanmisaka
12e2533c0b Update build scripts and dependencies
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-24 22:34:11 +08:00
nyanmisaka
a1e65da106 Sync fixes from ffmpeg-rockchip
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-24 22:34:11 +08:00
nyanmisaka
9c5dd13e4f Fix some warnings-as-errors
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
2024-07-24 22:34:11 +08:00
Nyanmisaka
b1b8c3e923
Merge pull request #418 from jellyfin/add-relative-luminance-tonemap
avfilter: add relative luminance mode to tonemap_opencl and tonemap_cuda
2024-07-24 22:12:46 +08:00
Brett Jia
ffb38428e1
linuxarm64: enable rkmpp and rkrga for portable builds (#403) 2024-07-24 20:24:42 +08:00
gnattu
11e222c71e avfilter/tonemap_cl: add doc for relative luminance 2024-07-24 20:24:14 +08:00
gnattu
22bb706288 avfilter: add doc for relative luminance tonemaping 2024-07-24 20:08:49 +08:00
gnattu
2c7b718723 avfilter/tonemap_hw: use rec2020 primaries for lum 2024-07-24 20:01:28 +08:00
gnattu
07f6528af2 avfilter/tonemap_cl: use better indent 2024-07-24 19:53:26 +08:00
gnattu
0c6cd3b933 avfilter: add relative luminance mode to tonemap_opencl and tonemap_cuda 2024-07-24 19:48:04 +08:00
gnattu
e108294404
Merge pull request #416 from jellyfin/hdr-vt-tonemap
avfilter/tonemap_videotoolbox: improve quality
2024-07-24 18:02:45 +08:00
gnattu
f2c36b8303
ci: set .git
Co-authored-by: Nyanmisaka <nst799610810@gmail.com>
2024-07-24 17:28:43 +08:00
gnattu
93df96e12e ci: move xz back to github 2024-07-24 03:21:43 +08:00
gnattu
8ee6565a95 avfilter/tonemap_videotoolbox: fix spaces 2024-07-24 03:04:26 +08:00
gnattu
b46e674739 ci: bump xz to 5.6.2 2024-07-23 23:10:45 +08:00
gnattu
a0053a3d79 avfilter/tonemap_videotoolbox: add help text for tonemap modes 2024-07-23 22:30:55 +08:00
gnattu
38e785054e avfilter/tonemap_videotoolbox: use rec2020 color primaries for relaive luminance 2024-07-23 19:03:37 +08:00
gnattu
3edaea9709 avfilter/tonemap_videotoolbox: fix MAX mode check 2024-07-23 19:03:37 +08:00
gnattu
a5932ebc87 chore: drop irrelevant path 2024-07-23 19:03:37 +08:00
gnattu
7d42f31aac avfilter/tonemap-videotoolbox: add relative luminance mode 2024-07-23 19:03:37 +08:00
gnattu
51f6e85e0b avfilter/tonemap-videotoolbox: properly set hdr attachements 2024-07-23 19:03:37 +08:00
gnattu
d37d7386e6 avfilter/tonemapx: add simd optimized tonemapx
This includes NEON for ARMv8, SSE for x86-64-v2 and AVX+FMA for x86-64-v3

Test result with 4K HEVC 10bit HLG input, encoding with libx264 veryfast using bt2390:

Intel Core i9-12900:

tonemapx.c: 57fps
tonemapx.sse: 74fps
tonemapx.avx: 77fps

Apple M1 Max:

tonemapx.c:43fps
tonemapx.neon: 57fps

For comparison, original zscale+tonemap simd results:

Intel Core i9-12900:

tonemap.avx: 40fps
tonemap.sse: 40fps
tonemap.c: 32fps

Apple M1 Max:

tonemap.neon: 44fps
tonemap.c: 35fps

The original implementation is too memory heavy that dual-channel
desktop CPUs are easily memory bounded due to the intermediate
RGBF32 framebuffer sharing with zscale. Tonemapx lowered the the
bandwidth requirement which brings significant performance gain
to bandwidth limited platforms. Even for bandwidth-rich M1 Max
it still provides significant performance boost due to better cache
hitrate.
2024-07-23 19:03:37 +08:00
gnattu
443d842d1e
Merge pull request #417 from jellyfin/renovate/pin-dependencies
chore(deps): pin msys2/setup-msys2 action to d0e80f5
2024-07-16 20:21:30 +08:00
renovate[bot]
01994cea52
chore(deps): pin msys2/setup-msys2 action to d0e80f5 2024-07-16 12:20:01 +00:00
gnattu
27d2232727
Merge pull request #412 from jellyfin/win64-clang
ci: Add Windows Clang builder
2024-07-16 20:18:56 +08:00
gnattu
9553f9b76b
Merge pull request #387 from jellyfin/test-add-ac4
avcodec: add ac-4 decoder
2024-07-16 20:18:36 +08:00
gnattu
4942fc43ae chore: rebase 2024-07-16 16:56:54 +08:00
gnattu
87d77ecdc9 avcodec/ac4dec: properly expose sample rate
The AC-4 Audio will have a weird sample rate and we will need to
resample it
2024-07-16 16:56:18 +08:00