X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fexamine_ffmpeg_subtitles_job.cc;h=b9d5f54e5d09385f21406a52683dd4cfbe60abd7;hb=351942d335db261ac6fe54f2f8a3f439fef22d47;hp=9197bdcbd58c1398715be8fd25c5345a57c187a0;hpb=4fb4b414b70cb38d405b6c3dd6c12b6a4d918d40;p=dcpomatic.git diff --git a/src/lib/examine_ffmpeg_subtitles_job.cc b/src/lib/examine_ffmpeg_subtitles_job.cc index 9197bdcbd..b9d5f54e5 100644 --- a/src/lib/examine_ffmpeg_subtitles_job.cc +++ b/src/lib/examine_ffmpeg_subtitles_job.cc @@ -58,8 +58,6 @@ ExamineFFmpegSubtitlesJob::json_name () const void ExamineFFmpegSubtitlesJob::run () { - dcpomatic_sleep (15); - int64_t const len = _file_group.length (); while (true) { int r = av_read_frame (_format_context, &_packet); @@ -84,15 +82,18 @@ ExamineFFmpegSubtitlesJob::run () /* sub_p looks up into a BGRA palette which is here (i.e. first byte B, second G, third R, fourth A) */ - uint32_t const * palette = (uint32_t *) rect->pict.data[1]; + uint8_t const * palette = rect->pict.data[1]; #else /* sub_p looks up into a BGRA palette which is here (i.e. first byte B, second G, third R, fourth A) */ - uint32_t const * palette = (uint32_t *) rect->data[1]; + uint8_t const * palette = rect->data[1]; #endif - RGBA c ((palette[i] & 0xff0000) >> 16, (palette[i] & 0xff00) >> 8, palette[i] & 0xff, (palette[i] & 0xff000000) >> 24); - _content->subtitle_stream()->set_colour (c, c); + for (int j = 0; j < rect->nb_colors; ++j) { + RGBA c (palette[2], palette[1], palette[0], palette[3]); + _content->subtitle_stream()->set_colour (c, c); + palette += 4; + } } } }