{"push_id":686349990,"size":30,"distinct_size":30,"ref":"refs/heads/master","head":"5520cd1f371b6b6bc033461a5fd5e93251b0dafa","before":"ba6e587ac1c23285d7596f677c693aa2f5070af9","commits":[{"sha":"626d7ef2d99f9b3f9f5cf1be16716328e3f7bf93","author":{"email":"7b85a41a628204b76aba4326273a3ccc74bd009a@videolan.org","name":"Jean-Baptiste Kempf"},"message":"RTSP: fix off-by-one buffer overflow\n\nClose #14820","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/626d7ef2d99f9b3f9f5cf1be16716328e3f7bf93"},{"sha":"620303f6b607038d49ca773d3ae75c0ea2e04e65","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal: Add missing header include guards\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/620303f6b607038d49ca773d3ae75c0ea2e04e65"},{"sha":"de2115b5d2ba9199fecbb4c01228e6125c378633","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Don't send buffers to disabled ports\n\nIf a port is not enabled sending any buffers to it will cause an error, so\njust don't try it.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/de2115b5d2ba9199fecbb4c01228e6125c378633"},{"sha":"47c81c46c93f729e554a9c8afba8f23976ffd65d","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Improve locking\n\nOnly lock when really needed. To do this feeding the mmal port with buffers is\ndone from one place only now.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/47c81c46c93f729e554a9c8afba8f23976ffd65d"},{"sha":"43fa8e7893064695870575a969da42d9deb7a0d4","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Simplify flushing\n\nIt is not required to disable mmal ports before flushing them.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/43fa8e7893064695870575a969da42d9deb7a0d4"},{"sha":"dd33e6f11db1bfdc78c0b3331a1661cf7d5edf84","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Fix locking\n\nThe locking was incomplete and partly just wrong.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/dd33e6f11db1bfdc78c0b3331a1661cf7d5edf84"},{"sha":"228fcee6272ee1dda9c9b9331ad84a07a4aad4bf","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Don't send buffers to disabled port\n\nIf the port is disabled it would refuse buffers with an error anyway. Avoid\nthis by not sending them when the port is disabled.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/228fcee6272ee1dda9c9b9331ad84a07a4aad4bf"},{"sha":"73a216048dc36e6c6813ff056d13ae2f3adc947d","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal: Use atomic operations for refcounting\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/73a216048dc36e6c6813ff056d13ae2f3adc947d"},{"sha":"e14240974014231afe552657f49971af84550761","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/vout: Do not wait for picture in non-opaque mode\n\nWhen not running in opaque mode the buffer headed over for rendering is only\nreturned when the following buffer isrendered or the component is disabled. So\nin this case waiting for the buffer to be returned immediately deadlocks the\nrendering. As all buffers get immediately flushed on stop it is safe to skip\nthis wait for non-opaque usecase.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/e14240974014231afe552657f49971af84550761"},{"sha":"88f9688b96667c9d261707755347dd3ff66b1606","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/vout: Use fixed binding of mmal buffer to picture\n\nInstead of dynamically allocating a mmal buffer from the mmal buffer pool use\na fixed binding, where the same mmal buffer is used for the whole pictures\nlifecycle. This avoids some overhead on picture allocation and simplifies the\ncode. As the mmal buffer pool is allocated in exactly the same size as the vlc\npicture pool there is no drawback doing it this way.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/88f9688b96667c9d261707755347dd3ff66b1606"},{"sha":"2698e5893cedd9ac388b21789097e4ddb5cae725","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Try to apply fmt changes without disabling port\n\nDepending on what parts of the format have changed it can be possible to apply\nthe changes without resetting the whole port. As this saves some time try to\nmake use of it.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/2698e5893cedd9ac388b21789097e4ddb5cae725"},{"sha":"45a463bf2c46099d88e77de8cb98cbc2b11fd5b0","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Clear data from buffer header before release\n\nThe data attached to the output port headers is not owned by the codec but by\nthe vout and only temporarily attached to the codecs buffers. To avoid\nrefcount issues within the mmal core clear the data field before releasing the\nbuffers.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/45a463bf2c46099d88e77de8cb98cbc2b11fd5b0"},{"sha":"5011389fe855b0371cedfdfda2e2ed9c46b87c40","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Do not disable ports for flushing\n\nIt is safe to flush enabled ports, so avoid unnecessary delays by disabling\nand enabling the ports.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/5011389fe855b0371cedfdfda2e2ed9c46b87c40"},{"sha":"8bd0fc0425dee28d10b745b8097e8161b34340b6","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Clear data from buffer header before release\n\nThe data attached to the output port headers is not owned by the deinterlace\nfilter but by the vout and only temporarily attached to the codecs buffers. To\navoid refcount issues within the mmal core clear the data field before\nreleasing the buffers.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/8bd0fc0425dee28d10b745b8097e8161b34340b6"},{"sha":"51fed80a4cf63457dae27cf2cc37b84b88c235b8","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Release picture if unable to process\n\nWhen an input picture can not be handled due to lack of resources we need to\nfree it to avoid a picture leak.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/51fed80a4cf63457dae27cf2cc37b84b88c235b8"},{"sha":"3c0019d062b0e74a5a39b5b4b1dda30524663d9d","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Rework to use pictures from vout pool\n\nThe reason for having a local picture pool within the deinterlace filter has\nbeen that the mmal core did not allow to initialise the image_fx filter with\nless than 20 output buffers. This limitation was removed from the mmal core,\nso that it is possible to operate with as less as 2 output buffers, which\nmakes it possible to use pictures acquired from the core video output pool.\nBesides being much more conformant to VLC core design this also avoids some\npossible issues with buffer ownership and component lifecycle of the mmal\ncomponents.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/3c0019d062b0e74a5a39b5b4b1dda30524663d9d"},{"sha":"21f3373a3ff8f7a22f4acbd70fe8b42d7cb28ab8","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Rename mmal-zerocopy option to mmal-opaque\n\nThe option named mmal-zerocopy until now is used to configure the codec to\ngenerate pictures with MMAL_ENCODING_OPAQUE which in fact is a fake payload\nformat that just contains handles for pictures allocated on the GPU side.\nWhile this in effect causes a zerocopy mode of pixel data the naming is\npotentially misleading because mmal supports another mode called zero_copy. In\nthis mode the GPU and CPU use shared buffers via the vc_sm kernel module, so\nthat the buffer data is actually accessible from userspace but no copies are\nrequired when transferring from or to mmal components.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/21f3373a3ff8f7a22f4acbd70fe8b42d7cb28ab8"},{"sha":"f9dde8b80995ad9de1e0945242614afbdeb68e40","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/codec: Do not use local buffer pool in opaque mode\n\nWhen running in opaque mode the codec must be used together with the mmal\nvout. In this case each picture contains a mmal_buffer_header within the\npicture_sys_t. That buffer header can be used instead of locally allocated\nheaders with the advantage of reducing complexity and avoiding possibly\nerror-prone mangling of buffer headers. Furthermore it is a prerequisite to\nenable zero_copy mode on the ports.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/f9dde8b80995ad9de1e0945242614afbdeb68e40"},{"sha":"974e13d7b3c99bb2c05c95ce43706e4a11905a52","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Do not use local buffer pools\n\nThe mmal deinterlace filter does currently support the mmal opaque encoding\nonly and thus must be used together with mmal vout and mmal codec. This\nensures that pictures being used contain valid mmal buffer headers in the\npicture_sys. Using them instead of locally allocated buffer headers simplifies\nthe code and avoids error-prone dangling with the data attached to the buffer\nheaders. Furthermore it is a prerequisite to enable zerocopy on the buffer\nports, which can even be a good thing when using opaque buffers.\nIf at some point in time the image_fx component in mmal will be fixed to also\nsupport I420 input we may reintroduce them for operating this filter\nindependently from mmal codec and vout.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/974e13d7b3c99bb2c05c95ce43706e4a11905a52"},{"sha":"c92f24312c5674c9a32185da417ae5bdbf426276","author":{"email":"354106e416911844661e1603d99ecf7d1c318dda@jusst.de","name":"Julian Scheel"},"message":"mmal/deinterlace: Do not filter the same picture twice\n\nIf the same picture, containing the same buffer header without being\nre-acquired in the meantime, is sent to image_fx twice it will portentially\ncause a double free within the mmal core as it destroys the internal\nrefcounting. Use the same guarding mechanism which is already in place in\nmmal/vout to ensure this is not happening at any point.\n\nSigned-off-by: Julian Scheel <julian@jusst.de>\nSigned-off-by: Jean-Baptiste Kempf <jb@videolan.org>","distinct":true,"url":"https://api.github.com/repos/videolan/vlc/commits/c92f24312c5674c9a32185da417ae5bdbf426276"}]}