Skip to content

Commit

Permalink
WIP: change value codecs output_bit_depth
Browse files Browse the repository at this point in the history
  • Loading branch information
Jamaika1 authored Nov 26, 2024
1 parent 70c09a5 commit e691984
Showing 1 changed file with 22 additions and 16 deletions.
38 changes: 22 additions & 16 deletions examples/heif_enc.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1188,36 +1188,42 @@ int main(int argc, char** argv)

// ==============================================================================

//#if (UVG_BIT_DEPTH == 10) || (KVZ_BIT_DEPTH == 10) || HAVE_VVENC
/*#if (defined(KVZ_BIT_DEPTH) && KVZ_BIT_DEPTH == 8) || (defined(UVG_BIT_DEPTH) && UVG_BIT_DEPTH == 8) || \
HAVE_VVENC
if ((output_bit_depth == 8) && ((encoderId[0] == 'k' && encoderId[1] == 'v') ||
(encoderId[0] == 'u' && encoderId[1] == 'v'))) {
output_bit_depth = 8;
heif_encoder_set_parameter(encoder, "chroma", "420");
printf("Warming: For kvazaar, uvg266 is always output yuv420p\n");
} else {
std::cerr << "Output bitdepth doesn't 8bit.\n";
}
#endif*/
/*#if (defined(KVZ_BIT_DEPTH) && KVZ_BIT_DEPTH == 10) || (defined(UVG_BIT_DEPTH) && UVG_BIT_DEPTH == 10) || \
HAVE_VVENC*/
if ((output_bit_depth == 10) && ((encoderId[0] == 'k' && encoderId[1] == 'v') ||
(encoderId[0] == 'u' && encoderId[1] == 'v') ||
(encoderId[0] == 'v' && encoderId[1] == 'v'))) {
output_bit_depth = 10;
heif_encoder_set_parameter(encoder, "chroma", "420");
printf("Warming: For kvazaar, uvg266, vvenc is always output yuv420p10le\n");
} else {
std::cerr << "Output bitdepth doesn't 10bit.\n";
}
/*#else
if ((output_bit_depth == 8) && ((encoderId[0] == 'k' && encoderId[1] == 'v') ||
(encoderId[0] == 'u' && encoderId[1] == 'v'))) {
output_bit_depth = 10;
heif_encoder_set_parameter(encoder, "chroma", "420");
printf("Warming: For kvazaar, uvg266 is always output yuv420p\n");
}
#endif*/
//#endif
//#if HAVE_OPENJPEG_ENCODER || HAVE_OPENJPH_ENCODER
if ((output_bit_depth > 8) && ((encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'e') ||
if ((output_bit_depth == 8) && ((encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'e') ||
(encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'h'))) {
output_bit_depth = 16;
output_bit_depth = 8;
heif_encoder_set_parameter(encoder, "chroma", "444");
printf("Warming: Don't use jpeg image 8bit only image rgb48(a). openjpeg is always output rgb48(a)\n"
printf("Warming: Use image rgb24(a). openjpeg is always output rgb24(a)\n"
"libheif has no added functions openjpeg2000 in yuv420/422/444 10/12bit\n");
}
//#else
if ((output_bit_depth == 8) && ((encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'e') ||
if ((output_bit_depth > 8) && ((encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'e') ||
(encoderId[4] == 'j' && encoderId[5] == 'p' && encoderId[6] == 'h'))) {
output_bit_depth = 8;
output_bit_depth = 16;
heif_encoder_set_parameter(encoder, "chroma", "444");
printf("Warming: Use image rgb24(a). openjpeg is always output rgb24(a)\n"
printf("Warming: Don't use jpeg image 8bit only image rgb48(a). openjpeg is always output rgb48(a)\n"
"libheif has no added functions openjpeg2000 in yuv420/422/444 10/12bit\n");
}
//#endif
Expand Down

0 comments on commit e691984

Please sign in to comment.