What is "yuvj420" color space ?

2,642 views
Skip to first unread message

Alexey Eromenko

unread,
Jul 30, 2016, 11:33:52 AM7/30/16
to codec...@webmproject.org
Some files seems to be encoded with yuvj420 color.

Any ideas on what the "j" means ?

Wikipedia doesn't seem to include such knowledge:

And top Google results are useless.

Thanks in advance,
--
-Alexey Eromenko "Technologov"

Pieter Kapsenberg

unread,
Jul 30, 2016, 1:09:16 PM7/30/16
to codec...@webmproject.org

It means the yuv values have full range, 0..255, as used in jpeg files. Most video uses so called studio swing, with Y 16..235, UV 16..240.
Using the wrong range when converting to RGB can cause the video to look faded, or artificially color boosted.


--
You received this message because you are subscribed to the Google Groups "Codec Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to codec-devel...@webmproject.org.
To post to this group, send email to codec...@webmproject.org.
Visit this group at https://groups.google.com/a/webmproject.org/group/codec-devel/.
For more options, visit https://groups.google.com/a/webmproject.org/d/optout.

Krishna

unread,
Jul 30, 2016, 1:13:14 PM7/30/16
to codec...@webmproject.org
Here's some information from the VideoLAN wiki : https://wiki.videolan.org/YUV/#YUV_4:2:0_.28I420.2FJ420.2FYV12.29
--
Regards,
Krishna

Alexey Eromenko

unread,
Jul 30, 2016, 1:46:40 PM7/30/16
to codec...@webmproject.org

Does it make any sense of artificially reducing color space from 8-bits to around 7.7 or 7.8 bits? (in YUV420)

30 Июл 2016 г. 20:13 пользователь "Krishna" <krish...@gmail.com> написал:

Pieter Kapsenberg

unread,
Jul 30, 2016, 1:51:42 PM7/30/16
to codec...@webmproject.org

Not really, it is a legacy thing. Analog video signals sometimes used to code things in lines beyond the screen in super-white or super-black, like TeleText etc.

Alexey Eromenko

unread,
Jul 30, 2016, 2:08:50 PM7/30/16
to codec...@webmproject.org

If so, maybe limit new formats like AV1 to use only "yuvj" ?
This will improve precion slightly.

i-mode:
Plus things like interlaced (i-mode) mode doesn't seem to make much sense, at least to me.

Does it?

Cutting old / legacy modes can make the codec simpler to implement, understand and reduce amount of bugs. (plus maybe improve quality slightly)

30 Июл 2016 г. 20:51 пользователь "'Pieter Kapsenberg' via Codec Developers" <codec...@webmproject.org> написал:

Ronald S. Bultje

unread,
Jul 30, 2016, 2:10:06 PM7/30/16
to Codec Developers

You don't want to convert input since conversion is not lossless.

Ronald

Pieter Kapsenberg

unread,
Jul 30, 2016, 2:11:23 PM7/30/16
to codec...@webmproject.org

You have to keep in mind there is a lot of hardware out there like digital TVs that expects the values to adhere to these existing standards. You can't just change it at will. If you want more fidelity you can use 10 bit data, see the BT.2020 standard.

Alexey Eromenko

unread,
Jul 30, 2016, 2:13:24 PM7/30/16
to codec...@webmproject.org

>You don't want to convert input since conversion is not lossless.

up or down value by one is visually lossless. And for a lossy codec that's acceptable tradeoff.

Alexey Eromenko

unread,
Jul 30, 2016, 2:15:58 PM7/30/16
to codec...@webmproject.org

I thought that digital TVs use RGB888 color space, just like PC does, and yuvj fits better for the PC use case.

30 Июл 2016 г. 21:11 пользователь "'Pieter Kapsenberg' via Codec Developers" <codec...@webmproject.org> написал:

Krishna

unread,
Jul 30, 2016, 2:30:55 PM7/30/16
to codec...@webmproject.org
Were you thinking of reducing the bitrate when you asked "Does it make any sense of artificially reducing color space from 8-bits to around 7.7 or 7.8 bits? (in YUV420)"?

In my understanding, your ideas can be achieved in the commonly used codec pipeline too which are trying to do the same thing -- reduce the bits/pixels while maintaining acceptable quality. Adaptive quantization (different value per macroblock), just-noticeable-differences, perceptual tuning are all techniques (amongst several more) to achieve what you said i.e., "up or down value by one is visually lossless. And for a lossy codec that's acceptable tradeoff." . Doing this really well while considering the rate-distortion tradeoff will also achieve your idea of 7.8 bits/pixels (actually much better) without having to play with the input and losing precision on the colors. 

 

Alexey Eromenko

unread,
Jul 30, 2016, 2:44:00 PM7/30/16
to codec...@webmproject.org

>Were you thinking of reducing the bitrate when you asked "Does it make any sense of artificially reducing color space from 8-bits to around 7.7 or 7.8 bits? (in YUV420)"?

Nope, I was thinking about increasing quality a bit, from 224 possible values (7.8 bits) up to 256 values per channel (8 bits).

Reply all
Reply to author
Forward
0 new messages