Yuxuan Shui (@yshui) commented about dlls/winegstreamer/wm_reader.c:
+ ERR("Failed to connect parser, hr %#lx.\n", hr); + goto out_shutdown_thread; + } + + assert(reader->stream_count == wg_parser_get_stream_count(reader->wg_parser)); + + for (i = 0; i < reader->stream_count; ++i) + { + struct wm_stream *stream = &reader->streams[i]; + struct wg_format format; + + stream->wg_stream = wg_parser_get_stream(reader->wg_parser, i); + stream->reader = reader; + wg_parser_stream_get_preferred_format(stream->wg_stream, &format); + if (stream->selection == WMT_ON) + wg_parser_stream_enable(stream->wg_stream, read_compressed ? &format : &stream->format); another question, in `init_stream`, `stream->format` is initialized by `wg_parser_stream_get_preferred_format(stream->wg_stream, &stream->format);` ([this line](https://gitlab.winehq.org/wine/wine/-/merge_requests/4449/diffs?commit_id=ef...))
where is `stream->format` initialized in `reinit_stream`? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/4449#note_64324