- Jun 24, 2022
-
-
-
-
add top margin through underlying view instead of header the view considers top margins when scrolling the view for keyboard navigation, this ensures sufficient space for delegate fixes #27065
-
-
vlc_stream_ReadPartial() is similar to pf_read of stream_t. It is often used as such in pf_read callbacks. vlc_stream_Read() uses it that way as well. On negative return values (-1) it continues reading. Internally it's calling vlc_stream_ReadRaw() which also returns pf_read return values verbatim.
-
There is no requirement to call flush on exit. Indeed, avcodec_flush_buffers is documented as needed for seeking or switching to a different stream. In addition, calling avcodec_flush_buffers currently triggers TSAN warnings. Those warnings are still happening when calling the pf_flush function from avcodec module, so it does not fix them per se, but it does remove a systematic TSAN warning when opening/closing avcodec. With ffmpeg at commit 73302aa193714958afb8262ceb14d9613e9df5ad: WARNING: ThreadSanitizer: data race (pid=749126) Write of size 8 at 0x7b8000053000 by thread T9: #0 free /usr/src/debug/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:706 (libtsan.so.2+0x4e64f) #1 ff_h264_free_tables src/libavcodec/h264dec.c:159 (libavcodec_plugin.so+0x24bced) #2 module_unneed ../../src/modules/modules.c:304 (libvlccore.so.9+0x4ce1a) #3 decoder_Clean ../../src/input/decoder_helpers.c:56 (libvlccore.so.9+0x8835f) #4 DeleteDecoder ../../src/input/decoder.c:2005 (libvlccore.so.9+0x83edd) #5 vlc_input_decoder_Delete ../../src/input/decoder.c:2254 (libvlccore.so.9+0x84f5c) #6 EsOutDestroyDecoder ../../src/input/es_out.c:2406 (libvlccore.so.9+0x97c9b) #7 EsOutUnselectEs ../../src/input/es_out.c:2575 (libvlccore.so.9+0x98902) #8 EsOutVaPrivControlLocked ../../src/input/es_out.c:3734 (libvlccore.so.9+0x9f359) #9 EsOutPrivControl ../../src/input/es_out.c:4028 (libvlccore.so.9+0xa1f0a) #10 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xa554f) #11 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xa5623) #12 CmdExecutePrivControl ../../src/input/es_out_timeshift.c:1809 (libvlccore.so.9+0xadb9f) #13 PrivControlLocked ../../src/input/es_out_timeshift.c:799 (libvlccore.so.9+0xa7c59) #14 PrivControl ../../src/input/es_out_timeshift.c:858 (libvlccore.so.9+0xa8428) #15 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xafd79) #16 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xafe4d) #17 es_out_SetMode ../../src/input/es_out.h:119 (libvlccore.so.9+0xafeb1) #18 End ../../src/input/input.c:1400 (libvlccore.so.9+0xb5ec5) #19 Run ../../src/input/input.c:431 (libvlccore.so.9+0xb1ba0) Previous write of size 8 at 0x7b8000053000 by thread T10 (mutexes: write M847): #0 memset /usr/src/debug/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:799 (libtsan.so.2+0x652d2) #1 ff_er_add_slice src/libavcodec/error_resilience.c:863 (libavcodec_plugin.so+0x866185) Mutex M847 (0x7b7400024ea8) created at: #0 pthread_mutex_init /usr/src/debug/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1295 (libtsan.so.2+0x57446) #1 ff_pthread_init src/libavcodec/pthread.c:122 (libavcodec_plugin.so+0x93ce3) #2 OpenVideoCodec ../../modules/codec/avcodec/video.c:393 (libavcodec_plugin.so+0xdaac8) #3 InitVideoDec ../../modules/codec/avcodec/video.c:592 (libavcodec_plugin.so+0xdbb26) #4 generic_start ../../src/modules/modules.c:275 (libvlccore.so.9+0x4cc3d) #5 vlc_module_load ../../src/modules/modules.c:243 (libvlccore.so.9+0x4c9db) #6 module_need ../../src/modules/modules.c:286 (libvlccore.so.9+0x4cce2) #7 module_need_var ../../include/vlc_modules.h:120 (libvlccore.so.9+0x7b8cb) #8 LoadDecoder ../../src/input/decoder.c:234 (libvlccore.so.9+0x7bea7) #9 CreateDecoder ../../src/input/decoder.c:1958 (libvlccore.so.9+0x83a70) #10 decoder_New ../../src/input/decoder.c:2111 (libvlccore.so.9+0x847ba) #11 vlc_input_decoder_New ../../src/input/decoder.c:2172 (libvlccore.so.9+0x84be5) #12 EsOutCreateDecoder ../../src/input/es_out.c:2358 (libvlccore.so.9+0x977d5) #13 EsOutSelectEs ../../src/input/es_out.c:2488 (libvlccore.so.9+0x98261) #14 EsOutSelect ../../src/input/es_out.c:2774 (libvlccore.so.9+0x992d1) #15 EsOutVaPrivControlLocked ../../src/input/es_out.c:3738 (libvlccore.so.9+0x9f418) #16 EsOutPrivControl ../../src/input/es_out.c:4028 (libvlccore.so.9+0xa1f0a) #17 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xa554f) #18 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xa5623) #19 CmdExecutePrivControl ../../src/input/es_out_timeshift.c:1809 (libvlccore.so.9+0xadb9f) #20 PrivControlLocked ../../src/input/es_out_timeshift.c:799 (libvlccore.so.9+0xa7c59) #21 PrivControl ../../src/input/es_out_timeshift.c:858 (libvlccore.so.9+0xa8428) #22 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xafd79) #23 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xafe4d) #24 es_out_SetMode ../../src/input/es_out.h:119 (libvlccore.so.9+0xafeb1) #25 InitPrograms ../../src/input/input.c:1227 (libvlccore.so.9+0xb5322) #26 Init ../../src/input/input.c:1316 (libvlccore.so.9+0xb58c9) #27 Run ../../src/input/input.c:426 (libvlccore.so.9+0xb1b7f) Thread T9 'vlc-input' (tid=749136, running) created by main thread at: #0 pthread_create /usr/src/debug/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1001 (libtsan.so.2+0x670c9) #1 vlc_clone_attr ../../src/posix/thread.c:179 (libvlccore.so.9+0x17910c) #2 vlc_clone ../../src/posix/thread.c:190 (libvlccore.so.9+0x1791b5) #3 input_Start ../../src/input/input.c:130 (libvlccore.so.9+0xb0aca) #4 vlc_player_input_Start ../../src/player/input.c:96 (libvlccore.so.9+0xc9640) #5 vlc_player_Start ../../src/player/player.c:1176 (libvlccore.so.9+0xc54be) #6 vlc_playlist_Start ../../src/playlist/player.c:176 (libvlccore.so.9+0x6146e) #7 libvlc_InternalPlay ../../src/interface/interface.c:238 (libvlccore.so.9+0x59fa4) #8 libvlc_playlist_play ../../lib/playlist.c:36 (libvlc.so.12+0xdd1b) #9 main ../../bin/vlc.c:245 (vlc-static+0x2acd) Thread T10 (tid=749137, running) created by thread T9 at: #0 pthread_create /usr/src/debug/gcc/libsanitizer/tsan/tsan_interceptors_posix.cpp:1001 (libtsan.so.2+0x670c9) #1 init_thread src/libavcodec/pthread_frame.c:834 (libavcodec_plugin.so+0x93ebd) #2 ff_frame_thread_init src/libavcodec/pthread_frame.c:890 (libavcodec_plugin.so+0x93ebd) #3 OpenVideoCodec ../../modules/codec/avcodec/video.c:393 (libavcodec_plugin.so+0xdaac8) #4 InitVideoDec ../../modules/codec/avcodec/video.c:592 (libavcodec_plugin.so+0xdbb26) #5 generic_start ../../src/modules/modules.c:275 (libvlccore.so.9+0x4cc3d) #6 vlc_module_load ../../src/modules/modules.c:243 (libvlccore.so.9+0x4c9db) #7 module_need ../../src/modules/modules.c:286 (libvlccore.so.9+0x4cce2) #8 module_need_var ../../include/vlc_modules.h:120 (libvlccore.so.9+0x7b8cb) #9 LoadDecoder ../../src/input/decoder.c:234 (libvlccore.so.9+0x7bea7) #10 CreateDecoder ../../src/input/decoder.c:1958 (libvlccore.so.9+0x83a70) #11 decoder_New ../../src/input/decoder.c:2111 (libvlccore.so.9+0x847ba) #12 vlc_input_decoder_New ../../src/input/decoder.c:2172 (libvlccore.so.9+0x84be5) #13 EsOutCreateDecoder ../../src/input/es_out.c:2358 (libvlccore.so.9+0x977d5) #14 EsOutSelectEs ../../src/input/es_out.c:2488 (libvlccore.so.9+0x98261) #15 EsOutSelect ../../src/input/es_out.c:2774 (libvlccore.so.9+0x992d1) #16 EsOutVaPrivControlLocked ../../src/input/es_out.c:3738 (libvlccore.so.9+0x9f418) #17 EsOutPrivControl ../../src/input/es_out.c:4028 (libvlccore.so.9+0xa1f0a) #18 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xa554f) #19 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xa5623) #20 CmdExecutePrivControl ../../src/input/es_out_timeshift.c:1809 (libvlccore.so.9+0xadb9f) #21 PrivControlLocked ../../src/input/es_out_timeshift.c:799 (libvlccore.so.9+0xa7c59) #22 PrivControl ../../src/input/es_out_timeshift.c:858 (libvlccore.so.9+0xa8428) #23 es_out_vaPrivControl ../../src/input/es_out.h:105 (libvlccore.so.9+0xafd79) #24 es_out_PrivControl ../../src/input/es_out.h:112 (libvlccore.so.9+0xafe4d) #25 es_out_SetMode ../../src/input/es_out.h:119 (libvlccore.so.9+0xafeb1) #26 InitPrograms ../../src/input/input.c:1227 (libvlccore.so.9+0xb5322) #27 Init ../../src/input/input.c:1316 (libvlccore.so.9+0xb58c9) #28 Run ../../src/input/input.c:426 (libvlccore.so.9+0xb1b7f) SUMMARY: ThreadSanitizer: data race src/libavcodec/h264dec.c:159 in ff_h264_free_tables Revert of commit f2f61bf1.
-
-
- Jun 23, 2022
-
-
-
It's actually vlc_LogSet()
-
8b0dd8cf removed the use of the verbosity level that was found in libvlc_priv_t. It is no longer available with the vlc_logger. All logs are generated on Windows, no matter the verbosity level.
-
-
-
-
-
This patch fixes issues when a net intf provides only one version of the IP protocol when libupnp is built with `--enable-ipv6`. This has been proposed upstream: https://github.com/pupnp/pupnp/pull/398 Refs #27001
-
The input item's info aren't accessible through libvlc
-
- Jun 22, 2022
-
-
-
Attaching an ancillary will increment the reference count for it, so it needs to be decreased afterwards. Fixes #27080
-
-
also perform x11 resize when the makeCurrent fails Co-authored-by:
Jeffrey Knockel <jeff@jeffreyknockel.com>
-
also perform x11 resize when the makeCurrent fails Co-authored-by:
Jeffrey Knockel <jeff@jeffreyknockel.com>
-
QML will have an OpenGL context enabled, and the vout display may mess with it while resizing fix regression from d0836b10
-
- Jun 21, 2022
-
-
Signed-off-by:
Claudio Cambra <claudio.cambra@gmail.com>
-
-
Signed-off-by:
Claudio Cambra <claudio.cambra@gmail.com>
-
- Jun 20, 2022
-
-
fix #26670 Co-authored-by:
Pierre Lamot <pierre@videolabs.io>
-
-
-
fix #25598
-
QImage::scaled provides a better quality compared to QImageReader::setScaledSize. Except for svg(s). This implementation that was removed in a prior commit should stay relevant in the future.
-
- Jun 19, 2022
-
-
-
when the player uses the fullscreen mode, the video should take the whole screen space, using pined controls in this mode limits the available space for the video to be displayed. We fallback to the non-pined mode in this case.
-
The function is actually taking a vlc_config_subcat both from its definition and its usage, which was creating warnings: modules/gui/macosx/preferences/prefs.m:533:82: warning: implicit conversion from enumeration type 'enum vlc_config_subcat' to different enumeration type 'enum vlc_config_cat' [-Wenum-conversion] subcategoryItem = [categoryItem childRepresentingSubcategory:subcat]; ~ ^~~~~~ modules/gui/macosx/preferences/prefs.m:675:77: warning: conflicting parameter types in implementation of 'childRepresentingSubcategory:': 'enum vlc_config_cat' vs 'enum vlc_config_subcat' [-Wmismatched-parameter-types] - (VLCTreeBranchItem *)childRepresentingSubcategory:(enum vlc_config_subcat)subcategory ~~~~~~~~~~~~~~~~~~~~~~ ^ modules/gui/macosx/preferences/prefs.m:128:74: note: previous definition is here - (VLCTreeBranchItem *)childRepresentingSubcategory:(enum vlc_config_cat)category; ~~~~~~~~~~~~~~~~~~~ ^
-
this seems to happen in some case where graphical effects are used (drop shadow on the audio cover in the full player for instance)
-
Prince Gupta authored
-
Prince Gupta authored
ref #26990
-
Prince Gupta authored
ref #26990
-
Prince Gupta authored
-
Prince Gupta authored
-
They became unreferenced in the move to v0.1.2 in 40148113.
-