Random test failure: input decoder has no valid ->decoder_decode
Reported by @robUx4:
https://code.videolan.org/chub/vlc/-/jobs/1211470
[0000557c7626f520] test_input_decoder_mock interface: - Running scenario 3
[0000557c76271140] main player debug: creating audio output
[00007ffd91a02508] main generic debug: looking for audio output module matching "dummy": 4 candidates
[00007ffd91a02508] main generic debug: using audio output module "adummy"
[0000557c76271140] main player debug: keeping audio output
[0000557c76273760] main input debug: Creating an input for 'dummy'
[0000557c76273760] main input debug: using timeshift granularity of 50 MiB
[0000557c76273760] main input debug: using default timeshift path
[0000557c76273760] main input debug: `mock://video_track_count=1;length=100000000000;video_width=800;video_height=600' gives access `mock' demux `any' path `video_track_count=1;length=100000000000;video_width=800;video_height=600'
[00007f7fd40010e0] main access debug: creating access: mock://video_track_count=1;length=100000000000;video_width=800;video_height=600
[00007f7fdf203888] main generic debug: looking for access module matching "mock": 1 candidates
[0000557c76273760] main input debug: selecting program id=0
[0000557c76273760] main input debug: ES track added: 'video/0' (fourcc: 'I420')
[00007f7fdf203888] main generic debug: using access module "mock"
[00007f7fdf203538] main generic debug: looking for video decoder module matching "test_input_decoder_mock": 11 candidates
[00007f7fd4001b30] main decoder debug: vout: none found
[00007f7fd40049e0] main video output debug: Deinterlacing available
[00007f7fd40049e0] main video output debug: deinterlace -1, mode auto, is_needed 0
[00007f7fdf203138] main generic debug: looking for vout window module matching "any": 7 candidates
[00007f7fdf203138] main generic debug: using vout window module "test_input_decoder_mock"
[00007f7fdf2030e8] main generic debug: looking for inhibit module matching "any": 2 candidates
[00007f7fdf2030e8] main generic debug: using inhibit module "xdg"
[00007f7fdf2032d8] main generic debug: looking for decoder device module matching "test_input_decoder_mock": 1 candidates
[00007f7fdf2032d8] main generic debug: using decoder device module "test_input_decoder_mock"
[00007f7fd4001b30] test_input_decoder_mock decoder debug: Decoder chroma I420 -> I420 size 800x600
[00007f7fdf203538] main generic debug: using video decoder module "test_input_decoder_mock"
[0000557c76273760] main input debug: ES track selected: 'video/0' (fourcc: 'I420')
[00007f7fdf203a88] main generic debug: looking for meta reader module matching "any": 1 candidates
[00007f7fdf203a88] main generic debug: no meta reader modules matched with name any
[0000557c76273760] main input debug: `mock://video_track_count=1;length=100000000000;video_width=800;video_height=600' successfully opened
[0000557c76273760] main input debug: program(0): using clock source: 'audio'
[0000557c76273760] main input debug: Buffering 0%
[0000557c76273760] main input debug: Buffering 13%
test_src_input_decoder: ../../../test/src/input/decoder/input_decoder.c:89: DecoderDecode: Assertion `scenario->decoder_decode != NULL' failed.
The test scenario definition is
{
/* Check that stream output is also flushed:
- the test cannot work if the stream_out filter is not added
- sout_filter_send(), signal the interface that it can flush
- the interface change player position to trigger a flush
- the flush is signaled to the stream_out filter
- the stream_out filter signal the end of the test */
.source = source_800_600,
.sout = "#" MODULE_STRING,
.sout_filter_send = sout_filter_send,
.sout_filter_flush = sout_filter_flush,
.interface_setup = interface_setup_check_flush,
},
So actually, no decoder should have ever been started. In the logs above, the initialization of the stream output is missing, which indicates an issue there.