gitextract_nyue42gt/ ├── .dockerignore ├── .gitattributes ├── .github/ │ └── workflows/ │ ├── codeql.yml │ └── msvc.yml ├── .gitignore ├── CHANGE_LOG.md ├── CMakeLists.txt ├── CMakePresets.json ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── TODO.md ├── coverage.bat ├── docker/ │ └── Dockerfile ├── docs/ │ ├── GCC.txt │ ├── ProblemSolutions.txt │ ├── git-commands.txt │ ├── glslValidator.txt │ ├── glslValidator_MoltenVK.txt │ └── quic.md ├── manifest.manifest ├── wolf/ │ ├── .clang-format │ ├── .clang-tidy │ ├── .gitignore │ ├── CMakeLists.txt │ ├── DISABLE_ANALYSIS_BEGIN │ ├── DISABLE_ANALYSIS_END │ ├── cmake/ │ │ ├── media.cmake │ │ ├── ml.cmake │ │ ├── stream.cmake │ │ ├── system.cmake │ │ └── vcpkg.cmake │ ├── media/ │ │ ├── ffmpeg/ │ │ │ ├── w_av_config.cpp │ │ │ ├── w_av_config.hpp │ │ │ ├── w_av_format.cpp │ │ │ ├── w_av_format.hpp │ │ │ ├── w_av_frame.cpp │ │ │ ├── w_av_frame.hpp │ │ │ ├── w_av_packet.cpp │ │ │ ├── w_av_packet.hpp │ │ │ ├── w_decoder.cpp │ │ │ ├── w_decoder.hpp │ │ │ ├── w_encoder.cpp │ │ │ ├── w_encoder.hpp │ │ │ ├── w_ffmpeg.cpp │ │ │ ├── w_ffmpeg.hpp │ │ │ ├── w_ffmpeg_ctx.cpp │ │ │ └── w_ffmpeg_ctx.hpp │ │ ├── gst/ │ │ │ ├── audio/ │ │ │ │ ├── w_audio_format.cpp │ │ │ │ ├── w_audio_format.hpp │ │ │ │ ├── w_audio_info.cpp │ │ │ │ └── w_audio_info.hpp │ │ │ ├── core/ │ │ │ │ ├── w_buffer.cpp │ │ │ │ ├── w_buffer.hpp │ │ │ │ ├── w_bus.cpp │ │ │ │ ├── w_bus.hpp │ │ │ │ ├── w_caps.cpp │ │ │ │ ├── w_caps.hpp │ │ │ │ ├── w_clock.cpp │ │ │ │ ├── w_clock.hpp │ │ │ │ ├── w_element.cpp │ │ │ │ ├── w_element.hpp │ │ │ │ ├── w_element_factory.cpp │ │ │ │ ├── w_element_factory.hpp │ │ │ │ ├── w_format.cpp │ │ │ │ ├── w_format.hpp │ │ │ │ ├── w_mainloop.cpp │ │ │ │ ├── w_mainloop.hpp │ │ │ │ ├── w_message.cpp │ │ │ │ ├── w_message.hpp │ │ │ │ ├── w_nonowning.cpp │ │ │ │ ├── w_nonowning.hpp │ │ │ │ ├── w_pad.cpp │ │ │ │ ├── w_pad.hpp │ │ │ │ ├── w_pipeline.cpp │ │ │ │ ├── w_pipeline.hpp │ │ │ │ ├── w_refptr.cpp │ │ │ │ ├── w_refptr.hpp │ │ │ │ ├── w_signal_handler.cpp │ │ │ │ ├── w_signal_handler.hpp │ │ │ │ ├── w_structure.cpp │ │ │ │ └── w_structure.hpp │ │ │ ├── elements/ │ │ │ │ ├── w_element_aacparse.cpp │ │ │ │ ├── w_element_aacparse.hpp │ │ │ │ ├── w_element_appsrc.cpp │ │ │ │ ├── w_element_appsrc.hpp │ │ │ │ ├── w_element_audioconvert.cpp │ │ │ │ ├── w_element_audioconvert.hpp │ │ │ │ ├── w_element_audioresample.cpp │ │ │ │ ├── w_element_audioresample.hpp │ │ │ │ ├── w_element_autovideosink.cpp │ │ │ │ ├── w_element_autovideosink.hpp │ │ │ │ ├── w_element_avencflv.cpp │ │ │ │ ├── w_element_avencflv.hpp │ │ │ │ ├── w_element_capsfilter.cpp │ │ │ │ ├── w_element_capsfilter.hpp │ │ │ │ ├── w_element_filesink.cpp │ │ │ │ ├── w_element_filesink.hpp │ │ │ │ ├── w_element_flvmux.cpp │ │ │ │ ├── w_element_flvmux.hpp │ │ │ │ ├── w_element_h264parse.cpp │ │ │ │ ├── w_element_h264parse.hpp │ │ │ │ ├── w_element_mp4mux.cpp │ │ │ │ ├── w_element_mp4mux.hpp │ │ │ │ ├── w_element_openh264enc.cpp │ │ │ │ ├── w_element_openh264enc.hpp │ │ │ │ ├── w_element_queue.cpp │ │ │ │ ├── w_element_queue.hpp │ │ │ │ ├── w_element_rtmpsink.cpp │ │ │ │ ├── w_element_rtmpsink.hpp │ │ │ │ ├── w_element_rtph264pay.cpp │ │ │ │ ├── w_element_rtph264pay.hpp │ │ │ │ ├── w_element_udpsink.cpp │ │ │ │ ├── w_element_udpsink.hpp │ │ │ │ ├── w_element_videoconvert.cpp │ │ │ │ ├── w_element_videoconvert.hpp │ │ │ │ ├── w_element_videoscale.cpp │ │ │ │ ├── w_element_videoscale.hpp │ │ │ │ ├── w_element_videotestsrc.cpp │ │ │ │ ├── w_element_videotestsrc.hpp │ │ │ │ ├── w_element_voaacenc.cpp │ │ │ │ ├── w_element_voaacenc.hpp │ │ │ │ ├── w_element_wasapisrc.cpp │ │ │ │ ├── w_element_wasapisrc.hpp │ │ │ │ ├── w_element_x264enc.cpp │ │ │ │ └── w_element_x264enc.hpp │ │ │ ├── internal/ │ │ │ │ ├── w_common.cpp │ │ │ │ ├── w_common.hpp │ │ │ │ ├── w_utils.cpp │ │ │ │ ├── w_utils.hpp │ │ │ │ ├── w_wrapper.cpp │ │ │ │ └── w_wrapper.hpp │ │ │ ├── video/ │ │ │ │ ├── w_video_format.cpp │ │ │ │ ├── w_video_format.hpp │ │ │ │ ├── w_video_info.cpp │ │ │ │ └── w_video_info.hpp │ │ │ ├── w_application.cpp │ │ │ ├── w_application.hpp │ │ │ ├── w_flow.cpp │ │ │ └── w_flow.hpp │ │ ├── test/ │ │ │ ├── avframe.hpp │ │ │ ├── ffmpeg.hpp │ │ │ ├── gstreamer.hpp │ │ │ ├── image.hpp │ │ │ └── openal.hpp │ │ ├── w_image.cpp │ │ ├── w_image.hpp │ │ ├── w_image_data.cpp │ │ ├── w_image_data.hpp │ │ ├── w_openal.cpp │ │ └── w_openal.hpp │ ├── ml/ │ │ ├── nudity_detection/ │ │ │ ├── w_nudity_detection.cpp │ │ │ └── w_nudity_detection.hpp │ │ ├── referee_ocr/ │ │ │ ├── salieri.h │ │ │ ├── w_image_processor.cpp │ │ │ ├── w_image_processor.hpp │ │ │ ├── w_ocr_engine.cpp │ │ │ ├── w_ocr_engine.hpp │ │ │ ├── w_read_video_frames.cpp │ │ │ ├── w_read_video_frames.hpp │ │ │ ├── w_referee.cpp │ │ │ ├── w_referee.hpp │ │ │ ├── w_soccer.cpp │ │ │ ├── w_soccer.hpp │ │ │ ├── w_utilities.cpp │ │ │ └── w_utilities.hpp │ │ ├── test/ │ │ │ ├── common_test_asset/ │ │ │ │ ├── soccer/ │ │ │ │ │ ├── .fill_stat_map │ │ │ │ │ ├── .initial_match_result_struct │ │ │ │ │ ├── .replace_team_names_with_most_similar_string │ │ │ │ │ ├── .replace_team_names_with_most_similar_string_0_9 │ │ │ │ │ ├── .set_config │ │ │ │ │ ├── .single_image_result_extraction │ │ │ │ │ ├── .update_match_data │ │ │ │ │ └── replace_team_names_with_most_similar_string.txt │ │ │ │ └── utilities/ │ │ │ │ ├── .get_env_boolean │ │ │ │ ├── .get_env_cv_rect │ │ │ │ ├── .get_env_float │ │ │ │ ├── .get_env_int │ │ │ │ ├── .get_env_string │ │ │ │ ├── .get_nearest_string_0_5 │ │ │ │ ├── .get_nearest_string_0_9 │ │ │ │ ├── .set_env │ │ │ │ ├── get_nearest_string.txt │ │ │ │ └── get_value_from_json_file_by_key.json │ │ │ ├── w_image_processor_test.hpp │ │ │ ├── w_ocr_engine_test.hpp │ │ │ ├── w_referee_test.hpp │ │ │ ├── w_soccer_test.hpp │ │ │ └── w_utilities_test.hpp │ │ ├── w_common.cpp │ │ └── w_common.hpp │ ├── protos/ │ │ └── raft.proto │ ├── stream/ │ │ ├── grpc/ │ │ │ ├── w_grpc_client.cpp │ │ │ ├── w_grpc_client.hpp │ │ │ ├── w_grpc_server.cpp │ │ │ └── w_grpc_server.hpp │ │ ├── http/ │ │ │ ├── w_http_server.cpp │ │ │ └── w_http_server.hpp │ │ ├── janus/ │ │ │ ├── w_janus_api_emc.cpp │ │ │ └── w_janus_api_emc.hpp │ │ ├── quic/ │ │ │ ├── datatypes/ │ │ │ │ ├── common_flags.hpp │ │ │ │ ├── w_address.cpp │ │ │ │ ├── w_address.hpp │ │ │ │ ├── w_alpn.hpp │ │ │ │ ├── w_credential_config.cpp │ │ │ │ ├── w_credential_config.hpp │ │ │ │ ├── w_new_connection_info.cpp │ │ │ │ ├── w_new_connection_info.hpp │ │ │ │ ├── w_registration_config.cpp │ │ │ │ ├── w_registration_config.hpp │ │ │ │ ├── w_settings.cpp │ │ │ │ ├── w_settings.hpp │ │ │ │ ├── w_status.cpp │ │ │ │ └── w_status.hpp │ │ │ ├── events/ │ │ │ │ ├── w_connection_event.cpp │ │ │ │ ├── w_connection_event.hpp │ │ │ │ ├── w_listener_event.cpp │ │ │ │ ├── w_listener_event.hpp │ │ │ │ ├── w_stream_event.cpp │ │ │ │ └── w_stream_event.hpp │ │ │ ├── handles/ │ │ │ │ ├── w_configuration.cpp │ │ │ │ ├── w_configuration.hpp │ │ │ │ ├── w_connection.cpp │ │ │ │ ├── w_connection.hpp │ │ │ │ ├── w_listener.cpp │ │ │ │ ├── w_listener.hpp │ │ │ │ ├── w_registration.cpp │ │ │ │ ├── w_registration.hpp │ │ │ │ ├── w_stream.cpp │ │ │ │ └── w_stream.hpp │ │ │ ├── internal/ │ │ │ │ ├── common.cpp │ │ │ │ ├── common.hpp │ │ │ │ ├── w_msquic_api.cpp │ │ │ │ └── w_msquic_api.hpp │ │ │ ├── w_quic.cpp │ │ │ ├── w_quic.hpp │ │ │ ├── w_quic_client.cpp │ │ │ ├── w_quic_client.hpp │ │ │ ├── w_quic_server.cpp │ │ │ └── w_quic_server.hpp │ │ ├── rist/ │ │ │ ├── w_rist.cpp │ │ │ ├── w_rist.hpp │ │ │ ├── w_rist_data_block.cpp │ │ │ └── w_rist_data_block.hpp │ │ └── test/ │ │ ├── ffmpeg_stream.hpp │ │ ├── grpc.hpp │ │ ├── quic.hpp │ │ └── rist.hpp │ ├── system/ │ │ ├── compression/ │ │ │ ├── w_lz4.cpp │ │ │ ├── w_lz4.hpp │ │ │ ├── w_lzma.cpp │ │ │ └── w_lzma.hpp │ │ ├── db/ │ │ │ ├── w_postgresql.cpp │ │ │ └── w_postgresql.hpp │ │ ├── gamepad/ │ │ │ ├── w_gamepad_client.hpp │ │ │ ├── w_gamepad_client_emc.cpp │ │ │ ├── w_gamepad_client_keymap.hpp │ │ │ ├── w_gamepad_client_sdl.cpp │ │ │ ├── w_gamepad_client_types.hpp │ │ │ ├── w_gamepad_virtual.cpp │ │ │ ├── w_gamepad_virtual.hpp │ │ │ ├── w_gamepad_virtual_bus.hpp │ │ │ ├── w_gamepad_virtual_pool.cpp │ │ │ └── w_gamepad_virtual_pool.hpp │ │ ├── getopt.h │ │ ├── invocable.h │ │ ├── log/ │ │ │ ├── w_log.cpp │ │ │ ├── w_log.hpp │ │ │ └── w_log_config.hpp │ │ ├── script/ │ │ │ ├── w_lua.cpp │ │ │ ├── w_lua.hpp │ │ │ ├── w_python.cpp │ │ │ └── w_python.hpp │ │ ├── socket/ │ │ │ ├── w_socket_options.hpp │ │ │ ├── w_tcp_client.cpp │ │ │ ├── w_tcp_client.hpp │ │ │ ├── w_tcp_server.cpp │ │ │ ├── w_tcp_server.hpp │ │ │ ├── w_ws_client.cpp │ │ │ ├── w_ws_client.hpp │ │ │ ├── w_ws_client_emc.cpp │ │ │ ├── w_ws_client_emc.hpp │ │ │ ├── w_ws_server.cpp │ │ │ └── w_ws_server.hpp │ │ ├── test/ │ │ │ ├── compress.hpp │ │ │ ├── coroutine.hpp │ │ │ ├── gamepad.hpp │ │ │ ├── gametime.hpp │ │ │ ├── index.html │ │ │ ├── log.hpp │ │ │ ├── lua.hpp │ │ │ ├── postgresql.hpp │ │ │ ├── process.hpp │ │ │ ├── python.hpp │ │ │ ├── signal_slot.hpp │ │ │ ├── tcp.hpp │ │ │ ├── trace.hpp │ │ │ ├── ws.hpp │ │ │ └── ws_server.sh │ │ ├── w_flags.hpp │ │ ├── w_gametime.cpp │ │ ├── w_gametime.hpp │ │ ├── w_leak_detector.cpp │ │ ├── w_leak_detector.hpp │ │ ├── w_overloaded.hpp │ │ ├── w_process.cpp │ │ ├── w_process.hpp │ │ ├── w_time.cpp │ │ ├── w_time.hpp │ │ └── w_trace.hpp │ ├── tests.cpp │ ├── third_party/ │ │ ├── ffmpeg/ │ │ │ ├── LICENSE │ │ │ ├── README.txt │ │ │ ├── include/ │ │ │ │ ├── libavcodec/ │ │ │ │ │ ├── ac3_parser.h │ │ │ │ │ ├── adts_parser.h │ │ │ │ │ ├── avcodec.h │ │ │ │ │ ├── avdct.h │ │ │ │ │ ├── avfft.h │ │ │ │ │ ├── bsf.h │ │ │ │ │ ├── codec.h │ │ │ │ │ ├── codec_desc.h │ │ │ │ │ ├── codec_id.h │ │ │ │ │ ├── codec_par.h │ │ │ │ │ ├── d3d11va.h │ │ │ │ │ ├── defs.h │ │ │ │ │ ├── dirac.h │ │ │ │ │ ├── dv_profile.h │ │ │ │ │ ├── dxva2.h │ │ │ │ │ ├── jni.h │ │ │ │ │ ├── mediacodec.h │ │ │ │ │ ├── packet.h │ │ │ │ │ ├── qsv.h │ │ │ │ │ ├── vdpau.h │ │ │ │ │ ├── version.h │ │ │ │ │ ├── version_major.h │ │ │ │ │ ├── videotoolbox.h │ │ │ │ │ ├── vorbis_parser.h │ │ │ │ │ └── xvmc.h │ │ │ │ ├── libavdevice/ │ │ │ │ │ ├── avdevice.h │ │ │ │ │ ├── version.h │ │ │ │ │ └── version_major.h │ │ │ │ ├── libavfilter/ │ │ │ │ │ ├── avfilter.h │ │ │ │ │ ├── buffersink.h │ │ │ │ │ ├── buffersrc.h │ │ │ │ │ ├── version.h │ │ │ │ │ └── version_major.h │ │ │ │ ├── libavformat/ │ │ │ │ │ ├── avformat.h │ │ │ │ │ ├── avio.h │ │ │ │ │ ├── version.h │ │ │ │ │ └── version_major.h │ │ │ │ ├── libavutil/ │ │ │ │ │ ├── adler32.h │ │ │ │ │ ├── aes.h │ │ │ │ │ ├── aes_ctr.h │ │ │ │ │ ├── attributes.h │ │ │ │ │ ├── audio_fifo.h │ │ │ │ │ ├── avassert.h │ │ │ │ │ ├── avconfig.h │ │ │ │ │ ├── avstring.h │ │ │ │ │ ├── avutil.h │ │ │ │ │ ├── base64.h │ │ │ │ │ ├── blowfish.h │ │ │ │ │ ├── bprint.h │ │ │ │ │ ├── bswap.h │ │ │ │ │ ├── buffer.h │ │ │ │ │ ├── camellia.h │ │ │ │ │ ├── cast5.h │ │ │ │ │ ├── channel_layout.h │ │ │ │ │ ├── common.h │ │ │ │ │ ├── cpu.h │ │ │ │ │ ├── crc.h │ │ │ │ │ ├── csp.h │ │ │ │ │ ├── des.h │ │ │ │ │ ├── detection_bbox.h │ │ │ │ │ ├── dict.h │ │ │ │ │ ├── display.h │ │ │ │ │ ├── dovi_meta.h │ │ │ │ │ ├── downmix_info.h │ │ │ │ │ ├── encryption_info.h │ │ │ │ │ ├── error.h │ │ │ │ │ ├── eval.h │ │ │ │ │ ├── ffversion.h │ │ │ │ │ ├── fifo.h │ │ │ │ │ ├── file.h │ │ │ │ │ ├── film_grain_params.h │ │ │ │ │ ├── frame.h │ │ │ │ │ ├── hash.h │ │ │ │ │ ├── hdr_dynamic_metadata.h │ │ │ │ │ ├── hdr_dynamic_vivid_metadata.h │ │ │ │ │ ├── hmac.h │ │ │ │ │ ├── hwcontext.h │ │ │ │ │ ├── hwcontext_cuda.h │ │ │ │ │ ├── hwcontext_d3d11va.h │ │ │ │ │ ├── hwcontext_drm.h │ │ │ │ │ ├── hwcontext_dxva2.h │ │ │ │ │ ├── hwcontext_mediacodec.h │ │ │ │ │ ├── hwcontext_opencl.h │ │ │ │ │ ├── hwcontext_qsv.h │ │ │ │ │ ├── hwcontext_vaapi.h │ │ │ │ │ ├── hwcontext_vdpau.h │ │ │ │ │ ├── hwcontext_videotoolbox.h │ │ │ │ │ ├── hwcontext_vulkan.h │ │ │ │ │ ├── imgutils.h │ │ │ │ │ ├── intfloat.h │ │ │ │ │ ├── intreadwrite.h │ │ │ │ │ ├── lfg.h │ │ │ │ │ ├── log.h │ │ │ │ │ ├── lzo.h │ │ │ │ │ ├── macros.h │ │ │ │ │ ├── mastering_display_metadata.h │ │ │ │ │ ├── mathematics.h │ │ │ │ │ ├── md5.h │ │ │ │ │ ├── mem.h │ │ │ │ │ ├── motion_vector.h │ │ │ │ │ ├── murmur3.h │ │ │ │ │ ├── opt.h │ │ │ │ │ ├── parseutils.h │ │ │ │ │ ├── pixdesc.h │ │ │ │ │ ├── pixelutils.h │ │ │ │ │ ├── pixfmt.h │ │ │ │ │ ├── random_seed.h │ │ │ │ │ ├── rational.h │ │ │ │ │ ├── rc4.h │ │ │ │ │ ├── replaygain.h │ │ │ │ │ ├── ripemd.h │ │ │ │ │ ├── samplefmt.h │ │ │ │ │ ├── sha.h │ │ │ │ │ ├── sha512.h │ │ │ │ │ ├── spherical.h │ │ │ │ │ ├── stereo3d.h │ │ │ │ │ ├── tea.h │ │ │ │ │ ├── threadmessage.h │ │ │ │ │ ├── time.h │ │ │ │ │ ├── timecode.h │ │ │ │ │ ├── timestamp.h │ │ │ │ │ ├── tree.h │ │ │ │ │ ├── twofish.h │ │ │ │ │ ├── tx.h │ │ │ │ │ ├── uuid.h │ │ │ │ │ ├── version.h │ │ │ │ │ ├── video_enc_params.h │ │ │ │ │ └── xtea.h │ │ │ │ ├── libpostproc/ │ │ │ │ │ ├── postprocess.h │ │ │ │ │ ├── version.h │ │ │ │ │ └── version_major.h │ │ │ │ ├── libswresample/ │ │ │ │ │ ├── swresample.h │ │ │ │ │ ├── version.h │ │ │ │ │ └── version_major.h │ │ │ │ └── libswscale/ │ │ │ │ ├── swscale.h │ │ │ │ ├── version.h │ │ │ │ └── version_major.h │ │ │ ├── lib/ │ │ │ │ └── win/ │ │ │ │ ├── avcodec-59.def │ │ │ │ ├── avcodec.lib │ │ │ │ ├── avdevice-59.def │ │ │ │ ├── avdevice.lib │ │ │ │ ├── avfilter-8.def │ │ │ │ ├── avfilter.lib │ │ │ │ ├── avformat-59.def │ │ │ │ ├── avformat.lib │ │ │ │ ├── avutil-57.def │ │ │ │ ├── avutil.lib │ │ │ │ ├── postproc-56.def │ │ │ │ ├── postproc.lib │ │ │ │ ├── swresample-4.def │ │ │ │ ├── swresample.lib │ │ │ │ ├── swscale-6.def │ │ │ │ └── swscale.lib │ │ │ └── presets/ │ │ │ ├── libvpx-1080p.ffpreset │ │ │ ├── libvpx-1080p50_60.ffpreset │ │ │ ├── libvpx-360p.ffpreset │ │ │ ├── libvpx-720p.ffpreset │ │ │ └── libvpx-720p50_60.ffpreset │ │ └── shells/ │ │ ├── ffmpeg/ │ │ │ ├── CMakeLists.txt │ │ │ ├── FFMPEG/ │ │ │ │ ├── CMakeLists-FFMPEG.txt.in │ │ │ │ └── CMakeLists.txt │ │ │ └── third_party/ │ │ │ ├── dav1d/ │ │ │ │ ├── CMakeLists-dav1d.txt.in │ │ │ │ └── CMakeLists.txt │ │ │ ├── svt-av1/ │ │ │ │ ├── CMakeLists-svtav1.txt.in │ │ │ │ └── CMakeLists.txt │ │ │ └── vpx/ │ │ │ ├── CMakeLists-vpx.txt.in │ │ │ └── CMakeLists.txt │ │ ├── janus/ │ │ │ └── setup.sh │ │ ├── librist/ │ │ │ ├── android-arm.ini │ │ │ ├── android-armv8.ini │ │ │ ├── librist-android.sh │ │ │ ├── librist.bat │ │ │ └── librist.sh │ │ └── webRTC/ │ │ ├── webRTC.bat │ │ └── webRTC.sh │ ├── wolf.cpp │ ├── wolf.hpp │ └── wolf.ruleset └── wolf_demo/ └── wasm/ ├── build.sh ├── run.sh ├── ssl_server.py ├── wolf.cpp └── www/ ├── index.html ├── janus.js ├── janus_env.js ├── wolf.js └── wolf.wasm