Re: [FFmpeg-devel] [PATCH 5/7] avcodec/speedhq: Avoid reversing BE codes for LE bitstream reader

2020-10-12 Thread Paul B Mahol
On Mon, Oct 12, 2020 at 10:12:15AM +0200, Andreas Rheinhardt wrote:
> Signed-off-by: Andreas Rheinhardt 
> ---
>  libavcodec/speedhq.c | 41 +
>  1 file changed, 9 insertions(+), 32 deletions(-)

lgtm
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-devel] [PATCH 5/7] avcodec/speedhq: Avoid reversing BE codes for LE bitstream reader

2020-10-12 Thread Andreas Rheinhardt
Signed-off-by: Andreas Rheinhardt 
---
 libavcodec/speedhq.c | 41 +
 1 file changed, 9 insertions(+), 32 deletions(-)

diff --git a/libavcodec/speedhq.c b/libavcodec/speedhq.c
index 5759cdb036..30a6924321 100644
--- a/libavcodec/speedhq.c
+++ b/libavcodec/speedhq.c
@@ -558,40 +558,17 @@ static av_cold void compute_alpha_vlcs(void)
   level_symbols, 2, 2, 288);
 }
 
-static uint32_t reverse(uint32_t num, int bits)
-{
-return bitswap_32(num) >> (32 - bits);
-}
-
-static void reverse_code(const uint16_t *code, const uint8_t *bits,
- uint16_t *reversed_code, int num_entries)
-{
-int i;
-for (i = 0; i < num_entries; i++) {
-reversed_code[i] = reverse(code[i], bits[i]);
-}
-}
-
 static av_cold void speedhq_static_init(void)
 {
-uint16_t ff_mpeg12_vlc_dc_lum_code_reversed[12];
-uint16_t ff_mpeg12_vlc_dc_chroma_code_reversed[12];
-
-/* Exactly the same as MPEG-2, except little-endian. */
-reverse_code(ff_mpeg12_vlc_dc_lum_code,
- ff_mpeg12_vlc_dc_lum_bits,
- ff_mpeg12_vlc_dc_lum_code_reversed,
- 12);
-INIT_LE_VLC_STATIC(_lum_vlc_le, DC_VLC_BITS, 12,
-   ff_mpeg12_vlc_dc_lum_bits, 1, 1,
-   ff_mpeg12_vlc_dc_lum_code_reversed, 2, 2, 512);
-reverse_code(ff_mpeg12_vlc_dc_chroma_code,
- ff_mpeg12_vlc_dc_chroma_bits,
- ff_mpeg12_vlc_dc_chroma_code_reversed,
- 12);
-INIT_LE_VLC_STATIC(_chroma_vlc_le, DC_VLC_BITS, 12,
-   ff_mpeg12_vlc_dc_chroma_bits, 1, 1,
-   ff_mpeg12_vlc_dc_chroma_code_reversed, 2, 2, 514);
+/* Exactly the same as MPEG-2, except for a little-endian reader. */
+INIT_CUSTOM_VLC_STATIC(_lum_vlc_le, DC_VLC_BITS, 12,
+   ff_mpeg12_vlc_dc_lum_bits, 1, 1,
+   ff_mpeg12_vlc_dc_lum_code, 2, 2,
+   INIT_VLC_OUTPUT_LE, 512);
+INIT_CUSTOM_VLC_STATIC(_chroma_vlc_le, DC_VLC_BITS, 12,
+   ff_mpeg12_vlc_dc_chroma_bits, 1, 1,
+   ff_mpeg12_vlc_dc_chroma_code, 2, 2,
+   INIT_VLC_OUTPUT_LE, 514);
 
 ff_rl_init(_speedhq, speedhq_static_rl_table_store);
 INIT_2D_VLC_RL(rl_speedhq, 674, INIT_VLC_LE);
-- 
2.25.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".