diff --git a/vp10/decoder/decodeframe.c b/vp10/decoder/decodeframe.c index c0fbc4949..2bfedf638 100644 --- a/vp10/decoder/decodeframe.c +++ b/vp10/decoder/decodeframe.c @@ -2109,8 +2109,8 @@ static size_t read_uncompressed_header(VP10Decoder *pbi, setup_segmentation_dequant(cm); #if CONFIG_MISC_FIXES - cm->tx_mode = (xd->lossless[0]) ? ONLY_4X4 - : read_tx_mode(rb); + cm->tx_mode = (!cm->seg.enabled && xd->lossless[0]) ? ONLY_4X4 + : read_tx_mode(rb); cm->reference_mode = read_frame_reference_mode(cm, rb); #endif diff --git a/vp10/encoder/bitstream.c b/vp10/encoder/bitstream.c index 477752aa7..d4b8c36db 100644 --- a/vp10/encoder/bitstream.c +++ b/vp10/encoder/bitstream.c @@ -1261,7 +1261,7 @@ static void write_uncompressed_header(VP10_COMP *cpi, encode_quantization(cm, wb); encode_segmentation(cm, xd, wb); #if CONFIG_MISC_FIXES - if (xd->lossless[0]) + if (!cm->seg.enabled && xd->lossless[0]) cm->tx_mode = TX_4X4; else write_txfm_mode(cm->tx_mode, wb);