|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
2025-03-15 09:44:51
|
libjxl doesn't seem to, for 30 image sequences it currently needs 4 seconds (`-m 0 -e 1 -brotli_effort 0`, lossy VarDCT)
|
|
2025-03-15 09:45:23
|
cwebp takes 1 or 2 seconds (`-m 0`, lossy)
|
|
|
Quackdoc
jxl should be able to do that, I dunno if libjxl currently can, perhaps fjxl can
|
|
2025-03-15 09:57:33
|
is there an example on using fjxl?
|
|
|
jonnyawsom3
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
is there an example on using fjxl?
|
|
2025-03-15 10:10:37
|
The fjxl codepath activates at effort 1 lossless. IIRC fast lossy is essentially just jpegli
|
|
|
Quackdoc
define low latency
|
|
2025-03-15 10:21:55
|
Also define high quality and size reduction. What resolution? Reduction compared to what?
|
|
|
Quackdoc
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
libjxl doesn't seem to, for 30 image sequences it currently needs 4 seconds (`-m 0 -e 1 -brotli_effort 0`, lossy VarDCT)
|
|
2025-03-15 10:26:57
|
what are you feeding it?
|
|
|
jonnyawsom3
|
2025-03-15 10:28:24
|
Also use the MP/s, not time measurements. Input decoding isn't the fastest with cjxl
|
|
|
Quackdoc
|
2025-03-15 10:30:57
|
A quick test on my laptop is 15fps on ffmpeg but afaik ffmpeg does not make use of frame parallel encoding
|
|
2025-03-15 10:31:44
|
17-20fps with -xyb 0
|
|
2025-03-15 10:32:21
|
not the fastest thing, but way faster then 4 seconds
|
|
|
RaveSteel
|
2025-03-15 10:35:44
|
I get ~45fps for 1080p at d1
|
|
2025-03-15 10:35:59
|
Could be usable
|
|
|
Quackdoc
|
2025-03-15 10:38:05
|
when you do frame parallel encoding you gain a lot of speed
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
Also define high quality and size reduction. What resolution? Reduction compared to what?
|
|
2025-03-15 10:44:59
|
SSIMU2, less than 50% from the original bitstream
|
|
|
Quackdoc
what are you feeding it?
|
|
2025-03-15 10:46:09
|
PNGs, but I now think it's a bad idea...
|
|
|
Quackdoc
|
2025-03-15 10:47:20
|
png with cjxl is slow
|
|
|
RaveSteel
|
2025-03-15 10:47:26
|
what is your intended use case?
|
|
|
Quackdoc
|
2025-03-15 10:50:57
|
for context
```
โ Pictures hyperfine --runs 15 'cjxl -d 1 -e 1 --disable_output output.png.pfm'
Benchmark 1: cjxl -d 1 -e 1 --disable_output output.png.pfm
Time (mean ยฑ ฯ): 85.0 ms ยฑ 2.1 ms [User: 120.8 ms, System: 42.7 ms]
Range (min โฆ max): 81.7 ms โฆ 89.6 ms 15 runs
```
|
|
2025-03-15 10:51:05
|
after converting to a pfm using magick
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
RaveSteel
what is your intended use case?
|
|
2025-03-15 10:59:24
|
remote viewing/access or virtual machine control
|
|
2025-03-15 10:59:44
|
VNC sucks, SPICE consumes too much bandwidth
|
|
2025-03-15 10:59:50
|
none supported HDR
|
|
|
CrushedAsian255
|
|
Quackdoc
for context
```
โ Pictures hyperfine --runs 15 'cjxl -d 1 -e 1 --disable_output output.png.pfm'
Benchmark 1: cjxl -d 1 -e 1 --disable_output output.png.pfm
Time (mean ยฑ ฯ): 85.0 ms ยฑ 2.1 ms [User: 120.8 ms, System: 42.7 ms]
Range (min โฆ max): 81.7 ms โฆ 89.6 ms 15 runs
```
|
|
2025-03-16 12:39:36
|
What is hyper fine
|
|
|
A homosapien
|
|
CrushedAsian255
What is hyper fine
|
|
2025-03-16 12:47:37
|
https://github.com/sharkdp/hyperfine
|
|
|
Meow
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
is there an image codec that's low latency with high quality that's not JPEG XS? as long as there is size reduction
|
|
2025-03-16 01:50:29
|
QOI?
|
|
|
RaveSteel
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
remote viewing/access or virtual machine control
|
|
2025-03-16 01:55:45
|
If you have reasonably fast hardware can you try ffmpeg encoding? I got over 30fps easily, but I have top hardware
|
|
|
BlueSwordM
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
libjxl doesn't seem to, for 30 image sequences it currently needs 4 seconds (`-m 0 -e 1 -brotli_effort 0`, lossy VarDCT)
|
|
2025-03-16 01:59:04
|
Why not use a video codec for this?
|
|
|
Quackdoc
|
|
BlueSwordM
Why not use a video codec for this?
|
|
2025-03-16 05:01:10
|
well, if all intra is necessary, then an image codec is typically superior
|
|
|
_wb_
|
2025-03-16 07:10:39
|
HTJ2K and JPEG XS are both aiming at fast all-intra
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
BlueSwordM
Why not use a video codec for this?
|
|
2025-03-16 07:17:15
|
because near-uncompressed quality is *required*
|
|
|
BlueSwordM
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
because near-uncompressed quality is *required*
|
|
2025-03-16 07:18:37
|
Increase the bitrate further and use 4:4:4 full-range ๐
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
_wb_
HTJ2K and JPEG XS are both aiming at fast all-intra
|
|
2025-03-16 07:20:17
|
first time hearing about HTJ2K, only knew about regular J2K prior
|
|
|
BlueSwordM
Increase the bitrate further and use 4:4:4 full-range ๐
|
|
2025-03-16 07:25:04
|
any video codec that has an encoding and decoding latency below 20ms?
|
|
|
_wb_
|
2025-03-16 07:35:17
|
JPEG XS has a latency expressed in _rows_, if ultra low latency is what you need, it can do 4 row latency which at 30 fps full HD boils down to 4/1080/30 seconds = 0.123 ms
|
|
|
jonnyawsom3
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
because near-uncompressed quality is *required*
|
|
2025-03-16 07:35:18
|
So, would effort 1 lossless work? (May need a clang build https://discord.com/channels/794206087879852103/803645746661425173/1348861631836323871)
|
|
|
_wb_
|
2025-03-16 07:36:20
|
At least for a hardware implementation where the additional latency due to coding itself is negligible
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
_wb_
JPEG XS has a latency expressed in _rows_, if ultra low latency is what you need, it can do 4 row latency which at 30 fps full HD boils down to 4/1080/30 seconds = 0.123 ms
|
|
2025-03-16 07:37:34
|
~~iirc JPEG XS has patent requirements, that's why I'm looking for alternatives~~
|
|
|
So, would effort 1 lossless work? (May need a clang build https://discord.com/channels/794206087879852103/803645746661425173/1348861631836323871)
|
|
2025-03-16 07:38:02
|
time to find out at the next opportunity!
|
|
|
_wb_
|
2025-03-16 07:38:27
|
Libjxl E1 lossless should be able to reach about 500 Mpx/s easily on a typical CPU, so about 250 fps for full HD.
|
|
2025-03-16 07:38:52
|
Main problem with it will be that decoding is actually slower
|
|
|
jonnyawsom3
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
time to find out at the next opportunity!
|
|
2025-03-16 07:39:08
|
I was seeing 6ms encode time at 1080p with the exe uploaded just above the link
|
|
2025-03-16 07:39:23
|
On an 8 year old Ryzen 1700
|
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
|
|
_wb_
Main problem with it will be that decoding is actually slower
|
|
2025-03-16 07:39:57
|
~~next up: low-latency JPEG XL~~
|
|
|
I was seeing 6ms encode time at 1080p with the exe uploaded just above the link
|
|
2025-03-16 07:40:17
|
that's actually quite impressive...
|
|
|
jonnyawsom3
|
|
_wb_
Main problem with it will be that decoding is actually slower
|
|
2025-03-16 07:40:35
|
Slower than encode, but still twice as fast as PNG
|
|
|
_wb_
|
2025-03-16 07:41:10
|
Probably with more specialization we could get E1 decode quite a bit faster than it is now, but still a little slower than encode
|
|
2025-03-16 07:43:05
|
The funny thing is that at the super high speeds, encode is inherently easier to SIMDify since it already knows all pixels while the decoder only knows them after decoding.
|
|
|
jonnyawsom3
|
|
๐๐ฆ๐๐ฃ๐ธ๐ฅ๐ฉ๐ฏ๐ฆ | ๆไธ่ชฟๅใฎไผๆญ่
| ็ฐ่ญฐใฎๅ
็ด
~~next up: low-latency JPEG XL~~
|
|
2025-03-16 07:44:21
|
It's a shame --faster_decoding is bugged/has negligible impact. It should really use the fixed MA trees of e1 and e2 at least, then with further options like g0
|
|
2025-03-16 07:45:44
|
It seems to just disable the MA tree and predictors entirely at 1 and 2
https://github.com/libjxl/libjxl/issues/3532
|
|
|
juliobbv
|
|
_wb_
The funny thing is that at the super high speeds, encode is inherently easier to SIMDify since it already knows all pixels while the decoder only knows them after decoding.
|
|
2025-03-16 07:54:33
|
does JXL have the concept of restart markers? I wonder if you could speed up decoding by processing each group of blocks in parallel
|
|
|
_wb_
|
2025-03-16 07:56:20
|
It does tiling in groups already so you can do MT decode
|
|
|
juliobbv
|
2025-03-16 07:57:54
|
aah I got you
|
|
2025-03-16 07:58:37
|
how small can those tile groups get? like for JPEG-like encoding effort scenarios
|
|
|
jonnyawsom3
|
2025-03-16 08:00:04
|
128x128
|
|
2025-03-16 08:00:21
|
At least for modular
|
|
2025-03-16 08:01:39
|
128x128, 256x256, 512x512 and 1024x1024 for lossless. VarDCT can do classic JPEG
|
|
|
juliobbv
|
2025-03-16 08:04:38
|
IIUC lossless JPEG recompression works by rearranging coefs so they fit VarDCT tile groups, by breaking some DC prediction dependencies, am I right?
|
|
2025-03-16 08:05:23
|
anyway, sounds like 128x128 is still small enough for reasonable parallelism in practice
|
|
|
_wb_
|
2025-03-16 08:28:25
|
JPEG is basically just a special case of VarDCT where all blocks happen to be DCT8x8 and the adaptive quantization weights are constant. Like with all VarDCT, for the DC there is a modular subbitstream for 256x256 groups of DC coefficients (this corresponds to regions covering 2048x2048 pixels). At the boundaries of those groups there is poor prediction to avoid data dependencies between groups, but overall the DC prediction in jxl will be a lot better than what you have in JPEG...
|
|
2025-03-16 08:29:08
|
VarDCT has a fixed group size of 256x256 for both DC and AC.
|
|
|
juliobbv
|
2025-03-16 09:19:32
|
thanks for the explanation, <@794205442175402004>!
|
|
|
|
JKUser4592
|
2025-03-16 11:33:30
|
Anyone heard of AVCI and AVCS files?
|
|
|
_wb_
|
2025-03-16 01:06:52
|
AVCI is h264 in a HEIF container iirc
|
|
2025-03-16 01:07:15
|
And I would guess AVCS is the same but animated (sequence)
|
|
|
|
JKUser4592
|
2025-03-16 05:15:45
|
How do I remux AVC/H.264 videos to AVCI/ACVS files?
|
|
|
_wb_
|
2025-03-16 06:21:06
|
Maybe libheif has a way to do that? I dunno, never tried...
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-03-16 06:52:59
|
> The I in AVCI is for Intra-frame encoding [...] as opposed to Inter-frame encoding
totally makes sense <:kekw:808717074305122316>
|
|
|
Demiurge
|
2025-03-16 06:53:55
|
jpeg xs software is free for "evaluation" whatever that means, they don't elaborate. Presumably they don't give permission to use it in a commercial product.
|
|
2025-03-16 06:54:28
|
But they don't elaborate what they mean by "evaluation" so maybe I'm wrong to presume that.
|
|
2025-03-16 06:55:51
|
Also it looks like the intended use is hardware, not software. Like in camera sensors and cars and whatever.
|
|
2025-03-16 06:56:46
|
As a replacement for uncompressed video
|
|
|
BlueSwordM
|
|
JKUser4592
How do I remux AVC/H.264 videos to AVCI/ACVS files?
|
|
2025-03-16 07:21:54
|
You can't remux normal AVC videos to AVC**I**.
I = All-intra.
Normal videos are not all-intra.
|
|
|
|
JKUser4592
|
|
BlueSwordM
You can't remux normal AVC videos to AVC**I**.
I = All-intra.
Normal videos are not all-intra.
|
|
2025-03-16 07:25:47
|
What about this, then?
https://en.wikipedia.org/wiki/High_E...I:_AVC_in_HEIF
|
|
|
_wb_
|
2025-03-16 07:25:55
|
JXS does have patents from Fraunhofer and Intopix, it's mainly meant to be used in video production hardware.
|
|
|
BlueSwordM
|
|
JKUser4592
What about this, then?
https://en.wikipedia.org/wiki/High_E...I:_AVC_in_HEIF
|
|
2025-03-16 07:27:04
|
Oh, there's nothing preventing you from shoving normal video into an HEIF container.
Same thing with AVIF: you can have pictures, all-intra and normal video.
|
|
|
_wb_
|
2025-03-16 07:27:19
|
Presumably if you want to use interframe you have to call it AVCS. Likely software implementations will not care if the brand name is correct.
|
|
|
Quackdoc
|
2025-03-16 08:26:46
|
I wouldnt be so sure, ff used to poop itself with avif if you used the wrong brand
|
|
2025-03-16 08:26:52
|
no idea if it still does
|
|
|
Cacodemon345
|
2025-03-16 09:01:51
|
JXS is super pointless.
|
|
|
_wb_
|
2025-03-16 09:02:23
|
I wouldn't say pointless, it's just a pretty specific niche thing
|
|
|
Cacodemon345
|
2025-03-16 09:02:25
|
Internet sites do just fine with video codec streaming.
|
|
|
_wb_
|
2025-03-16 09:03:05
|
JXS targets way higher quality and bitrate than internet video streaming
|
|
2025-03-16 09:03:22
|
It is meant for production, not delivery
|
|
|
|
JKUser4592
|
|
BlueSwordM
Oh, there's nothing preventing you from shoving normal video into an HEIF container.
Same thing with AVIF: you can have pictures, all-intra and normal video.
|
|
2025-03-16 10:27:16
|
How do I do that?
|
|
|
novomesk
|
|
_wb_
Maybe libheif has a way to do that? I dunno, never tried...
|
|
2025-03-16 10:44:21
|
MP4Box
|
|
|
CrushedAsian255
|
|
Cacodemon345
Internet sites do just fine with video codec streaming.
|
|
2025-03-16 11:01:37
|
JXS should be treated more as a way to reduce bandwidth when sending uncompressed video. Think of it as more like ADPCM than something like Opus
|
|
|
Meow
|
|
novomesk
QOI works on Telegram Desktop too.
|
|
2025-03-17 02:31:20
|
Confirmed. QOI can be uploaded as a lossy compressed image or original file
|
|
|
|
JKUser4592
|
|
novomesk
MP4Box
|
|
2025-03-17 01:49:36
|
How would that work?
|
|
|
RaveSteel
|
|
JKUser4592
How would that work?
|
|
2025-03-17 02:00:01
|
https://manpages.org/mp4box
|
|
|
|
JKUser4592
|
|
RaveSteel
https://manpages.org/mp4box
|
|
2025-03-17 02:57:53
|
I don't get it
|
|
|
novomesk
|
2025-03-17 06:18:22
|
Conversion from PNG to AVCI (example):
ffmpeg -i IMG_4086.png -an -vframes 1 -vf format=yuv420p -preset veryslow IMG_4086.h264
MP4Box -add-image IMG_4086.h264:id=1:primary -ab avci -ab miaf -ab MiAB -ab mif1 -brand avci -new IMG_4086.avci
|
|
|
Meow
|
2025-03-19 01:11:49
|
https://forums.macrumors.com/threads/turn-any-macos-folder-into-an-image-converter-heres-how.2453484/
|
|
2025-03-19 01:12:23
|
> can it handle webp into png/jpgs?
> I do it all the time to convert those stupid and annoying webp files into jpgs. What a stupid and annoying format. /rant over.
|
|
2025-03-19 05:19:44
|
A simplified "Dynamic Wallpaper" .heic that just contains 2 images for Light and Dark modes. I can't get the ones based on sun and time to correctly switch however
SSIMULACRA2 85.85117936 for the "Light" image
|
|
|
|
JKUser4592
|
|
novomesk
Conversion from PNG to AVCI (example):
ffmpeg -i IMG_4086.png -an -vframes 1 -vf format=yuv420p -preset veryslow IMG_4086.h264
MP4Box -add-image IMG_4086.h264:id=1:primary -ab avci -ab miaf -ab MiAB -ab mif1 -brand avci -new IMG_4086.avci
|
|
2025-03-19 07:15:31
|
What about for videos?
|
|
|
A homosapien
|
|
JKUser4592
What about for videos?
|
|
2025-03-19 09:42:12
|
Swap the input from PNG your Video file
|
|
|
|
JKUser4592
|
|
A homosapien
Swap the input from PNG your Video file
|
|
2025-03-20 12:42:30
|
"ffmpeg -i input.mkv -an -vframes 1 -vf format=yuv420p -preset veryslow output.h264" Won't this be lossy?
|
|
|
Quackdoc
|
2025-03-20 12:43:55
|
`-qp 0`
|
|
|
A homosapien
|
2025-03-20 12:44:01
|
you can replace `-vf format=yuv420p -preset veryslow` with `-c:v copy`, but it would only work with videos that are already h264
|
|
|
Quackdoc
|
2025-03-20 12:44:10
|
that too
|
|
|
|
JKUser4592
|
2025-03-20 05:00:56
|
<@184373105588699137> <@207980494892040194> What about -an -vframes 1? Do I keep or remove that?
|
|
|
Demiurge
|
2025-03-20 12:21:39
|
-an just means no audio
|
|
|
DZgas ะ
|
2025-03-20 01:40:34
|
Is Avif2 dead?
|
|
|
Meow
|
2025-03-20 02:01:43
|
It depends on AV2
|
|
|
Quackdoc
|
2025-03-20 05:52:36
|
unless dav1d extends support forAV2 IMO it's going to be a hard sell
|
|
|
gb82
|
2025-03-20 11:16:34
|
https://tenor.com/view/how-about-that-dave-lee-dave2d-what-do-you-think-what-do-you-say-gif-26881293
|
|
|
juliobbv
|
2025-03-20 11:17:00
|
davxd
|
|
|
BlueSwordM
|
|
DZgas ะ
Is Avif2 dead?
|
|
2025-03-21 12:43:21
|
No.
|
|
2025-03-21 12:43:33
|
AV2 hasn't been released at all <:KekDog:805390049033191445>
|
|
|
DZgas ะ
|
|
BlueSwordM
AV2 hasn't been released at all <:KekDog:805390049033191445>
|
|
2025-03-21 11:24:31
|
AV2 does not exist This is a government conspiracy
|
|
|
Meow
|
2025-03-21 12:32:17
|
It means adult video No. 2
|
|
|
jonnyawsom3
|
2025-03-22 01:30:54
|
I assume libjpegli defaults to the older API because it's more common?
<https://github.com/google/jpegli/blob/main/CMakeLists.txt#L125>
No mention of being able to use the newer one either, causing some confusion
<https://github.com/google/jpegli?tab=readme-ov-file#usage>
<https://github.com/RawTherapee/RawTherapee/issues/7125#issuecomment-2745142117>
|
|
|
Meow
|
2025-03-23 02:52:32
|
Seems the latest Jpegli repo finally adds a black background to an image with a transparent background
|
|
|
|
JKUser4592
|
2025-03-24 07:51:29
|
How do I make HEIC/HEIF files writable in ImageMagick?
|
|
|
RaveSteel
|
2025-03-24 07:53:10
|
You want to encode to HEIC? Why?
|
|
|
pixyc
|
2025-03-25 04:44:17
|
https://cdn.discordapp.com/attachments/862482711729012747/1341604925385216072/programmerhumor-io-stackoverflow-memes-backend-memes-7d5256a5e6b92cb.png?ex=67e36d74&is=67e21bf4&hm=e59856f7c88c2fc609886bec2184ac8a04a22db2c0f209fc3d7d29e436fe36de&
|
|
|
|
JKUser4592
|
2025-03-28 03:54:02
|
<@207980494892040194> <@184373105588699137> <@886264098298413078> What image viewers can play AVCI/AVCS files in Windows?
|
|
|
A homosapien
|
2025-03-28 03:57:18
|
None as far as I know, it's an apple thing really
|
|
|
Demiurge
|
|
A homosapien
|
2025-03-28 05:08:37
|
I couldn't even get it to work even with ffplay...
|
|
|
Demiurge
|
2025-03-28 05:10:11
|
`ffmpeg -i input.avci output.jxl`
|
|
|
|
JKUser4592
|
|
Demiurge
`ffmpeg -i input.avci output.jxl`
|
|
2025-03-28 10:19:34
|
try that out with this: https://drive.google.com/file/d/1UgVsgmocsO0dB0TfZKLFfNY-cVsVGXZP/view?usp=sharing
|
|
|
VEG
|
2025-03-30 11:59:32
|
https://github.com/libjxl/libjxl/releases - is it the correct place to download the latest binaries of jpegli? Looks like there are no binaries on https://github.com/google/jpegli
|
|
|
Meow
|
2025-03-30 12:36:58
|
You can still build from that jpegli repo
|
|
|
jonnyawsom3
|
2025-03-30 12:44:07
|
Though they're identical currently IIRC
|
|
|
HCrikki
|
2025-03-30 02:01:03
|
that generates executables not dlls. anyone got prebuilt dlls that can be dropped in place of an existing mozjpeg?
|
|
|
jonnyawsom3
|
2025-03-30 03:00:42
|
That's been a request for a very long time. Having prebuilt DLLs for the 6 and 8 API would help a lpt
|
|
|
HCrikki
|
2025-03-30 03:12:18
|
its literally the point of jpegli existing too - being able to swap in DLLs for software you use or even your own, without needing to bother with the source code yourself and passively gaining higher quality without changing your workflows - would be huge for sites serving compressed jpgs and thumbnails but native windows apps need consideration as well. Improving your use of jpg reduces the attractiveness of considering formats like webp, reduces the need for their reluctant adoption and keeps a forward migration path open for images to be eventually losslessly transcoded to jxl
|
|
2025-03-30 03:18:39
|
are there difficulties in generating those libraries/dlls? a nightly or even monthly would be handy to get the public contributing feedback and adoption
|
|
|
jonnyawsom3
|
2025-03-30 03:23:29
|
All I know is that everyone who tried has failed to build them
|
|
|
HCrikki
|
2025-03-30 03:30:38
|
xnviewmp ships a jpegli dll though ?
|
|
|
Quackdoc
|
|
All I know is that everyone who tried has failed to build them
|
|
2025-03-30 04:12:21
|
really? last I tried they compiled in msys perfectly fine
|
|
2025-03-30 04:15:29
|
I would highly reccomend making a pkgbuild for it, I wouldnt mind doing so if someone has a windows machine I can remote into, VM or real doesnt matter, my system isnt setup yet
|
|
2025-03-30 04:16:47
|
if anyone wants to make their own, iirc it would be easier to for
https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-libjxl/PKGBUILD
according to
https://github.com/google/jpegli/blob/main/doc/developing_in_windows_msys.md
and then for packaging you can use reference from
https://github.com/Quackdoc/msys-pkgbuild/tree/Master/olive-pkgbuild
|
|
|
jonnyawsom3
|
|
Quackdoc
really? last I tried they compiled in msys perfectly fine
|
|
2025-03-30 04:42:51
|
With the DLLs?
|
|
|
Quackdoc
|
2025-03-30 04:57:57
|
yes
|
|
2025-03-30 04:58:04
|
but it was a while ago indeed
|
|
|
Meow
|
2025-04-05 06:12:13
|
Not many people knowing the existence of "Lossless JPEG"
https://www.reddit.com/r/jpegxl/comments/1jrj4ke/file_size_on_iphone/
|
|
|
HCrikki
|
2025-04-05 02:31:26
|
The messaging is disjointed. Not easy to find in one place and fans can only bring attention to what little they themselves know, assuming they do so correctly
|
|
2025-04-05 02:36:40
|
take progressive loading. I vaguely knew that images could start displaying once at least 10-15% of the file was downloaded but according to someone (jxl oxide dev's?) libjxl is capable of displaying images even much earlier and this is just disabled in libjxl so imgs dont start partially loading in ridiculously low quality
|
|
2025-04-05 02:44:32
|
to me, lossless recompression should be pushed for as a major incentive for adoption/migration. Almost all conversion apps do slow full conversions that also sacrifice some quality without even guaranteeing smaller filesize and even bloating it several fold in the case of lossless from a lossy source
|
|
2025-04-05 02:47:53
|
apps should consistently use the quasi-instant fast path for lossless *reversible* compression from jpeg when the original image is a jpeg AND has not been edited, in addition to no longer locking conversion jobs to only one thread because of old compromises they chose 15 years ago and never revisited since
|
|
|
CrushedAsian255
|
|
HCrikki
apps should consistently use the quasi-instant fast path for lossless *reversible* compression from jpeg when the original image is a jpeg AND has not been edited, in addition to no longer locking conversion jobs to only one thread because of old compromises they chose 15 years ago and never revisited since
|
|
2025-04-05 09:48:31
|
yeah, especially the single threaded thing. Why do so many apps still only use less and 10% of my cpu
|
|
|
jonnyawsom3
|
2025-04-05 10:18:16
|
Either they use 1 thread, or they use all and starve the system of resources. Very few use all **cores** so the system remains responsive
|
|
|
HCrikki
|
2025-04-05 10:19:08
|
xnviewmp until last week used a low accuracy decode method for jpegs...
|
|
2025-04-05 10:20:35
|
jpegli integration is still not complete too. For instance, thumbnail generation and exporting to greyscale still seem to use the ancient jpeg encoder even though you asked to process it using jpegli
|
|
2025-04-05 10:25:15
|
on encoding performance, those issues are almost always just old decisions that were never revisited since the dawn of dual cores and images encoded fast on everything because resolutions were small then and it made more sense resizing down images first
|
|
|
dogelition
|
2025-04-07 07:29:36
|
https://netflixtechblog.com/hdr10-now-streaming-on-netflix-c9ab1f4bd72b
|
|
|
Quackdoc
|
2025-04-07 07:47:15
|
HDR10 confuses me, HDR10+ just doubles the confusion lol
|
|
|
dogelition
|
2025-04-07 07:54:05
|
what about hdr10 do you find confusing?
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-04-07 07:54:42
|
the "hdr" part
|
|
|
Quackdoc
|
|
dogelition
what about hdr10 do you find confusing?
|
|
2025-04-07 08:13:58
|
how the metadata is supposed to be used
|
|
2025-04-07 08:14:10
|
as far as I can tell, I cant even find a reccomendation outside of one paywalled tonemapper
|
|
|
DZgas ะ
|
2025-04-07 10:34:32
|
"objective tests"
|
|
2025-04-07 10:35:36
|
https://www.winxdvd.com/video-transcoder/h266-vvc-vs-av1.htm
|
|
|
Demiurge
|
2025-04-08 01:17:58
|
libvpx (vp9) was losing to x264 while being 130 times slower so yeah it's easy to believe that a codec made by the same guys is also worse than vvc
|
|
|
Lumen
|
|
DZgas ะ
"objective tests"
|
|
2025-04-08 06:30:11
|
Everything here is either outdated or plain wrong
|
|
2025-04-08 06:30:43
|
Av1 is now faster to encode than hevc for a given achieved bitrate,quality
|
|
2025-04-08 06:30:58
|
Vvc is very very very very bad rn
|
|
2025-04-08 06:31:16
|
Currently worse than av1
|
|
|
DZgas ะ
|
|
Demiurge
libvpx (vp9) was losing to x264 while being 130 times slower so yeah it's easy to believe that a codec made by the same guys is also worse than vvc
|
|
2025-04-08 08:06:55
|
bruh
|
|
|
Lumen
Everything here is either outdated or plain wrong
|
|
2025-04-08 08:07:36
|
It's just a lie, a lying test
|
|
|
Lumen
Currently worse than av1
|
|
2025-04-08 08:07:55
|
This is also a lie
|
|
|
Lumen
Vvc is very very very very bad rn
|
|
2025-04-08 08:11:53
|
are you aware that the vvc encoder has been added to ffmpeg? Go ahead and test it. I tested it all day yesterday. and you know what, to compress the gameplay of the game at 720p and bitrate 500 "preset medium". it shows better results than av1 in "a unit of time". but this is only a very specific case with Cyberpunk 2077. when tested at higher bitrates or faster presets or on a Minecraft game, av1 is better.
|
|
2025-04-08 08:13:08
|
qp 38-40
|
|
2025-04-08 08:18:22
|
The problem with VVC is that it is not as shared as AVC, it is just another stage of development, because HEVC was made before that, and "they" are already working on the new H267.
|
|
2025-04-08 08:19:29
|
and of course it will be even slower, and even slower.
|
|
|
Lumen
|
2025-04-08 08:26:34
|
your user tests mean little
there is not even a single mention of BD rate in your testing
|
|
2025-04-08 08:30:17
|
for example, on this test (not mine)
and to add to the fire x265 was suuuuper slow while av1 was fast
|
|
2025-04-08 08:30:50
|
on this one, vvc has only 4 sample points because it was just too slow to do more for the tester without dying on its weak ryzen 9 9950x cpu
|
|
2025-04-08 08:31:04
|
this is the vvc in ffmpeg you spoke about
|
|
2025-04-08 08:31:47
|
I don't have a graph of BD-rate encoding time from the same source
|
|
2025-04-08 08:32:02
|
so here is one from the april fool joke (you ll understand why it s april fool joke)
|
|
2025-04-08 08:33:20
|
xDSV3 corresponds in reality to x266 and for the april fool joke, the "lower left is better" is the joke; on that graph, higher is better quality
|
|
2025-04-08 08:34:17
|
these tests are still not enough to completely prove my point
there is the question of multiple presets and ... but well, that s at least part of it
|
|
2025-04-08 08:43:39
|
I also don't know how you encoded in av1, which is rather important. Was it svt-av1-psy? was it using ffmpeg instead of av1an?
|
|
2025-04-08 08:56:09
|
also, on your article, they contradict themselves
|
|
2025-04-08 08:56:20
|
|
|
2025-04-08 08:56:22
|
something is wrong somewhere
|
|
|
DZgas ะ
|
|
Lumen
on this one, vvc has only 4 sample points because it was just too slow to do more for the tester without dying on its weak ryzen 9 9950x cpu
|
|
2025-04-08 01:44:48
|
this
|
|
|
Lumen
your user tests mean little
there is not even a single mention of BD rate in your testing
|
|
2025-04-08 01:46:33
|
meh
|
|
2025-04-08 01:47:14
|
I'm on the internet and I'm not interested in anything higher than 1000 bitrate at 8k
|
|
|
Lumen
|
|
DZgas ะ
this
|
|
2025-04-08 01:50:20
|
this is very small gain for the time spent and the patent situation and the no support situation
|
|
2025-04-08 01:50:23
|
better wait for av2
|
|
|
DZgas ะ
|
|
Lumen
better wait for av2
|
|
2025-04-08 01:51:10
|
๐
|
|
|
Lumen
|
2025-04-08 01:51:12
|
and no one would ever use the bitrate of these samples
|
|
2025-04-08 01:51:18
|
we are talking about a score of 40 ssimu2
|
|
2025-04-08 01:51:20
|
it s unwatchable
|
|
|
DZgas ะ
|
2025-04-08 01:52:34
|
I have very big doubts that av2 will be able to show a better result for the same encoding time. at least by 5 percent. considering that most people use not even average presets, but even faster
|
|
|
Lumen
|
2025-04-08 01:53:00
|
I am very unsure about av2 as well
|
|
2025-04-08 01:53:04
|
I don't know anything about it
|
|
2025-04-08 01:53:09
|
I can only hope it ll be good
|
|
2025-04-08 01:53:39
|
but vvc is hopeless to my opinion
they might improve in encoding speed and higher bitrate quality (their encoder is probably a bit too immature yet)
|
|
2025-04-08 01:53:53
|
but the patent situation is so bad I don't want to touch it at all
|
|
|
DZgas ะ
|
2025-04-08 01:54:15
|
AV2 does not exist This is a government conspiracy
|
|
|
Lumen
|
|
DZgas ะ
|
|
Lumen
|
2025-04-08 01:56:24
|
av1 is not as expensive as it seems to decode, especially if you use the fast-decode option during encoding
|
|
2025-04-08 01:56:37
|
but it will always be more expensive than x264
|
|
2025-04-08 01:56:43
|
x264 was a great codec for its time
|
|
|
DZgas ะ
|
|
Lumen
x264 was a great codec for its time
|
|
2025-04-08 02:00:48
|
x264 is still a great codec, the whole problem is in the encoding resolution. for example, at 640x360 with maximum parameters, it encodes a picture better than HEVC and VP9 for the same encoding time. but if you take 1280x720, then yes, the codec has eliminated it. I use it for 540p at maximum
|
|
|
Lumen
|
2025-04-08 02:02:01
|
that low resolutions... I wouldn't even think of using them
|
|
2025-04-08 02:02:23
|
720p hurts already and I would consider it only for handheld devices
|
|
2025-04-08 02:02:47
|
but we probably have different goals in mind
|
|
2025-04-08 02:02:56
|
the tests above were for 1080p
|
|
2025-04-08 02:03:05
|
so that might be why your experience differ
|
|
|
DZgas ะ
|
2025-04-08 02:04:50
|
In general, I spent a very long time testing to switch from AVC to HEVC. The problem was that it is too demanding to DEcode, so I created a hevc preset exclusively specifically for 1280x720, which in terms of decoding speed is almost equal to vp9 and avc at 720p resolution. I didn't think it was possible, and yet, it is.
-vf "hqdn3d=luma_spatial=1:chroma_spatial=1:chroma_tmp=2:luma_tmp=3,zscale=w=1280:h=-2:filter=spline36"
-c:v libx265 -preset placebo -bf 5 -refs 4 -crf 26 -g 900 -x265-params "open-gop=1:me=star:rskip=0:tskip=0:scenecut=0:rc_lookahead=60:aq-mode=3:lookahead-slices=0:wpp=1:ctu=32:b-intra=1:qg-size=32:subme=7:qpstep=10:aq-mode=3:weightp=0:weightb=0:aq-strength=1.4:tu-intra-depth=4:tu-inter-depth=4:early-skip=1:rd=6:qcomp=0.7:rect=0:amp=0:psy-rd=0:rdoq=0:psy-rdoq=0:cbqpoffs=-2:crqpoffs=-4:min-cu-size=16:no-deblock=1:max-merge=5:merange=92:frame-threads=1"
|
|
|
Lumen
but we probably have different goals in mind
|
|
2025-04-08 02:06:11
|
compression of streams, streamers, in telegram, for viewing mainly on smartphones. A lot of restrictions.
|
|
|
Lumen
|
2025-04-08 02:06:30
|
maybe you d like to try svt-av1-psy with --fast-decode=2
svt has its own parameter to improve decoding perf
I saw some graphs about decoding speed and quality loss but overall people thought it was a good way to have fast av1 decode
|
|
2025-04-08 02:07:18
|
also it will be faster to encode than x265 placebo
|
|
|
DZgas ะ
|
|
Lumen
maybe you d like to try svt-av1-psy with --fast-decode=2
svt has its own parameter to improve decoding perf
I saw some graphs about decoding speed and quality loss but overall people thought it was a good way to have fast av1 decode
|
|
2025-04-08 02:07:41
|
This can't help even in theory, in practice it turned out that the complexity of decoding av1 is inevitably 5 to 10 times greater
|
|
2025-04-08 02:09:48
|
The encoding speed is the same.
Decoding speed on the processor:
100% avc
55% vp9
50% hevc (my preset, on a normal preset like veryslow about 20-30%)
6% av1
|
|
|
Lumen
|
2025-04-08 02:10:07
|
what 6% on av1
|
|
2025-04-08 02:10:26
|
on my computer x265 slower is already slower than svt-av1-psy preset 2
|
|
2025-04-08 02:10:35
|
by a good margin
|
|
|
DZgas ะ
|
|
Lumen
on my computer x265 slower is already slower than svt-av1-psy preset 2
|
|
2025-04-08 02:11:18
|
decode ?
|
|
|
Lumen
|
|
DZgas ะ
The encoding speed is the same.
Decoding speed on the processor:
100% avc
55% vp9
50% hevc (my preset, on a normal preset like veryslow about 20-30%)
6% av1
|
|
2025-04-08 02:11:28
|
there are some weird artifacts in some
|
|
|
DZgas ะ
decode ?
|
|
2025-04-08 02:11:42
|
ho sorry I read encode, for decoding on phone I never tried
|
|
|
DZgas ะ
|
2025-04-08 02:12:00
|
this is something that nobody usually fucking talks about. the more complex the encoding preset. the more small blocks, more separation, more motion vectors
|
|
|
Lumen
|
2025-04-08 02:12:00
|
but if you use libdav1d I m surprised a random phone cannot manage it
|
|
2025-04-08 02:12:52
|
for the 1st one it s really present on my screen but well on a phone I don't know if I d see them
|
|
2025-04-08 02:13:03
|
on av1 it would never happen though
|
|
|
DZgas ะ
|
2025-04-08 02:13:04
|
Since I also created my own fork for encoding av1. I inevitably encountered the fact that on preset, for example, 0. The DEcoding speed of AV1 is still 3-4 times slower than on preset 5
|
|
|
Lumen
|
2025-04-08 02:13:06
|
av1 prefers to blur everything
|
|
|
DZgas ะ
Since I also created my own fork for encoding av1. I inevitably encountered the fact that on preset, for example, 0. The DEcoding speed of AV1 is still 3-4 times slower than on preset 5
|
|
2025-04-08 02:13:26
|
it is a fork of what?
|
|
2025-04-08 02:13:27
|
๐จ
|
|
|
DZgas ะ
|
2025-04-08 02:13:39
|
svt-av1 fork
|
|
|
Lumen
|
2025-04-08 02:14:04
|
using svt-av1-psy would be better
|
|
2025-04-08 02:14:14
|
let me try to play av1 on my terrible phone
|
|
2025-04-08 02:14:32
|
argg I cannot decrypt my ssd on my phone
|
|
2025-04-08 02:15:07
|
I use MPV for reference
|
|
|
DZgas ะ
|
|
Lumen
using svt-av1-psy would be better
|
|
2025-04-08 02:16:03
|
I made bigger changes to the settings of the parameters of work. Although I took from psy the algorithm of increasing QP during shading. Still, I selected the curve of staring myself
|
|
|
Lumen
|
2025-04-08 02:16:22
|
which version is it from?
|
|
|
DZgas ะ
|
2025-04-08 02:16:53
|
I don't remember. I made the initial fork from version 2.0.0
|
|
2025-04-08 02:18:12
|
a little later there was a global optimization of the work, which I considered crap. And I separated into my fork, and separated my fork into another fork, which I call the best possible av1 encoder. True, I never found people who could prove it
|
|
|
Lumen
it is a fork of what?
|
|
2025-04-08 02:20:05
|
my normal fork
https://discord.com/channels/794206087879852103/805176455658733570/1277346077451882638
my "plcebo" fork
https://discord.com/channels/794206087879852103/805176455658733570/1278073368612175894
https://discord.com/channels/794206087879852103/805176455658733570/1312052368560623717
|
|
2025-04-08 02:20:29
|
the last one was made due to complete dissatisfaction with the work of "preset -1" in original svt-av1
|
|
|
Lumen
|
2025-04-08 02:25:18
|
I m currently viewing a 1080p 24000/1001 fps av1 encode without fast-decode nor tile-column
|
|
2025-04-08 02:25:26
|
my phone cost me 200 euros
|
|
2025-04-08 02:25:54
|
and the quality is unmatched for the size
|
|
2025-04-08 02:26:56
|
seeking is instant as well
|
|
|
DZgas ะ
|
|
Lumen
I m currently viewing a 1080p 24000/1001 fps av1 encode without fast-decode nor tile-column
|
|
2025-04-08 02:26:58
|
๐
|
|
|
Lumen
I m currently viewing a 1080p 24000/1001 fps av1 encode without fast-decode nor tile-column
|
|
2025-04-08 02:27:27
|
What preset is it encoded on?
|
|
|
Lumen
|
2025-04-08 02:28:03
|
it was first episode of this
|
|
2025-04-08 02:28:03
|
https://nyaa.si/view/1745023
|
|
2025-04-08 02:28:06
|
so preset 2
|
|
2025-04-08 02:28:35
|
after preset 2 the efficiency gain is little to none compared to the time increase
|
|
|
DZgas ะ
|
2025-04-08 02:28:37
|
anime
|
|
|
Lumen
|
2025-04-08 02:28:40
|
yes yes
|
|
|
DZgas ะ
|
2025-04-08 02:28:42
|
99% static frame
|
|
|
Lumen
|
2025-04-08 02:29:03
|
I don't think I got a live action at hand, I ll test that once back home
|
|
2025-04-08 02:29:10
|
I ll need to encode it too
|
|
|
DZgas ะ
|
2025-04-08 02:30:09
|
encode any Minecraft gameplay. on preset 0 or -1. 10-20 seconds will be enough
|
|
|
Lumen
|
2025-04-08 02:30:26
|
I m not going to use preset 0 or -1 it s waste
|
|
2025-04-08 02:30:36
|
using preset 2 with special techniques (NB) is far better
|
|
2025-04-08 02:30:45
|
more use of my computer time x)
|
|
|
DZgas ะ
|
2025-04-08 02:31:16
|
svt-av1 removed decoding level legacy because can't comply
|
|
|
Lumen
|
2025-04-08 02:31:41
|
I m going back home now so I ll try that this evening
|
|
|
DZgas ะ
|
|
Lumen
|
2025-04-08 03:16:30
|
wow I cannot possibly download a clip from youtube they are already bad quality
|
|
2025-04-08 03:18:25
|
I ll reinstall minecraft and try to get raws myself
|
|
|
jonnyawsom3
|
|
Lumen
but if you use libdav1d I m surprised a random phone cannot manage it
|
|
2025-04-08 03:46:06
|
Once in a while I'll stumble across someone on Discord streaming in AV1 at 1440p or 4K. It cripples my computer and maxed out all cores, so god help my poor phone if I ever tried
|
|
|
DZgas ะ
|
2025-04-08 03:50:30
|
<:galaxybrain:821831336372338729> 1440p 2000 kbps
|
|
|
Demiurge
|
2025-04-08 08:24:08
|
Yeah avc is not designed for high res and low bitrates. Hevc adds more varblock sizes and VVC adds rectangular blocks
|
|
2025-04-08 08:24:19
|
I think jxl has rectangular blocks too
|
|
|
_wb_
|
2025-04-08 08:30:20
|
Yes, jxl has blocks with aspect ratio 1:1, 1:2 and 2:1 for every block size, and also 8x32 / 32x8
|
|
|
Lumen
|
2025-04-08 08:30:24
|
okay so it was not trivial especially when there was entities on the screen, here is my little summary (for --preset 2)
- 1080p 60fps had a lot of trouble
- --fast-decode=2 was clearly not enough
- --fast-decode=2 --tile-columns=1 helped visibly but wasnt enough to watch a flawless av1 on my phone
- --fast-decode=2 --tile-columns=2 --tile-rows=1 was almost enough, I almost could watch it nicely. This is due to the fact that phone uses ARM so each core is quite weak and tiles allows to improve multithreaded decoding
- same but applied for 720p 60 fps which was sadly still not enough for some specific scenes
- same but applied for 720p 30 fps, this time finally it worked flawlessly
[result](https://discord.nfp.is/?v=https%3A%2F%2Ffiles.catbox.moe%2Fyceto2.mp4)
my conclusion is: av1 is harder to decode on phone than I thought, I admit that
I still think that for 720p 30 fps, the compression is great here but I cannot say about other codecs because I did not have a proper comparison on that
|
|
2025-04-08 08:33:27
|
okay on my phone it looks alright, on 4K full screen it s x) different
|
|
2025-04-08 08:33:47
|
but that s to be expected for 918 kbps
|
|
|
Quackdoc
|
2025-04-08 08:34:17
|
av1 on phone is weird right now because most phones use libgav1 when no hwdec is present
|
|
|
Lumen
|
2025-04-08 08:34:18
|
ho god it s so bad on my desktop XDD
|
|
|
Quackdoc
|
2025-04-08 08:34:52
|
new android changes this. but... well, its not common'
|
|
|
Lumen
|
2025-04-08 08:36:53
|
to share the ssimu2 score if some people want to vomit ๐
|
|
|
Quackdoc
|
2025-04-08 08:38:04
|
how were you playing the videos on phone?
|
|
|
Lumen
|
2025-04-08 08:39:14
|
yeah the point was to get a minecraft gameplay that was fluid on my 200 euros phone ^^
|
|
2025-04-08 08:39:34
|
doesnt excuse the low bitrate- but it seems that this is what the person I was talking to would target
|
|
2025-04-08 08:40:06
|
comparing with other codec would be interesting now
|
|
|
Quackdoc
|
2025-04-08 08:41:55
|
what player are you using on what phone?
|
|
|
Lumen
|
2025-04-08 08:50:58
|
I used both the default player in google files app
and MPV
|
|
2025-04-08 08:51:06
|
there was no significant difference between them
|
|
2025-04-08 08:51:25
|
the phone is relatively random, let me find the name
|
|
2025-04-08 08:51:40
|
moto g54 5G
|
|
|
Quackdoc
|
2025-04-08 08:56:58
|
interesting, mpv should be significantly faster seems like it uses dual core a78 and 6 core a55, so it shouldnt be slow [Hmm](https://cdn.discordapp.com/emojis/1113499891314991275.webp?size=48&name=Hmm)
|
|
2025-04-08 09:16:57
|
yeah I have an LG G7 thinq which uses 4 Kryo 385 Gold and 4 Kryo 385 Silver which are based on A75 and A55. so you shouldnt really be having issues decoding av1 too much
|
|
|
Lumen
|
2025-04-08 09:45:51
|
I wonder why that was then
|
|
2025-04-08 09:45:54
|
decoding anime was easy
|
|
2025-04-08 09:46:04
|
but minecraft gameplay with entities in front of me wasnt as easy
|
|
2025-04-08 09:46:16
|
and I believe the options I tried should have been quite good at helping decoding
|
|
2025-04-08 09:52:38
|
but it s weird because something like the opening of charlotte plays nicely
|
|
2025-04-08 09:52:43
|
and it is NOT an easy opening
|
|
2025-04-08 09:53:01
|
I wonder why this specific video was so hard
|
|
2025-04-08 09:53:20
|
maybe I should have tried 1080p 24 fps since the beginning
|
|
2025-04-08 09:53:25
|
instead of 720p 60 fps
|
|
|
dogelition
|
|
Quackdoc
av1 on phone is weird right now because most phones use libgav1 when no hwdec is present
|
|
2025-04-08 10:15:18
|
didn't a google play update replace that with dav1d?
|
|
|
Quackdoc
|
|
dogelition
didn't a google play update replace that with dav1d?
|
|
2025-04-08 10:31:04
|
on some devices
|
|
|
DZgas ะ
|
|
Lumen
okay so it was not trivial especially when there was entities on the screen, here is my little summary (for --preset 2)
- 1080p 60fps had a lot of trouble
- --fast-decode=2 was clearly not enough
- --fast-decode=2 --tile-columns=1 helped visibly but wasnt enough to watch a flawless av1 on my phone
- --fast-decode=2 --tile-columns=2 --tile-rows=1 was almost enough, I almost could watch it nicely. This is due to the fact that phone uses ARM so each core is quite weak and tiles allows to improve multithreaded decoding
- same but applied for 720p 60 fps which was sadly still not enough for some specific scenes
- same but applied for 720p 30 fps, this time finally it worked flawlessly
[result](https://discord.nfp.is/?v=https%3A%2F%2Ffiles.catbox.moe%2Fyceto2.mp4)
my conclusion is: av1 is harder to decode on phone than I thought, I admit that
I still think that for 720p 30 fps, the compression is great here but I cannot say about other codecs because I did not have a proper comparison on that
|
|
2025-04-08 10:31:38
|
<:Stonks:806137886726553651>
|
|
2025-04-08 10:33:29
|
so far I'm making far-reaching conclusions: "guys, because of ARM we're stuck at 720p" <:kekw:808717074305122316> for 1080p use vp9 only
|
|
2025-04-08 10:36:48
|
hevc and av1 overload the decoder too much due to complex motion vectors
vp8 avc have too small blocks.
vp9 well this is the perfect choice for 1080p in 2025. especially considering that this codec compresses minecraft the best.
After all, according to my theory, also because of the hype of minecraft on youtube, engineers made vp9 for youtube based on minecraft. but this is just my schizo-theory
|
|
|
dogelition
|
|
Quackdoc
on some devices
|
|
2025-04-08 10:38:05
|
google claimed that all android 12+ phones get it, is that not accurate?
|
|
|
Quackdoc
|
2025-04-08 10:38:34
|
they get it, ita just not prioritized , apps have to opt in
|
|
2025-04-08 10:38:59
|
a15+ should be dav1d by default
|
|
|
dogelition
|
|
DZgas ะ
|
|
DZgas ะ
hevc and av1 overload the decoder too much due to complex motion vectors
vp8 avc have too small blocks.
vp9 well this is the perfect choice for 1080p in 2025. especially considering that this codec compresses minecraft the best.
After all, according to my theory, also because of the hype of minecraft on youtube, engineers made vp9 for youtube based on minecraft. but this is just my schizo-theory
|
|
2025-04-08 10:41:49
|
I've thought about libvpx is still being update, improved. It's not the same encoder that came out in 2013... Maybe there's no point in AV1, due to the global stagnation of technologies... I'll never live to see av1 streaming... <:SadCheems:890866831047417898>
|
|
|
HCrikki
|
2025-04-08 10:56:09
|
iinm you should force an update to google play services. oddly it can stay pinned on a year old version otherwise
|
|
|
A homosapien
|
2025-04-08 11:59:29
|
On my phone, an HDR 1080p 60 fps AV1 video plays better with software decoding than hardware decoding in mpv. Libdav1d is truly magical. ๐
|
|
|
Quackdoc
|
2025-04-09 12:19:20
|
[av1_woag](https://cdn.discordapp.com/emojis/852007419474608208.webp?size=48&name=av1_woag)
|
|
|
A homosapien
|
2025-04-09 12:41:52
|
Woah, google photos can play back 4k AV1 video better than mpv, never thought I would see the day
|
|
|
Quackdoc
|
2025-04-09 12:44:09
|
well, mpv does have a button to easily disable hwdec at least so it should be the same, but iirc mpv-android changed some defaults around so may need to change some settings
|
|
|
A homosapien
|
2025-04-09 12:46:49
|
For mpv I turned on low quality video decoding and set upscaling/downscaling to bilinear_fast and it still struggles
|
|
2025-04-09 12:47:12
|
Google photos just about manages to play the 4k video smoothly, maybe a dropped frame here and there
|
|
|
Quackdoc
|
2025-04-09 12:48:07
|
interesting, any chance it's a mali device?
|
|
|
A homosapien
|
2025-04-09 12:48:23
|
Pixel 8, idk if that answers your question
|
|
|
Quackdoc
|
2025-04-09 12:49:11
|
yeah, not mali I dont think... weird
|
|
|
A homosapien
|
2025-04-09 12:49:40
|
No wait, Google Tensor G3 uses Mali-G715 MP7
|
|
2025-04-09 12:49:48
|
so yes it is a mali device
|
|
2025-04-09 12:53:32
|
Okay I downloaded the apk from Github and it's perfoming better compared to google play's mpv apk
|
|
2025-04-09 12:54:08
|
mpv is dropping less frames but still not quite watchable
|
|
|
Quackdoc
|
2025-04-09 12:55:30
|
ahhh, yeah. mali and mpv are not exactly great with eachother. there are work arounds but I cant think of them off the top of my head
|
|
|
A homosapien
|
2025-04-09 12:57:35
|
Is it a driver issue? The pixel 8's performance was really hampered by crappy drivers on launch.
|
|
|
Quackdoc
|
2025-04-09 12:58:34
|
yeah, mali in general has terrible drivers, iirc you could probably enable vulkan, but im not sure if you need a patched build on the G3 or not
|
|
|
A homosapien
|
2025-04-09 01:00:19
|
Still, mpv playing 1440p 60 fps HDR AV1 video flawlessly despite suboptimal drivers is kinda nuts. Libdav1d really is doing a ton of heavy lifting ๐ช
|
|
|
CrushedAsian255
|
|
DZgas ะ
hevc and av1 overload the decoder too much due to complex motion vectors
vp8 avc have too small blocks.
vp9 well this is the perfect choice for 1080p in 2025. especially considering that this codec compresses minecraft the best.
After all, according to my theory, also because of the hype of minecraft on youtube, engineers made vp9 for youtube based on minecraft. but this is just my schizo-theory
|
|
2025-04-09 09:24:35
|
What about the format makes it seem optimised for Minecraft?
|
|
|
DZgas ะ
|
|
CrushedAsian255
What about the format makes it seem optimised for Minecraft?
|
|
2025-04-09 09:37:50
|
this is just an observation. There is a fact of testing - minecraft is the most incompressible game for compression. And I suddenly noticed that with identical encoding speed VP9 gives a better result than HEVC on all parameters. And also on all parameters better than AV1 (everything lower the "best" parameter)
|
|
|
CrushedAsian255
|
|
DZgas ะ
this is just an observation. There is a fact of testing - minecraft is the most incompressible game for compression. And I suddenly noticed that with identical encoding speed VP9 gives a better result than HEVC on all parameters. And also on all parameters better than AV1 (everything lower the "best" parameter)
|
|
2025-04-09 09:40:16
|
What makes it specifically so impossible for compression? Itโs just blocks isnโt it?
|
|
2025-04-09 09:40:32
|
Or is it the complex motion vectors
|
|
|
DZgas ะ
|
|
CrushedAsian255
What makes it specifically so impossible for compression? Itโs just blocks isnโt it?
|
|
2025-04-09 09:43:01
|
well, these are the test results I've seen. Among all the codecs after AVC, minecraft is the game with the least compression gain between vp9 hevc av1 codecs.
I've compressed it a lot myself, I'll say that's true. And it's all about a lot of factors, very active gameplay and very complex vector geometry due to the 3D world with sharp block edges
|
|
|
CrushedAsian255
Or is it the complex motion vectors
|
|
2025-04-09 09:44:11
|
And also the impossibility of using deblock filter, in general, the algorithm cannot be used in this game
|
|
|
CrushedAsian255
|
2025-04-09 09:44:45
|
Ah so itโs less incompressible and more it goes against all commonly used compression techniques?
|
|
2025-04-09 09:45:11
|
Like you could probably write a Minecraft-specific dedicated compression algorithm but it wouldnโt be like most others?
|
|
|
DZgas ะ
|
2025-04-09 09:45:43
|
<:galaxybrain:821831336372338729> I AM ?
|
|
2025-04-09 09:46:14
|
Well, I created a fork of svt-av1 in order to compress games and minecraft
|
|
2025-04-09 09:48:40
|
but if you need to compress Minecraft quickly, vp9 suddenly becomes the best solution, no compromise
|
|
2025-04-09 09:50:39
|
and one more important thing. vp9 motion vectors are much simpler, about 2-3 times easier to decode than hevc, so in very dynamic scenes in minecraft this will not cause problems with decoding
|
|
|
Demiurge
|
2025-04-09 12:08:36
|
JPEG-XM
Extended Minecraft
|
|
|
jonnyawsom3
|
|
Demiurge
JPEG-XM
Extended Minecraft
|
|
2025-04-09 01:20:01
|
https://discord.com/channels/794206087879852103/794206087879852106/1323400503765237811
|
|
|
CrushedAsian255
What makes it specifically so impossible for compression? Itโs just blocks isnโt it?
|
|
2025-04-09 01:20:56
|
Issue is the pixel fine detail on far away blocks, sharp edges everywhere and transparent foliage
|
|
|
Kagamiin~ Saphri
|
2025-04-14 04:00:07
|
hey, I'm developing a bitmap compression codec
|
|
2025-04-14 04:00:53
|
it's called Pixcrumb, it's meant for planar low-bpp bitmaps, and I'm trying to design it to be relatively fast to decompress while also having good compression ratio
|
|
2025-04-14 04:01:52
|
I'm having trouble with developing it...
|
|
2025-04-14 04:02:35
|
the first coder I made for it used a combination of 4-bit zero terminated literals + exp-Golomb-coded zero-RLE, just like the Pokรฉmon compression codec... and everything else I tried performs worse than that...
|
|
2025-04-14 04:03:58
|
I've tried variable-length coding for the literals and I've tried LZ77 instead of RLE... all 3 combinations of that almost always perform worse than my first coder
|
|
2025-04-14 04:05:40
|
is this the right channel for talking about this?
|
|
|
A homosapien
|
2025-04-14 04:17:26
|
Yeah, this channel is right, we're not strict about this kind of stuff as long as it's not super off topic
|
|
|
_wb_
|
2025-04-14 08:26:16
|
What do you mean by low-bpp? Lossy or low bit depth? Assuming it is low bit depth since you are mentioning RLE: does it have to be planar? You might be better off doing it interleaved and doing palette or something like lossless webp's color cache...
|
|
|
Kagamiin~ Saphri
|
|
_wb_
What do you mean by low-bpp? Lossy or low bit depth? Assuming it is low bit depth since you are mentioning RLE: does it have to be planar? You might be better off doing it interleaved and doing palette or something like lossless webp's color cache...
|
|
2025-04-14 09:24:23
|
I mean low bit depth, low bitplane count (usually 2-4bpp). It could actually be non-planar, but I designed it to be planar because it's an image codec targeting old video game consoles that use planar graphics formats.
|
|
2025-04-14 09:24:30
|
I'll think about it, thanks for the feedback!
|
|
|
LMP88959
|
|
Kagamiin~ Saphri
I've tried variable-length coding for the literals and I've tried LZ77 instead of RLE... all 3 combinations of that almost always perform worse than my first coder
|
|
2025-04-14 09:33:09
|
for low-bpp dithered art LZ compression works well, for low-bpp non-dithered art, try 2D RLE
|
|
|
Kupitman
|
|
A homosapien
On my phone, an HDR 1080p 60 fps AV1 video plays better with software decoding than hardware decoding in mpv. Libdav1d is truly magical. ๐
|
|
2025-04-23 12:44:02
|
MPV support hardware?!
|
|
|
Demiurge
|
2025-04-23 03:18:45
|
Yes. Ctrl+H
|
|
|
Kupitman
|
|
Demiurge
Yes. Ctrl+H
|
|
2025-04-25 08:44:27
|
LMAO
|
|
2025-04-25 08:44:31
|
i didn't know
|
|
|
lonjil
|
2025-04-27 05:10:49
|
A lot of people here have experience with codecs and stuff like reconstruction, so a quick question:
I want to create a virtual filesystem that allows editing FLAC metadata without affecting the original files. The difference between what is written to the virtual fs and what is in the underlying fs must be stored, and this must be enough to reconstruct the data that was written to the virtual fs.
A plain binary diff could work, but *might* result in excessively large diffs. A file format aware diff would produce the smallest possible difference, but would be more effort to implement.
So, does anyone have any idea how hard the latter variant would be to implement? I figure I'll try the binary diff approach first, but I'm curious what people think.
|
|
|
Quackdoc
|
2025-04-27 06:13:11
|
FFmpeg can now decode APV so we should benchmark it against JXL, of particular interest is fastdecode
|
|
|
Cacodemon345
|
2025-04-28 07:32:52
|
https://www.phoronix.com/news/FFmpeg-Merges-APV-Decoder
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-04-29 10:32:32
|
so I was playing a bit with WavPack encoders to reach best compression
and `wavpack -hhx6` was always heavier than FFmpeg's own WV encoder (`-compression_level 12`), but apparently it is because it uses old WV 4.0 and does not embed CRC checks (?)
|
|
2025-04-29 10:32:58
|
too bad we can't disable CRC calculation in `wavpack`
|
|
|
CrushedAsian255
|
|
TheBigBadBoy - ๐ธ๐
so I was playing a bit with WavPack encoders to reach best compression
and `wavpack -hhx6` was always heavier than FFmpeg's own WV encoder (`-compression_level 12`), but apparently it is because it uses old WV 4.0 and does not embed CRC checks (?)
|
|
2025-04-29 10:48:21
|
Are the CRC checks actually that much data?
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-04-29 10:58:24
|
`115000597` bytes
`115071869` bytes
problem is: I don't really know because apparently it saves the space of CRC blocks, but it has worse compression
> I ran ffmpeg's WavPack encoder, and similar happens. With -optimize-mono it can produce smaller files than reference WavPack - I guess due to missing block checksums, which takes up space - and without it is naturally quite a bit worse; size orders are
> 8, 7, 4, 6=5 (bit-identically), (here are reference WavPack -hx6 down to -fx3), 1, 2, 3, 0 with -optimize-mono
> 8, 7, 4, 6=5 (bit-identically), 2, 3, 1, 0 without.
> "0" is ffmpeg's default and encodes dual mono, so on this signal it is twice as big as WavPack -x
https://hydrogenaud.io/index.php/topic,123655.msg1025694.html#msg1025694
|
|
|
Kupitman
|
2025-04-29 11:10:00
|
71kb...
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-04-29 11:18:47
|
more than that since FFmpeg should compress worse than `wavpack`
|
|
|
damian101
|
|
CrushedAsian255
Are the CRC checks actually that much data?
|
|
2025-04-30 05:01:20
|
I doubt that...
|
|
2025-04-30 05:02:39
|
you definitely want those CRC checksums
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-04-30 07:44:32
|
well I quite like how FLAC handled this
a simple single MD5 hash for the *whole* file
instead of a CRC for each packet or sample or whatever
|
|
|
MSLP
|
2025-05-02 02:11:57
|
But packet-based checksums also have their place - they give you more granularity - in case of data corruption you can see which parts of the data have been damaged, and which can be salvaged
|
|
|
TheBigBadBoy - ๐ธ๐
|
2025-05-02 05:16:22
|
except for streaming purposes I don't see the point
|
|
2025-05-02 05:20:38
|
bc if you want to have some "extra safety" for local storage, then go for disk backup or RAID 5 or whatever
I don't want evety format to implement their own data-corruption detector
|
|
2025-05-02 05:21:06
|
that's personal taste ofc
|
|
|
jonnyawsom3
|
2025-05-02 06:16:30
|
JXL inherently has error detection thanks to the ANS runs
|
|
|
RaveSteel
|
2025-05-04 09:51:26
|
<@184373105588699137>
I did a short test with streaming to youtube.
SVT@25000kbit/s and fastest preset.
According to yt-dlp all available streams are AVC but youtube's stats for nerds says the video delivered to viewers is VP9.
So same as when I last tested
|
|
|
jonnyawsom3
|
2025-05-04 11:42:47
|
Apparently the Windows file explorer `Rotate right` and `Rotate left` options add both sRGB and gAMA chunks to PNGs...
|
|
2025-05-04 11:43:32
|
Yet another reason why files keep popping up with Gamma applied to sRGB images I suppose
|
|
|
Quackdoc
|
2025-05-04 12:19:22
|
I'm still only getting vp9 on 1440p t.t
|
|
|
RaveSteel
|
2025-05-04 12:28:45
|
I also only get VP9 on youtube. But I get VP9 no matter what I am streaming to youtube. They are transcoding everything to VP9
|
|
|
Quackdoc
|
2025-05-04 12:31:28
|
their live VP9 encoder craps on their live avc encoder so that is a win
|
|
2025-05-04 12:32:04
|
yeah even just opening a random live stream im getting AVC on ff
|
|
|
RaveSteel
|
2025-05-04 12:33:28
|
Interesting. If I myself stream to youtube I receive a VP9 stream. Though I haven't tried extensively on how I could get an AVC stream
|
|
|
Quackdoc
|
2025-05-04 12:34:05
|
maybe live moide matters? dunno
|
|
|
RaveSteel
|
2025-05-04 12:39:22
|
I have tried different latency modes in youtube's livestream settings, no difference
|
|
2025-05-04 12:40:08
|
the streamed codec also doesn't seem to matter, I tried both AVC and AV1, both are transcoded into a VP9 stream by youtube
|
|
|
Quackdoc
|
2025-05-04 12:40:33
|
weird
|
|
2025-05-04 12:40:48
|
I wonder if it depends on injest datacenter load
|
|
|
RaveSteel
|
2025-05-04 12:41:03
|
No idea
|
|
2025-05-04 12:41:29
|
bitrate also makes no difference, I tried 25000kbit/s and 250kbit/s, still nets me a VP9 stream
|
|
2025-05-04 12:43:08
|
I have clicked through a few livestreams, all of them are VP9 for me
|
|
|
Quackdoc
|
2025-05-04 12:43:37
|
maybe this is a firefox skill issue lmao
|
|
|
RaveSteel
|
2025-05-04 12:44:38
|
I don't think so, the same happens with chromium
|
|
2025-05-04 12:46:24
|
Ok, after clicking through a few more streams I found one with AVC, which it is in firefox and chromium
|
|
|
Quackdoc
|
2025-05-04 12:47:21
|
yeah I wonder if injest is the issue then
|
|
2025-05-04 12:47:23
|
weird
|
|
2025-05-04 12:47:45
|
then again, I only watch streamers with 40-200 viewers usually so it might be that
|
|
|
RaveSteel
|
2025-05-04 12:48:34
|
So in conclusion, no idea why
|
|
2025-05-04 12:48:35
|
lol
|
|
|
Quackdoc
|
2025-05-04 12:48:45
|
yup lmao
|
|
|
MSLP
|
|
TheBigBadBoy - ๐ธ๐
that's personal taste ofc
|
|
2025-05-04 07:08:33
|
Ye, I it's a preference thing - in my case I like those things to be able to work "transparently" and independent of the storage medium.
It would be cool if this wouldn't have to be done at a file format level - eg. via built-in function in filesystem which could do create/verify data blocks checksums.
|
|
|
Mine18
|
2025-05-04 07:59:19
|
<@184373105588699137> <@167354761270525953> you may need to enable AV1 in account settings/preferences under playback on desktop
|
|
|
Quackdoc
|
2025-05-04 07:59:38
|
yeah those are set
|
|
|
RaveSteel
|
2025-05-04 07:59:46
|
Same
|
|
2025-05-04 08:00:43
|
There isn't even an option anymore to not have AV1 enabled
|
|
|
Quackdoc
|
2025-05-05 04:04:21
|
doesn't seem like vulkan video can encode or decode RGB encoded videos lol
|
|
2025-05-05 01:17:14
|
openapv has finally be merged into ffmpeg https://www.phoronix.com/news/FFmpeg-Adds-APV-Encoder
when this lands in stable, im gonna have a lot of fun comparing this to jxl
|
|
2025-05-05 01:18:29
|
man I wish I didn't need to patch ffmpeg <:SadCheems:890866831047417898>
|
|
|
RaveSteel
|
2025-05-05 01:26:02
|
I just hope that it really does land with Android 16
|
|
|
Quackdoc
|
2025-05-05 01:26:24
|
it will be optional but yes it's in A16
|
|
2025-05-05 01:26:57
|
https://developer.android.com/about/versions/16/features#apv
|
|
|
RaveSteel
|
2025-05-05 01:27:22
|
Hopefully it'll be implemented by most vendors
|
|
|
Quackdoc
|
2025-05-05 01:29:16
|
I don't see why it wouldn't be tbh, it will likely be default, but some vendors may choose to disable it on lower end hardware because
A) it's software encoding so it's really going to hammer the CPU
B) it targets bitrates up to gbps, even at lower settings its still going to do 200+mbps which will really kill storage on low end devices
|
|
|
dogelition
|
2025-05-05 01:30:53
|
really sucks how much you have to pay extra for more storage on high end phones
|
|
2025-05-05 01:31:17
|
and they don't have sd card support anymore...
|
|
2025-05-05 01:33:24
|
worst offender might be the pixel phones, the 9 pro xl starts at 128 gb and you need to pay 100โฌ extra for 256 gb
|
|
|
Quackdoc
|
2025-05-05 01:33:55
|
some do some don't, I refuse to buy a phone that doesn't, but tbh, Im kinda digging usb storage lately, some real high perf small usb keys that can be strapped to the back for recording
|
|
|
dogelition
|
2025-05-05 01:35:46
|
i've seen people record log footage directly to an external ssd from an iphone
|
|
|
RaveSteel
|
2025-05-05 01:36:06
|
I have done that lol
|
|
2025-05-05 01:36:16
|
Also on Android with Motioncam
|
|
|
dogelition
|
|
Quackdoc
|
2025-05-05 01:37:01
|
motioncam dev went closed source [av1_dogelol](https://cdn.discordapp.com/emojis/867794291652558888.webp?size=48&name=av1_dogelol) oh well, not much benefit to using it over mcpro or blackmagic cam
|
|
|
RaveSteel
|
2025-05-05 01:38:06
|
Sadly they did, but the app is still good, leagues ahead of any other camera app I've tested. Blackmagic Cam is a joke, seeing as the bitrate selction is super low
|
|
|
Quackdoc
|
2025-05-05 01:39:00
|
I mean, it gives you what makes sense for smartphone encoders
|
|
|
RaveSteel
|
2025-05-05 01:39:11
|
I think I still have the open source motioncam APK lying around, but the new Pro version is much more advanced
|
|
|
Quackdoc
|
2025-05-05 01:40:30
|
afaik I do have a fork with the latest source availible on my repo i managed to grab before it was taken down
|
|
|
RaveSteel
|
|
Quackdoc
|
2025-05-05 01:41:51
|
well, mcpro24fps is still out there ~~and cracked~~ so generally I reccomend either using blackmagic if you want a free app, or mcpro24fps which does provide some greater customizability
|
|
2025-05-05 01:42:10
|
the thing I dislike about blackmagic app the most is the absurdly low max iso when in manual mode
|
|
|
jonnyawsom3
|
|
Quackdoc
openapv has finally be merged into ffmpeg https://www.phoronix.com/news/FFmpeg-Adds-APV-Encoder
when this lands in stable, im gonna have a lot of fun comparing this to jxl
|
|
2025-05-05 01:44:12
|
What CPU do you have again?
|
|
|
Quackdoc
|
2025-05-05 01:44:26
|
on my desktop? ryzen 2600
|
|
|
jonnyawsom3
|
2025-05-05 01:52:11
|
Just thinking if lossless would decode fast enough for video https://discord.com/channels/794206087879852103/803645746661425173/1365676466586783755
|
|
|
RaveSteel
|
2025-05-05 01:53:51
|
It can be, even for mobile, but mostly at e1
|
|
2025-05-05 01:54:02
|
but testing with fast decode sounds like an idea, why not
|
|
2025-05-05 01:54:07
|
will try if I have time later
|
|
|
jonnyawsom3
|
2025-05-05 01:54:32
|
Napkin maths says FD4 can handle 1080p120
|
|
|
RaveSteel
|
2025-05-05 01:54:38
|
ohhhh
|
|
2025-05-05 01:54:41
|
we'll see
|
|
|
Quackdoc
|
|
Just thinking if lossless would decode fast enough for video https://discord.com/channels/794206087879852103/803645746661425173/1365676466586783755
|
|
2025-05-05 01:55:18
|
it was fast enough before the older regression
|
|
|
jonnyawsom3
|
|
RaveSteel
ohhhh
|
|
2025-05-05 01:59:52
|
That was based on my CPU, using your djxl results, you should be able to hit 4K60 (Possibly... maybe)
|
|
|
RaveSteel
|
2025-05-05 02:18:02
|
I will try and report back later
|
|
|
jonnyawsom3
|
|
Quackdoc
it was fast enough before the older regression
|
|
2025-05-05 02:32:35
|
You mean the faster decoding one, or something else?
|
|
|
Quackdoc
|
2025-05-05 02:33:01
|
yeah faster decoding, one sec
|
|
2025-05-05 02:36:57
|
this was my decode speed
https://cdn.discordapp.com/attachments/673202643916816384/1182221413856313384/image.png?ex=6819b97d&is=681867fd&hm=1c695c546eac3ec87a8fddcce0cff862e5f1bca77aa060c978c458e07e880c81&
https://media.discordapp.net/attachments/673202643916816384/1182221277776314398/image.png?ex=6819b95d&is=681867dd&hm=63c4d77c4d2019d74165b9f27517686a218eb3b02c8aa86c29a28ca1742bc800&
|
|
2025-05-05 02:37:20
|
iirc they were both with faster decoding 4
|
|
2025-05-05 02:37:57
|
i plan on restesting, I just need to recompile libjxl git, openapv git, and ffmpeg git
|
|
2025-05-05 02:40:31
|
ah, 98fps is without faster decoding mb
|
|
2025-05-05 02:44:31
|
https://media.discordapp.net/attachments/673202643916816384/1182221278430634014/image.png?ex=6819b95d&is=681867dd&hm=22bbe28d27031b57a35ac25597f1b4d71714375cf924a7403c5f9a1ab1eeb63a&=&format=webp
|
|
2025-05-05 02:44:41
|
this is with faster decoding
|
|
2025-05-05 02:46:39
|
kk, went back and verified, this is how I encoded them `cjxl -e 3 -d 1 --faster_decoding=4`
|
|
2025-05-05 05:17:21
|
```
liboapv AVOptions:
-preset <int> E..V....... Encoding preset for setting encoding speed (optimization level control) (from 0 to 4) (default medium)
fastest 0 E..V.......
fast 1 E..V.......
medium 2 E..V.......
slow 3 E..V.......
placebo 4 E..V.......
default 2 E..V.......
-qp <int> E..V....... Quantization parameter value for CQP rate control mode (from 0 to 63) (default 32)
-oapv-params <dictionary> E..V....... Override the apv configuration using a :-separated list of key=value parameters
```
|
|
2025-05-05 05:17:29
|
it has qp controls, so weird
|
|
2025-05-05 05:18:05
|
also presets instead of profiles
|
|
2025-05-05 05:20:38
|
it can only be muxed in .apv rn which sucks
|
|
2025-05-05 05:22:25
|
also <@853026420792360980> would it be possible to support a `-jxl-params` in ffmpeg?
|
|
|
Traneptora
|
|
Quackdoc
also <@853026420792360980> would it be possible to support a `-jxl-params` in ffmpeg?
|
|
2025-05-05 05:24:22
|
there's no generic library option parser so individual flags would have to be mapped
|
|
|
Quackdoc
|
2025-05-05 05:24:48
|
[sadge](https://cdn.discordapp.com/emojis/1022473190133473381.webp?size=48&name=sadge)
|
|
|
Traneptora
|
2025-05-05 05:24:56
|
is there any flag you needed in particular
|
|
2025-05-05 05:25:12
|
none of them are hard, just require commits
|
|
|
Quackdoc
|
2025-05-05 05:26:19
|
the only one I actually care for atm is faster_decoding since im more interested in using it for video sequences
|
|
2025-05-05 05:27:39
|
I imagine other people would have other interests tho
|
|
2025-05-05 05:36:24
|
comparing `cjxl -e 6 -d 0.5 --faster_decoding=4` to `-c:v liboapv -preset fast`
```ps
โ /tmp l out*
Permissions Size User Date Modified Name
.rw-r--r-- 351M quack 5 May 14:21 out.apv
.rw-r--r-- 394M quack 5 May 14:29 outjxl.mkv
``````
apv mpv fps avg: 490fps
jxl mpv fps avg: 130fps
``````
โ /tmp hyperfine --runs 5 'ffmpeg -i out.mkv -f null -' 'ffmpeg -i out.apv -f null -'
Benchmark 1: ffmpeg -i out.mkv -f null -
Time (mean ยฑ ฯ): 19.710 s ยฑ 0.198 s [User: 102.234 s, System: 5.019 s]
Range (min โฆ max): 19.493 s โฆ 19.973 s 5 runs
Benchmark 2: ffmpeg -i out.apv -f null -
Time (mean ยฑ ฯ): 2.870 s ยฑ 0.053 s [User: 24.793 s, System: 0.605 s]
Range (min โฆ max): 2.819 s โฆ 2.942 s 5 runs
Summary
ffmpeg -i out.apv -f null - ran
6.87 ยฑ 0.14 times faster than ffmpeg -i out.mkv -f null -
```
|
|
2025-05-05 05:46:16
|
apv
```
Video Score for 1439 frames
Mean: 85.69301367
Median: 86.31131066
Std Dev: 1.62214221
5th Percentile: 83.13180947
95th Percentile: 86.92562095
```
|
|
2025-05-05 06:03:17
|
jxl
```
Video Score for 1439 frames
Mean: 87.88833392
Median: 87.44315682
Std Dev: 1.54705227
5th Percentile: 86.00371500
95th Percentile: 90.30870678
```
|
|
2025-05-05 06:03:36
|
can for sure drop the distance a bit on jxl , but all in all, not bad
|
|
2025-05-05 06:49:18
|
for comparison to prores standard,
```
size: 692M
ffmpeg time: 2.802
mpv: 55fps
Video Score for 1439 frames
Mean: 90.97257053
Median: 90.35808189
Std Dev: 1.33401068
5th Percentile: 89.82873741
95th Percentile: 93.17081174
```
|
|
2025-05-05 06:50:14
|
<@167354761270525953> APV is actually not that bad at all
|
|
2025-05-05 06:50:30
|
I think jxl can probably be tuned to out do it, but for now, it's solid
|
|
|
RaveSteel
|
2025-05-05 06:50:35
|
Very nice
|
|
2025-05-05 06:50:55
|
If it can be competive with prores on mobile then that's all I could wish for
|
|
2025-05-05 06:54:25
|
And 10bit
|
|
2025-05-05 06:54:31
|
and LOG
|
|
2025-05-05 06:54:36
|
lol
|
|
|
Quackdoc
I think jxl can probably be tuned to out do it, but for now, it's solid
|
|
2025-05-05 06:56:14
|
Maybe when JXL at some point supports scrubbing etc.
|
|
|
Quackdoc
|
2025-05-05 07:01:48
|
yeah, I will likely still continue to use jxl since thats how my workflow is setup (I just mux it into a mkv file, so my NLE is fast) but I could see this being a good competitor
|
|
|
RaveSteel
|
2025-05-05 07:02:33
|
Your NLE supports JXL in MKV?
|
|
|
Quackdoc
|
2025-05-05 07:04:24
|
I use olive which supports what ffmpeg supports
|
|
2025-05-05 07:04:45
|
I just have a small patch to add jxl as an accepted riff type
|
|
2025-05-05 07:05:32
|
```diff
diff --git a/libavformat/riff.c b/libavformat/riff.c
index df7e9df31b..16e37fb557 100644
--- a/libavformat/riff.c
+++ b/libavformat/riff.c
@@ -34,6 +34,7 @@
* files use it as well.
*/
const AVCodecTag ff_codec_bmp_tags[] = {
+ { AV_CODEC_ID_JPEGXL, MKTAG('J', 'X', 'L', ' ') },
{ AV_CODEC_ID_H264, MKTAG('H', '2', '6', '4') },
{ AV_CODEC_ID_H264, MKTAG('h', '2', '6', '4') },
{ AV_CODEC_ID_H264, MKTAG('X', '2', '6', '4') },
```
|
|
|
RaveSteel
|
2025-05-05 07:06:43
|
Nice nice. I hope that a new FFmpeg version with the JXL commits releases soon, it's been a while since they have been merged
|
|
|
Quackdoc
|
2025-05-05 07:07:52
|
what os?
|
|
|
RaveSteel
|
2025-05-05 07:09:25
|
In general
|
|
2025-05-05 07:09:40
|
<@853026420792360980>'s patches were merged in january I believe
|
|
|
Quackdoc
|
2025-05-05 07:10:05
|
what were the patches for? iirc ffmpeg should have had a release since then
|
|
|
RaveSteel
|
2025-05-05 07:10:29
|
The patches introduced libjxl_anim
|
|
2025-05-05 07:10:45
|
But these patches have not been included in releases since
|
|
2025-05-05 07:11:30
|
You currently need to compile from source to get it
|
|
|
RaveSteel
The patches introduced libjxl_anim
|
|
2025-05-05 07:13:08
|
```
ffmpeg version N-118321-g4c96d6bf75 Copyright (c) 2000-2025 the FFmpeg developers
built with gcc 14.2.1 (GCC) 20240910
configuration: --enable-libjxl
libavutil 59. 55.100 / 59. 55.100
libavcodec 61. 31.101 / 61. 31.101
libavformat 61. 9.106 / 61. 9.106
libavdevice 61. 4.100 / 61. 4.100
libavfilter 10. 6.101 / 10. 6.101
libswscale 8. 13.100 / 8. 13.100
libswresample 5. 4.100 / 5. 4.100
Encoder libjxl_anim [libjxl JPEG XL animated]:
General capabilities: dr1 threads
Threading capabilities: other
Supported pixel formats: rgb24 rgba rgb48le rgba64le rgbf32le rgbaf32le gray ya8 gray16le ya16le grayf32le
libjxl AVOptions:
-effort <int> E..V....... Encoding effort (from 1 to 9) (default 7)
-distance <float> E..V....... Maximum Butteraugli distance (quality setting, lower = better, zero = lossless, default 1.0) (from -1 to 15) (default -1)
-modular <int> E..V....... Force modular mode (from 0 to 1) (default 0)
-xyb <int> E..V....... Use XYB-encoding for lossy images (from 0 to 1) (default 1)
```
|
|
|
Quackdoc
|
2025-05-05 07:13:10
|
ah rip
|
|
|
RaveSteel
|
2025-05-05 07:13:59
|
It's very usable already. If only JPEG transcoding were supported
|
|
|
jonnyawsom3
|
|
RaveSteel
Maybe when JXL at some point supports scrubbing etc.
|
|
2025-05-06 01:26:54
|
It already does, it's up to viewers to implement it. IIRC VIPS example viewer supports it
|
|
|
Quackdoc
comparing `cjxl -e 6 -d 0.5 --faster_decoding=4` to `-c:v liboapv -preset fast`
```ps
โ /tmp l out*
Permissions Size User Date Modified Name
.rw-r--r-- 351M quack 5 May 14:21 out.apv
.rw-r--r-- 394M quack 5 May 14:29 outjxl.mkv
``````
apv mpv fps avg: 490fps
jxl mpv fps avg: 130fps
``````
โ /tmp hyperfine --runs 5 'ffmpeg -i out.mkv -f null -' 'ffmpeg -i out.apv -f null -'
Benchmark 1: ffmpeg -i out.mkv -f null -
Time (mean ยฑ ฯ): 19.710 s ยฑ 0.198 s [User: 102.234 s, System: 5.019 s]
Range (min โฆ max): 19.493 s โฆ 19.973 s 5 runs
Benchmark 2: ffmpeg -i out.apv -f null -
Time (mean ยฑ ฯ): 2.870 s ยฑ 0.053 s [User: 24.793 s, System: 0.605 s]
Range (min โฆ max): 2.819 s โฆ 2.942 s 5 runs
Summary
ffmpeg -i out.apv -f null - ran
6.87 ยฑ 0.14 times faster than ffmpeg -i out.mkv -f null -
```
|
|
2025-05-06 01:28:42
|
It'd take quite a bit of storage, but I don't suppose you could try lossless FD4? If I recall we made it even faster than lossy
|
|
|
A homosapien
|
2025-05-06 01:34:44
|
Well for lossless sometimes FD3 is faster. Depends on the image and PC.
|
|
|
jonnyawsom3
|
|
A homosapien
Well for lossless sometimes FD3 is faster. Depends on the image and PC.
|
|
2025-05-06 01:48:57
|
Did we ever actually test against the same image? To see if it's only hardware or image content
|
|
|
A homosapien
|
2025-05-06 01:49:14
|
I'm not sure
|
|
|
Quackdoc
|
|
It'd take quite a bit of storage, but I don't suppose you could try lossless FD4? If I recall we made it even faster than lossy
|
|
2025-05-06 02:04:48
|
id have to take some time tommorow to do it and find a scratch disk
|
|
2025-05-06 02:04:51
|
but ill try
|
|
|
username
|
2025-05-06 02:11:43
|
does anyone know a good way (or anyway really) to visualize the allocation of the 4 VP8 segments in lossy WebP? aka this: https://www.slideshare.net/slideshow/the-vp8-video-codec/8468382#70
|
|
2025-05-06 02:12:55
|
I think `-sns` in cwebp might be responsible for deciding how to split up the image but I have no way to visualize it
|
|
|
spider-mario
|
2025-05-11 02:35:30
|
https://www.nature.com/articles/s42256-025-01033-7
> Here we present LMCompress, a new method that leverages large models to compress data. LMCompress shatters all previous lossless compression records on four media types: text, images, video and audio. It halves the compression rates of JPEG-XL for images, FLAC for audio and H.264 for video, and it achieves nearly one-third of the compression rates of zpaq for text.
๐ค
|
|
|
_wb_
|
2025-05-11 02:40:25
|
Halves the rates for lossless? I have a hard time believing that...
|
|
2025-05-11 02:41:49
|
That is, for photographic images, I don't think there's that much room for improvement left for lossless compression.
|
|
|
Tirr
|
2025-05-11 02:42:34
|
does it mean we now have a decoder that sizes tens of gigabytes?
|
|
|
jonnyawsom3
|
|
spider-mario
https://www.nature.com/articles/s42256-025-01033-7
> Here we present LMCompress, a new method that leverages large models to compress data. LMCompress shatters all previous lossless compression records on four media types: text, images, video and audio. It halves the compression rates of JPEG-XL for images, FLAC for audio and H.264 for video, and it achieves nearly one-third of the compression rates of zpaq for text.
๐ค
|
|
2025-05-11 03:10:14
|
I read that and their previous paper the other day. They have no actual documentation of encoder settings or encoder version. Just linking to previous papers that still don't show any numbers
|
|
2025-05-11 03:24:37
|
|
|
2025-05-11 03:25:27
|
They just link back to the original paper for JPEG XL
|
|
|
CrushedAsian255
|
|
spider-mario
https://www.nature.com/articles/s42256-025-01033-7
> Here we present LMCompress, a new method that leverages large models to compress data. LMCompress shatters all previous lossless compression records on four media types: text, images, video and audio. It halves the compression rates of JPEG-XL for images, FLAC for audio and H.264 for video, and it achieves nearly one-third of the compression rates of zpaq for text.
๐ค
|
|
2025-05-11 05:10:14
|
So is it getting an ai model to predict the next token and storing differences?
|
|