Changelog:
25.0.8 Hotfix Changes
Added status icons next to the timers for recording and streaming
Added white icons for dock titles
Added an actual name for files when browsing for LUT files
Fixed media source not closing file when inactive
Fixed certain services not properly updating their server information on Windows
Fixed multiview not rendering correctly on macOS
Fixed a minor memory leak
Removed the requirement for the replay buffer hotkey now that there's a button to record a replay
FFmpegThumbnailer 2.2.2
- Removed unstable continuous thumbnail creation
FFmpegThumbnailer 2.2.1
- CMake improvements: required CMake version is now 3.5 or newer
- Fix anamorphic height (thanks to cmrd-senya)
- Fix libffmpegthumbnailer.pc to work with multilib systems (thanks to orbea)
- Fix rotation of 180° rotated videos (thanks to munzli)
- Fix prefer_embedded_metadata in c api (thanks to aedis)
- Fix crash when setting a log callback using the c api
- Check for https as well when skipping stat call (thanks to HearstCorp)
- Support specifying the size as string using the c api
- Support raw rgb data as image type
- Print warnings on stderr instead of stdout
- Support for continuous thumbnail creation
version 2.8.15:
- avcodec/dvdsub_parser: Allocate input padding
- avcodec/dvdsub_parser: Init output buf/size
- avcodec/imgconvert: fix possible null pointer dereference
- swresample/arm: rename labels to fix xcode build error
- avformat/utils: fix mixed declarations and code
- libwebpenc_animencoder: add missing braces to struct initialization
- avformat/movenc: Check input sample count
- avcodec/mjpegdec: Check for odd progressive RGB
- avformat/movenc: Check that frame_types other than EAC3_FRAME_TYPE_INDEPENDENT have a supported substream id
- avformat/mms: Add missing chunksize check
- avformat/pva: Check for EOF before retrying in read_part_of_packet()
- avcodec/indeo4: Check for end of bitstream in decode_mb_info()
- avcodec/shorten: Fix undefined addition in shorten_decode_frame()
- avcodec/jpeg2000dec: Fixes invalid shifts in jpeg2000_decode_packets_po_iteration()
- avcodec/jpeg2000dec: Check that there are enough bytes for all tiles
- avcodec/escape124: Fix spelling errors in comment
- avcodec/ra144: Fix integer overflow in ff_eval_refl()
- avcodec/cscd: Check output buffer size for lzo.
- avcodec/escape124: Check buf_size against num_superblocks
- avcodec/mjpegdec: Check for end of bitstream in ljpeg_decode_rgb_scan()
- avcodec/aacdec_fixed: Fix undefined integer overflow in apply_independent_coupling_fixed()
- avutil/common: Fix undefined behavior in av_clip_uintp2_c()
- fftools/ffmpeg: Fallback to duration if sample rate is unavailable
- avformat/mov: Only set pkt->duration to non negative values
- avcodec/h264_mc_template: Only prefetch motion if the list is used.
- avcodec/xwddec: Use ff_set_dimensions()
- avcodec/wavpack: Fix overflow in adding tail
- avcodec/shorten: Fix multiple integer overflows
- avcodec/shorten: Sanity check nmeans
- avcodec/mjpegdec: Fix integer overflow in ljpeg_decode_rgb_scan()
- avcodec/truemotion2: Fix overflow in tm2_apply_deltas()
- avcodec/opus_silk: Change silk_lsf2lpc() slightly toward silk/NLSF2A.c
- avcodec/amrwbdec: Fix division by 0 in find_hb_gain()
- avformat/mov: replace a value error by clipping into valid range in mov_read_stsc()
- avformat/mov: Break out early if chunk_count is 0 in mov_build_index()
- avcodec/fic: Avoid some magic numbers related to cursors
- avcodec/g2meet: ask for sample with overflowing RGB
- avcodec/aacdec_fixed: use 64bit to avoid overflow in rounding in apply_dependent_coupling_fixed()
- avcodec/mpeg4videoenc: Use 64 bit for times in mpeg4_encode_gop_header()
- avcodec/mlpdec: Only change noise_type if the related fields are valid
- indeo4: Decode all or nothing of a band header.
- avformat/mov: Only fail for STCO/STSC contradictions if both exist
- avcodec/dirac_dwt: Fix integer overflow in COMPOSE_DD97iH0 / COMPOSE_DD137iL0
- avcodec/fic: Check available input space for cursor
- avcodec/g2meet: Check RGB upper limit
- avcodec/jpeg2000dec: Fix undefined shift in the jpeg2000_decode_packets_po_iteration() CPRL case
- avcodec/jpeg2000dec: Skip init for component in CPRL if nothing is to be done
- avcodec/g2meet: Change order of operations to avoid undefined behavior
- avcodec/flac_parser: Fix infinite loop
- avcodec/wavpack: Fix integer overflow in DEC_MED() / INC_MED()
- avcodec/error_resilience: Fix integer overflow in filter181()
- avcodec/h263dec: Check slice_ret in mspeg4 slice loop
- avcodec/elsdec: Fix memleaks
- avcodec/vc1_block: simplify ac_val computation
- avcodec/ffv1enc: Check that the crc + version combination is supported
- lavf/http.c: Free allocated client URLContext in case of error.
- avcodec/dsicinvideo: Fail if there is only a small fraction of the data available that comprises a full frame
- avcodec/dsicinvideo: Propagate errors from cin_decode_rle()
- avcodec/dfa: Check dimension against maximum
- avcodec/cinepak: Skip empty frames
- avcodec/cinepak: move some checks prior to frame allocation
- swresample/arm: remove unintentional relocation.
- doc/APIchanges: Fix typos in hashes
- avformat/utils: Check cur_dts in update_initial_timestamps() more
- avcodec/utils: Enforce minimum width also for VP5/6
- avcodec/truemotion2: Propagate out of bounds error from GET_TOK()
- avcodec/mjpegdec: Check input buffer size.
- lavc/libopusdec: Allow avcodec_open2 to call .close
- avcodec/movtextdec: Check style_start/end
- avcodec/aacsbr_fixed: Fix integer overflow in sbr_hf_assemble()
- swresample/swresample: Fix for seg fault in swr_convert_internal() -> sum2_float during dithering.
- avcodec/aacdec_fixed: Fix integer overflow in apply_independent_coupling_fixed()
- avcodec/cscd: Error out when LZ* decompression fails
- avcodec/imgconvert: Fix loss mask bug in avcodec_find_best_pix_fmt_of_list()
- avcodec/wmalosslessdec: Fix null pointer dereference in decode_frame()
- avcodec/tableprint_vlc: Fix build failure with --enable-hardcoded-tables
- avcodec/get_bits: Make sure the input bitstream with padding can be addressed
- avformat/mov: Check STSC and remove invalid entries
- avcodec/nuv: rtjpeg with dimensions less than 16 would result in no decoded pixels thus reject it
- avcodec/nuv: Check for minimum input size for uncomprssed and rtjpeg
- avcodec/wmalosslessdec: Reset num_saved_bits on error path
- avformat/mov: Fix integer overflows related to sample_duration
- avformat/oggparseogm: Check lb against psize
- avformat/oggparseogm: Fix undefined shift in ogm_packet()
- avformat/avidec: Fix integer overflow in cum_len check
- avformat/oggparsetheora: Do not adjust AV_NOPTS_VALUE
- avformat/utils: Fix integer overflow of fps_first/last_dts
- libavformat/oggparsevorbis: Fix memleak on multiple headers
- avcodec/bintext: sanity check dimensions
- avcodec/utvideodec: Check subsample factors
- avcodec/smc: Check input packet size
- avcodec/cavsdec: Check alpha/beta offset
- avcodec/diracdec: Fix integer overflow in mv computation
- avcodec/jpeg2000dwt: Fix integer overflows in sr_1d53()
- avcodec/diracdec: Use int64 in global mv to prevent overflow
- avformat/hvcc: zero initialize the nal buffers past the last written byte
I was going to apply a chain of patches to help this build again with
a supported ffmpeg but then I realized that nothing in pkgsrc uses this.
ffmpeg itself should be a good enough replacement for some of the
tools this package provides.
- Add mbedtls to the ssl group.
- Set the default ssl option to gnutls
Basically so we don't have to mark binaries as "nonfree" by default
- Enable opus and x265
Changelog:
25.0.4 Hotfix Changes
Added an option to use MixrElixr when using Mixer in the streaming section of settings
Fixed a crash that could occur when using secure input fields on macOS. Because of a likely bug with macOS Catalina that was causing this crash, if you use secure input while using OBS, external hotkeys will no longer function for the duration of the program, so if you use hotkeys with OBS, we do not recommend using secure input while using OBS. (This is a temporary fix to the crash because the only way to fully work around it is likely rewriting the entire OBS macOS hotkey handling to a different hotkey-capturing method)
Fixed a crash on Windows with certain audio devices
Fixed a crash with Decklink output
Fixed a crash with Vulkan game capture hook on Intel GPUs
Fixed scenes not always importing correctly from Streamlabs
Fixed a bug with QuickSync ICQ rate control where it would have a limited bitrate
Fixed NVENC not showing up on Windows 7
Fixed keyboard input on Linux not being fully functional when interacting with browser sources
25.0.3 Hotfix Changes (Linux)
Fixed video device source lagging on Linux
25.0.2 Hotfix Changes (Linux)
Fixed a crash when changing settings on Linux
Fixed a freeze on Linux
25.0.1 Hotfix Changes
Fixed some FLV files not playing back properly with the media source
Fixed two crashes with the browser source
Fixed the names of monitors not showing up when using projectors
Fixed a crash with window capture
Fixed an issue where the preview would be stuck as disabled when starting the program minimized to tray
Fixed an issue where NVENC wasn't showing up for users on Linux (sorry about that, that was my fault -Jim)
Fixed a bug where certain games (particularly "Don't Starve Together") wouldn't capture with game capture anymore
25.0 New Features
Added the ability to capture Vulkan-based games with game capture. Big thanks to Ubisoft Montreal for submitting this feature! [Littlematth/jpark37/Jim]
Added a new capture method to window capture which allows capturing browsers, browser-based windows, and Microsoft Store (UWP) programs [jpark37]
By default, it will use "Automatic", which will use the normal method on most windows, and the new method on browsers, browser-based windows, and Microsoft Store (UWP) programs
The downside of the new method is that it can cause a bit of cursor lag, as well as a highlighted border around the captured window. The border itself does not get captured, however.
You can choose which capture method to use in window capture properties
Added advanced scene collection importing (on the menu bar, Scene Collection -> Import) which allows you to import from other common streaming programs [Dillon]
Added Media source hotkeys to allow control of playback (stop/pause/play/restart) [cg2121]
For now, these are just hotkeys. User interface for this is also planned for future updates
Added the ability to drag and drop URLs to create browser sources (after displaying a confirmation prompt to ensure it was by intention) [WizardCM]
Developers can add an embed to their web pages that let them pre-specify parameters that automatically get set in the source when it's dragged into OBS. See this link for more details: https://obsproject.com/tools/browser-drag-and-drop
Added T-bar to studio mode [cg2121]
Note that this will not work while using a Stinger transition or the "Cut" transition
Added support for the SRT protocol (https://en.wikipedia.org/wiki/Secure_Reliable_Transport) [boxerab]
This is available by choosing "Custom" under Stream settings > Service, then entering your srt:// path into the Server box.
Added a button grid mode to the scenes list, which can be toggled via right-clicking on the scenes list [Dillon]
Added ability to lock volume values of audio sources via their right-click context menu in the mixer [cg2121]
Added source icons to the source list that give a more visible indication of their function (can be disabled in the View menu) [cg2121]
Added support for cube LUT files in the LUT filter [jpark37]
Added an option to show all audio sources to advanced audio settings [exeldro]
Added an option to use percent rather than dB in advanced audio properties via right-clicking items in the window [cg2121]
Added a button to save replay buffer next to the replay buffer button (similar to the pause button on the recording button) [cg2121]
Added support for certain devices that can automatically rotate their camera output such as the Logitech StreamCam [Jim]
Added the ability to change the projector type to the projector's right-click context menu [cg2121]
Added the ability to copy/paste multiple selected sources [torresam]
Added an option to enable/disable BTTV and/or FFZ chat extensions when connecting your Twitch account in the stream section of settings [Rodney]
Added a system tray icon to show when the recording is paused [Programatic]
Added a "Custom Quantization Matrix" option to QSV encoder (available on Ice Lake or newer) [brittneysclark]
Added an option to toggle looping to the scroll filter [Dillon]
Added a "Fade to Black" option for quick transitions in studio mode [cg2121]
Added string specifiers to the Filename Formatting option in advanced settings which allows you to specify certain settings such as resolution and FPS to recording filenames [exeldro]
Added a hotkey to reset the stats window/panel [cg2121]
Added help icons when an property has a tooltip associated with it [WizardCM]
Added monitor names in monitor selection context menus [WizardCM]
Video settings now shows aspect ratio of canvas and output resolutions [cg2121]
25.0 Changes/Tweaks
Increased default size of color source to the size of the canvas [cg2121]
Increased d
Added various minor performance improvements [jpark37]
The mask filter will now reload the mask automatically if the mask file has been modified [omkelderman]
The browser source now uses a monospace font for the custom CSS property [WizardCM] confusion. You will now only see "NVENC (new)" (which we will eventually rename back to just "NVENC"). Rescaling is now supported on it (automatically falls back to the older implementation internally)
25.0 Bug Fixes
Fixed an issue where window capture could select an unintended window when opening its properties [Jim/Dillon]
Fixed browser source not loading files with a hash character in the path [Dillon]
Fixed a bug where importing profiles didn't work correctly in portable mode [WizardCM]
Fixed a bug where resizing docks wouldn't work when hotkeys were disabled while OBS is focused [WizardCM]
Fixed a bug where preview wasn't fully disabled when minimized [R1CH]
Fixed a bug where the program could crash on startup if the system had flash installed on it [R1CH/Jim]
Fixed a bug where the media source could sometimes lock up on a frame [Jim]
Fixed a bug where Twitch browser panels would not use dark theme the first time they run [Jim]
Fixed a bug where the recording audio bitrate would be too low when using a custom recording quality in simple output mode [Fenrir]
Fixed a bug where a reconnected stream would drop to 0 kbps and disconnect if using audio track 2 [R1CH]
Fixed a bug when using multiple game captures where the wrong game would sometimes be captured [Dillon]
Fixed a crash when entering large resolutions in video settings [cg2121]
Fixed a crash with PulseAudio on Linux [cg2121]
Fixed a crash on shutdown that could occur after using the auto configuration wizard [R1CH]
Fixed a crash with the VLC and slideshow sources when adding directories containing files with many unicode characters [R1CH]
Fixed a crash on startup if a plugin saved whitespace to its config file (this primarily affected the Tuna plugin) [R1CH]
Fixed a crash when no Decklink outputs are available, such as when the input is active at the same time [cg2121]
Fixed a crash when when no Decklink output device is selected when the output is started [cg2121]
Fixed a crash when using custom RTMP authentication [R1CH]
Fixed an issue where devices could lock up when using the browser source [Jim]
Fixed a few minor memory leaks [jpark37]
Fixed an issue where the program would not let you know that the recording path was invalid [Lqlsoftware]
- Get the preferred sample rate from the device.
This ensures sample rate conversion is done in user space,
which is a Good Idea and should improve output quality.
This backend is now Even More NetBSD.
- Implement drain().
- Bump up the buffer size.
Bump PKGREVISION
This release contains plenty of new features, bug-fixes, and general
improvements. Some of the most important highlights include:
* We did it again, the MATE desktop environment is easier to use than before,
once the user starts the session. Do you want to hide applications startup?
Now you can set which applications to show on startup.
* Engrampa now has support for a handful of extra formats, as well as fixed
support for passwords and unicode characters in some of them.
* Eye of MATE now has support for Wayland and we’ve added support for
embedded color profiles.
* The thumbnail generation has been reworked and fixed in several places.
* Added support for webp files.
* Our window manager, marco, has gotten quite a few changes:
* We’ve brought a bunch of window decorations from the past to feed
your nostalgia.
* Finally added invisible resize borders. No more struggling to find a
border to grab with your mouse!
* All window controls (you know, the min, max, close buttons) are now
rendered in HiDPI.
* The Alt+Tab and Workspace Switcher popups have been entirely reworked.
Now they render in beautiful OSD style, are more configurable, and can
respond to keyboard arrows.
* Tiling windows with the keyboard now allows you to cycle through
different window sizes. You no longer need to feel constrained by only
half of your screen.
* The System Monitor panel applet now has support for NVMe drives.
* Calculator now supports using either “pi” or “π”.
* Scientific notation has been improved.
* Some fixes for supporting pre-defined physical constants.
* The Control Center now displays its icons correctly on HiDPI displays.
* A brand new Time And Date Manager app has been added.
* The Mouse app now supports acceleration profiles.
* The Preferred Applications app has been improved for accessibility, as well
as better support for integration with IM clients.
* The Indicator Applet has slightly better interaction with
oddly-sized icons.
* Speaking of icons, the network manager applet icons in our own themes have
been entirely redesigned and can now be enjoyed on HiDPI displays.
* If you’re the type of person that does not like to be disturbed when busy,
or giving a presentation, or watching a movie, you’ll be happy to know that
the notification daemon now supports a Do-Not-Disturb mode.
* The MATE Panel had several bugs that caused crashes in the past when
changing layouts. Those are now fixed!
* Support for Wayland compatibility has improved considerably.
* Status icons (a.k.a. notification area, or system tray) have support
for HiDPI displays.
* Wanda the Fish got a make-over and now you can enjoy her in full
HiDPI glory.
* The window list applet now supports window thumbnails on hover.
* Various accessibility improvements throughout the panel and its
core applets.
* If your system doesn’t, uh, support systemd you might be interested in
knowing that we’ve added support for elogind to both the MATE Screensaver
and the MATE Session.
* We’ve also added a brand new MATE Disk Image Mounter utility.
* Mozo, the menu editor, now supports Undo and Redo actions.
* Pluma plugins have now fully switched to Python 3.
* Pluma no longer has to envy anything from other complex editors, since it
can now show the formatting marks.
* i18n: All applications have been migrated from intltools to gettext.
Version 45.0.0 "Heaven in Pennies"
New features and enhancements
* mkvmerge: mkvmerge has never supported appending & splitting FLAC audio
tracks. mkvmerge will now emit error messages when the user attempts either
instead of continuing and creating invalid FLAC tracks.
* MKVToolNix GUI: added an option in the preferences to turn on eliding text
on tab headers. If enabled, tab names will be shortened so that all tab
headers fit into the window's width.
* MKVToolNix GUI: added an option in the preferences to disable all tooltips.
* MKVToolNix GUI: Windows: debug output sent via Qt's to Windows' debugging
facility will use a more verbose message format including the application
name, making it easier to filter for in SysInternal's "Debug View" utility.
* MKVToolNix GUI: multiplexer: if the file identification fails due to a JSON
parser error, the output generated by `mkvmerge` will be output via Qt's
debugging facility (viewable with SysInternal's "Debug View" utility on
Windows; on other systems it's output on `STDERR`) allowing insight into
what's gone wrong.
* MKVToolNix GUI: multiplexer: if an error occurs during file identification,
the name of the processed file will be mentioned in the error message.
* MKVToolNix GUI: multiplexer: if an error occurs during identification of
multiple files, the GUI will ask the user whether to continue or abort the
identification process.
* MKVToolNix GUI: job queue: added an option in the preferences for removing
completed jobs when exiting the program depending on their status.
Bug fixes
* mkvmerge: H.265/HEVC packetizer: fixed changing the NALU size length, it was
using the wrong offset into the `hevcC` structure.
* mkvmerge: MP4 reader: fixed calculating the duration of video tracks that
only contain a single frame.
* mkvmerge: MP4 reader: if there's no frame offset table (`ctts` atom) present
for H.265/HEVC video tracks, mkvmerge will determine the timestamp order
itself instead of relying on the timestamps in the MP4 being in the
presentation order required by Matroska.
* mkvpropedit: Windows: mkvpropedit wasn't caching when reading the file to
modify, slowing down operations such as adding track statistics tags
considerably.
* MKVToolNix GUI: multiplexer: when using the title as part of the destination
file name (both automatically as well as using the "copy title to
destination file name" function) all characters that aren't valid in a file
name are replaced by hyphens.
* MKVToolNix GUI: multiplexer: the "copy title to destination file name"
function was broken when the "make file name unique" option in the
preferences was disabled. In that case the file base name was removed
regardless of what the title was set to at the time.
* MKVToolNix GUI: multiplexer: when using the "show command line" menu option
on Windows the path to the `mkvmerge` executable was shown with forward
slashes instead of backslashes. This is a purely cosmetic fix as Windows
supports both forward and backward slashes.
* MKVToolNix GUI: multiplexer: when adding Blu-ray playlists the GUI used to
only look for the English version of the disc library information (title &
cover images). Now the GUI will present all disc library entries in the
"select playlist to add" dialog & let the user chose which one to use (if
any).
* MKVToolNix GUI: multiplexer, info tool: fixed the "warn before overwriting"
check wrt. jobs creating the same file.
streamlink 1.3.1 (2020-01-27)
A small patch release that addresses the removal of MPV's legacy option syntax, also with fixes of several plugins, the addition of the --twitch-disable-reruns parameter and dropped support for Python 3.4.
streamlink 1.3.0 (2019-11-22)
A new release with plugin updates and fixes, including Twitch.tv (see #2680), which had to be delayed due to back and forth API changes.
The Twitch.tv workarounds mentioned in #2680 don't have to be applied anymore, but authenticating via --twitch-oauth-token has been disabled, regardless of the origin of the OAuth token (via --twitch-oauth-authenticate or the Twitch website). In order to not introduce breaking changes, both parameters have been kept in this release and the user name will still be logged when using an OAuth token, but receiving item drops or accessing restricted streams is not possible anymore.
Plugins for the following sites have also been added:
albavision
news.now.com
twitcasting.tv
viu.tv
vlive.tv
willax.tv
streamlink 1.2.0 (2019-08-18)
Here are the changes for this month's release
Multiple plugin fixes
Fixed single hyphen params at the beginning of --player-args (#2333)
--http-proxy will set the default value of --https-proxy to same as --http-proxy. (#2536)
DASH Streams will handle headers correctly (#2545)
the timestamp for FFMPEGMuxer streams will start with zero (#2559)
streamlink 1.1.1 (2019-04-02)
This is just a small patch release which fixes a build/deploy issue with the new special wheels for Windows on PyPI. (#2392)
streamlink 1.0.0 (2019-01-30)
The celebratory release of Streamlink 1.0.0!
A lot of hard work has gone into getting Streamlink to where it is. Not only is Streamlink used across multiple applications and platforms, but companies as well.
Streamlink started from the inaugural fork of Livestreamer on September 17th, 2016.
Since then, We've hit multiple milestones:
Over 886 PRs
Hit 3,000 commits in Streamlink
Obtaining our first sponsors as well as backers of the project
The creation of our own logo (https://github.com/streamlink/streamlink/issues/1123)
Thanks to everyone who has contributed to Streamlink (and our backers)! Without you, we wouldn't be where we are today.
Without further ado, here are the changes in release 1.0.0:
We have a new icon / logo for Streamlink! (https://github.com/streamlink/streamlink/pull/2165)
Updated dependencies (https://github.com/streamlink/streamlink/pull/2230)
A ton of plugin updates. Have a look at this search query for all the recent updates.
You can now provide a custom key URI to override HLS streams (https://github.com/streamlink/streamlink/pull/2139). For example: --hls-segment-key-uri <URI>
User agents for API communication have been updated (https://github.com/streamlink/streamlink/pull/2194)
Special synonyms have been added to sort "best" and "worst" streams (https://github.com/streamlink/streamlink/pull/2127). For example: streamlink --stream-sorting-excludes '>=480p' URL best,best-unfiltered
Process output will no longer show if tty is unavailable (https://github.com/streamlink/streamlink/pull/2090)
We've removed BountySource in favour of our OpenCollective page. If you have any features you'd like to request, please open up an issue with the request and possibly consider backing us!
Improved terminal progress display for wide characters (https://github.com/streamlink/streamlink/pull/2032)
Fixed a bug with dynamic playlists on playback (https://github.com/streamlink/streamlink/pull/2096)
Fixed makeinstaller.sh (https://github.com/streamlink/streamlink/pull/2098)
Old Livestreamer deprecations and API references were removed (https://github.com/streamlink/streamlink/pull/1987)
Dependencies have been updated for Python (https://github.com/streamlink/streamlink/pull/1975)
Newer and more common User-Agents are now used (https://github.com/streamlink/streamlink/pull/1974)
DASH stream bitrates now round-up to the nearest 10, 100, 1000, etc. (https://github.com/streamlink/streamlink/pull/1995)
Updated documentation on issue templates (https://github.com/streamlink/streamlink/pull/1996)
URL have been added for better processing of HTML tags (https://github.com/streamlink/streamlink/pull/1675)
Fixed sort and prog issue (https://github.com/streamlink/streamlink/pull/1964)
Reformatted issue templates (https://github.com/streamlink/streamlink/pull/1966)
Fixed crashing bug with player-continuous-http option (https://github.com/streamlink/streamlink/pull/2234)
Make sure all dev dependencies (https://github.com/streamlink/streamlink/pull/2235)
-r parameter has been replaced for --rtmp-rtmpdump (https://github.com/streamlink/streamlink/pull/2152)
Breaking changes:
A large number of unmaintained or NSFW plugins have been removed. You can find the PR that implemented that change here: https://github.com/streamlink/streamlink/pull/2003 . See our CONTRIBUTING.md documentation for plugin policy.
Version 3.3
New features
Adaptive frame duplication to identify and skip encoding of near-identical frames and signal the duplication info to the decoder via pic_struct SEI. frame-dup to enable frame duplication and --dup-threshold to set the threshold for frame similarity (optional).
Boundary aware quantization to cut off bits from frames following scene-cut. This leverages the inability of HVS to perceive fine details during scene changes and saves bits. --scenecut-aware-qp , --scenecut-window and --max-qp-delta to enable boundary aware frame quantization, to set window size (optional) and to set QP offset (optional).
Improved scene-cut detection using edge and chroma histograms. --hist-scenecut to enable the feature and --hist-threshold (optional) to provide threshold for determining scene cuts.
Enhancements to existing features
--hme-range to modify search range for HME levels L0, L1, and L2.
Improved performance of AQ mode 4 by reducing memory foot print.
Introduced --analysis-save-reuse-level and --analysis-load-reuse-level to de-couple reuse levels of --analysis-save and --analysis-load. Turnaround time of ABR encoding can be reduced by properly leveraging these options.
Encoder enhancements
Improved VBV lookahead to eliminate blocky artifacts in Intra frames coming towards end of the title.
API changes
New API function x265_encoder_reconfig_zone() to invoke zone reconfiguration dynamically.
Renamed --hdr to --hdr10. --hdr will be deprecated in the upcoming major release.
Renamed --hdr-opt to --hdr10-opt. --hdr-opt will be deprecated in the upcoming major release.
Additions to x265_param structure to support the newly added features and encoder enhancements.
Version 1.2.0
- Add functions to list and read BD-ROM files.
- Add support for separate key pressed / typed / released user input events.
- Add support for AWT mouse events (BD-J).
- Fix build with OpenJDK 12 / 13.
libdvdread (6.1.0)
* Introduce DVDOpen2 and DVDOpenStream2 API to provide logger context
* fix playback of broken discs with broken ifo files
* improve getmntent_r detection
* fix crashes in some disc, with empty contiguous ShortAD
* clean obsolete code
libdvdnav (6.1.0)
* add a dvdnav_open2 API to setup a logging mechanism, similar to libdvdread
* add a dvdnav_get_number_of_angles API
* add a dvdnav_version API
* rework the logs in the library and remove direct printf calls
* handle out-of-order ADMAP entries blocking playback
* fix crashes in dvdnav_describe_title_chapters in broken DVDs
* cleanup old code and buildsystem
Work by Yorick Hardy and myself.
Also submitted to ffmpeg-devel, but they didn't take much notice.
To record audio:
$ ffmpeg4 -f sunau -i /dev/audio0 recording.wav
To play audio:
$ ffmpeg4 -i recording.wav -f sunau /dev/audio0
Bump PKGREVISION
We had some problems with the OSS audio output, this should avoid those.
This maintains pretty perfect audio-video sync and framerates with
autosync=0 and blk_ms=4.
Bump PKGREVISION
Version 44.0.0 "Domino"
New features and enhancements
* MKVToolNix GUI: header editor: the attachments can now be reordered via drag
& drop.
Bug fixes
* mkvmerge: Matroska reader: when encountering certain errors in the track
headers such as the codec ID not being present mkvmerge will simply skip
those tracks instead of exiting with an error.
* MKVToolNix GUI: multiplexer: the "ask before overwriting" functionality did
not look for the correct file names when splitting was active.
This will eventually need to be moved into the infrastructure once Swift
becomes more prevalent and we're able to handle any alternative layouts
that might be required.
Upstream announcement:
https://helpx.adobe.com/security/products/flash-player/apsb20-06.html
Adobe Security Bulletin
Security Bulletin for Adobe Flash Player | APSB20-06
Summary
Adobe has released security updates for Adobe Flash Player for
Windows, macOS, Linux and Chrome OS. These updates address a critical
vulnerability in Adobe Flash Player. Successful exploitation could
lead to arbitrary code execution in the context of the current user.
Changelog:
HandBrake 1.3.1
All platforms
General
Fixed potential crash when opening a DVD source
Video
Fixed rotation/flip not working properly in some cases
Fixed an issue with QSV failures when using --start-at
Updated presets using x265 to set aq-mode 1, the default prior to HandBrake 1.3.0
Improved AMD VCE rate control by always explicitly setting the rate control method
Added a workaround to fix x265 not parsing the H.265 Level setting where localized
Added an upstream patch to fix x265 limit-tu bug in loading co-located CU's TU depth
Added an upstream patch to fix x265 2-pass encoding failure
Added an upstream patch to fix x265 VBV macroblocking at end of final GOP
Audio
Fixed importing older presets where "und" was used to select any language track
Since HandBrake 1.3.0, "any" selects any language track and "und" selects undefined language tracks only
Fixed secondary audio tracks on Blu-ray sources not being detected in some cases
Subtitles
Fixed importing older presets where "und" was used to select any language track
Since HandBrake 1.3.0, "any" selects any language track and "und" selects undefined language tracks only
Build system
Fixed cpp and lib flags causing build failures on some Linux systems
Third-party libraries
Updated libraries
FFmpeg 4.2.2 (decoding and filters)
Linux
Fixed UI translations not working in some cases
Fixed display of chapter start times
Fixed small memory leak in audio list
Mac
Fixed importing external ASS/SSA subtitles
Fixed statistics not updating after queue completion
Updated documentation link to the most recent documentation version
Windows
Fixed missing UI translations for some languages
Español (Spanish)
Français (French)
한국어 (Korean)
русский (Russian)
Türkçe (Turkish)
Fixed official presets not updating after installing a new release
Fixed preference for automatically naming file extension MP4/M4V not working
Fixed an issue preventing the use of relative paths for automatic naming
Fixed audio and subtitles selection behavior not saving when set via the Save New Preset dialog
Fixed closed captions not being added automatically per selection behavior
Fixed iPod 5G support option displaying when an incompatible encoder is selected
Fixed queue updating slowly or not updating in some cases
Fixed a few UI issues and a crash with the new dark theme.
Fixed window not restoring properly after minimizing to system tray
Fixed frame rate mode not updating on video codec change, preventing QSV zero-copy mode
HandBrake 1.3.0
All platforms
General
HandBrake is now translated into many more languages
Redesigned queue UI
Removed Windows Mobile presets
See the list of compatible replacements on GitHub
Improved log output by silencing many lines at standard log level
Improved quality of Gmail presets slightly
Added Playstation 2160p60 4K Surround preset (supports PS4 Pro)
Added Discord and Discord Nitro presets
Video
Updated Intel Quick Sync Video to use Direct3D 11 API
Updated minimum title scan duration to only apply to disc-based sources like Blu-ray and DVD
Improved detection of MPEG-1 video in program streams
Improved interface to FFmpeg avfilter and color handling
Improved Nvidia NVENC constant quality encoding slightly by not setting qmin and qmax
Replaced pp7 Deblock filter with FFmpeg Deblock filter
Added support for reading Ultra HD Blu-ray discs (without copy protection)
Added support for reading AV1 via libdav1d
Added encoding to WebM container format
Added Chroma Smooth filter (CLI only)
Added zero-copy path for Intel QSV encoding removed in a previous release
Added support for Intel QSV low power encoding (lowpower=1)
Added support for AMD VCE encoding on Linux via Vulkan
Added ability to select x265 encoder level and Fast Decode tune
Audio
Updated audio resampling code to use FFmpeg swresample instead of libsamplerate
Added source audio bit rate to tracks list
Added ability to select unknown language tracks
Added automatic track name pass through
Subtitles
Added ability to import external SSA/ASS subtitles
Added ability to select unknown language tracks
Added automatic track name pass through
Command line interface
Added additional unit aliases to --start-at and --stop-at, notably seconds and frames
Build system
HandBrake now builds with libnuma on Linux
Fixed Python bytestrings causing newlines to be ignored in build output
Fixed Xcode ignoring make jobs parameter and utilizing all CPU cores (macOS only)
Updated configure to enable most hardware encoders by default where appropriate by platform
Updated all scripts for compatibility with Python 3
Updated mac-toolchain-build script with newer tool versions many improvements
Updated mingw-w64-build script with mingw-w64 6.0.0, GCC 9.2, and many improvements
Improved compatibility with GCC 9 and recent Clang releases
Improved compatibility with recent Xcode releases (macOS only)
Improved host/build semantics
Improved namespace isolation
Improved handling of all options passed to configure
Improved configure help output
Improved detection of missing executable dependencies during configure
Added support for building on NetBSD
Added --harden configure parameter to enable buffer overflow protections
Added --sandbox configure parameter to enable sandbox build target on macOS
Added --enable-gtk4 configure parameter to build with GTK 4 instead of GTK 3
Added summary of build options to configure output
Miscellaneous bug fixes and improvements
Third-party libraries
Removed libraries
libsamplerate (audio resampling)
Updated libraries
AMF 1.4.9 (AMD VCE encoding)
bzip2 1.0.8 (general)
FDK AAC 2.0.1 (AAC audio encoding, must compile from source)
FFmpeg 4.2.1 (decoding and filters)
FreeType 2.10.1 (subtitles)
Fribidi 1.0.7 (subtitles)
HarfBuzz 2.6.4 (subtitles)
Jansson 2.12 (JSON architecture)
libbluray 1.1.2 (Blu-ray decoding)
libdav1d 0.5.1 (AV1 decoding)
libdvdnav 6.0.1 (DVD decoding)
libdvdread 6.0.2 (DVD decoding)
libiconv 1.16 (character encoding support)
libmfx (Intel QSV support)
libogg 1.3.4 (Xiph codecs support)
libopus 1.3.1 (Opus audio encoding)
libvorbis 1.3.6 (Vorbis audio encoding)
libvpx 1.8.1 (VP8/VP9 video encoding)
libxml2 2.9.9 (general)
nv-codec-headers 9.0.18.1 (Nvidia NVENC encoding)
x265 3.2.1 (H.265/HEVC video encoding)
Linux
Fixed slider control not showing complete values
Updated translations (levels of completeness vary):
Czech
Chinese
French
German
Italian
Japanese
Korean
Norwegian
Russian
Spanish
Thai
Added translations (levels of completeness vary):
Afrikaans
Basque
Croatian
Dutch
Polish
Portuguese
Romanian
Slovak
Swedish
Turkish
Ukrainian
Added Intel QSV support to Flatpak (requires additional plugin installation)
Added ability to double-click to edit audio track settings
Added options to open encode log and log directory to actions menu on queue window
Miscellaneous bug fixes and improvements
Mac
HandBrake now requires OS X 10.11 El Capitan or later
HandBrake is now sandboxed and uses the macOS hardened runtime
Updated priority for low-priority threads on macOS to avoid potential stalls in future macOS
Updated translations:
German
Added translations:
French
Italian
Russian
Added preference to disable preview image on summary tab
Miscellaneous bcently used to fallback to parent directory
Improved preferences layout
Improved auto naming collision behavior and file overwriting
Added preference to test selected notification sound
Added preference to perform when done action immmediace safety measures
Encoding jobs automatically pause when battery level is low, system sleep is allowed, and jobs resume when power is restored
Encoding jobs automatically pause when disk space drops to critical levels
Added translatioovements
Changelog:
adjust call sequence to ensure authenticate operation is executed
this patch is not needed for media-driver, but needed for
i965 driver which check authentication.
v1.8.2 "Pekin Duck"
This release collects incremental improvements to many aspects of the library.
- Upgrading:
ARCH_* defines have been removed in favor of VPX_ARCH_*.
Version 43.0.0 "The Quartermaster":
New features and enhancements
* MKVToolNix GUI: using one of the command line options `--info`,
`--edit-headers` or `--edit-chapters` will make the GUI select the
corresponding tool on startup even if no further file name is
given.
* MKVToolNix GUI: multiplexer: added a setting in the preferences for changing
the location of the MediaInfo executable for when the user accidentally
selected the wrong one.
Bug fixes
* mkvmerge: AVC/h.264 parser: the order of the NALUs before each key frame was
sometimes wrong: mkvmerge wrote SPS & PPS after SEI NALUs. Now SPS & PPS
NALUs are always written before the other NALUs. Patch by Torsten
Hauska.
* mkvmerge: AVC/h.264 parser: when additional SPS or PPS NALUs (with IDs that
haven't been seen so far) are found mid-stream, mkvmerge will prepend all
following key frames with all current valid SPS & PPS NALUs (just like when
SPS & PPS NALUs are overwritten mid-stream).
* mkvmerge: MPEG TS reader: fixed detection of MPEG-1/2 video tracks
consisting of very few frames.
* mkvmerge: Ogg Opus reader: fixed the handling of Ogg Opus streams that
contain a just one Ogg page (`mkvmerge` aborted with an exception).
* MKVToolNix GUI: multiplexer: dragging & dropping XML files with chapters or
tags to the GUI's window was broken in v42. Instead of adding the file names
to the appropriate input boxes the GUI was running mkvmerge for file
identification purposes which then failed.
Changes:
0.32.0
======
Features
--------
Added
~~~~~
- stream_libarchive: enable RAR5 support
- bash completion: add initial implementation
- cocoa-cb: add support for forcing the dedicated GPU for rendering
- cocoa-cb: add pinch to resize window gesture
- w32_common: support minimizing/maximizing using osc window controls
Changed
~~~~~~~
- wayland: print warning on GNOME due to serious issues with their compositor
- player: write watch-later config even for unseekable streams
Removed
~~~~~~~
- vo_gpu: hwdec_vdpau: remove direct_mode
- vo_gpu: hwdec_vaegl: remove support for old-style interop
Options and Commands
--------------------
Added
~~~~~
- command: add a playlist-unshuffle command
- command: add osd-dimensions property
- input: new PLAYONLY and PAUSEONLY keycodes
Changed
~~~~~~~
- options: change option parsing when using a single dash
This adds a warning for `-o file.mkv` and disallows the use of
`--o file.mkv` (use `--o=file.mkv` instead).
Fixes and Minor Enhancements
----------------------------
- lua: fix mp.file_info for large files
- vo_gpu: fix crash if dither texture fails to allocate
- wayland: unscrew up cursors, fix various issues
- osc: usability improvements for osc window controls
pkglint -r --network --only "migrate"
As a side-effect of migrating the homepages, pkglint also fixed a few
indentations in unrelated lines. These and the new homepages have been
checked manually.
Enlightened Sound Daemon was one of the earlier solutions to the old
"multiple programs can't open /dev/audio at once" problem that was once
a thing we had to worry about.
Eventually, it was adopted as part of GNOME. GNOME lost interest in it
about a decade ago and dropped it in favour of PulseAudio, newer
applications are generally uninterested in supporting it. Last release
was in 2008 and support for newer OS APIs is pretty nonexistent.
Several years ago the original website disappeared.
https://en.wikipedia.org/wiki/Enlightened_Sound_Daemonhttps://tracker.debian.org/news/999428/removed-0241-11-from-unstable/
pkglint --only "https instead of http" -r -F
With manual adjustments afterwards since pkglint 19.4.4 fixed a few
indentations in unrelated lines.
This mainly affects projects hosted at SourceForce, as well as
freedesktop.org, CTAN and GNU.
Changes since 0.1.6:
- Defaults to Gtk+ 3 (like libDesktop)
- Defaults to mpv(1) as the video backend
- Updated translations
- Updated the documentation
- Extended the Player API
- Added support for reading DVDs
The second 1.16 bug-fix release (1.16.2) was released on 3 December 2019.
This release only contains bugfixes and it should be safe to update from 1.16.1.
Highlighted bugfixes in 1.16.2
Interlaced video scaling fixes
CineForm video support in AVI
audiorate: avoid glitches due to rounding errors after changing rate
Command line tool output printing improvements on Windows
various performance improvements, memory leak fixes and security fixes
VP9 decoding fixes
avfvideosrc: Explicitly request video permission on macOS 10.14+
wasapi: bug fixes and stability improvements
webrtc-audio-processing: fix segmentation fault on 32-bit windows
tsdemux: improved handling of certain discontinuities
vaapi h265 decoder: wait for I-frame before trying to decode
gstreamer
gst-launch: Fix ugly stdout on Windows
tee: Make sure to actually deactivate pads that are released
bin: Drop need-context messages without source instead of crashing
gst: Don't pass miniobjects to GST_DEBUG_OBJECT() and similar macros
tracers: Don't leak temporary GstStructure
gst-plugins-base
xvimagepool: Update size, stride, and offset with allocated XvImage
video-converter: Fix RGB-XYZ-RGB conversion
audiorate: Update next_offset on rate change
audioringbuffer: Reset reorder flag before check
audio-buffer: Don't fail to map buffers with zero samples
videorate: Fix max-duplication-time handling
gl/gbm: ensure we call the resize callback before attempting to draw
video-converter: Various fixes for interlaced scaling
gstrtspconnection: messages_bytes not decreased
check: Don't use real audio devices for tests
riff: add CineForm mapping
glfilters: Don't use static variables for storing per-element state
glupload: Add VideoMetas and GLSyncMeta to the raw uploaded buffers
streamsynchronizer: avoid pad release race during logging.
gst-play: Use gst_print* to avoid broken stdout string on Windows
gst-plugins-good
vp9dec: Fix broken 4:4:4 8bits decoding
rtpsession: add locking for clear-pt-map
rtpL16depay: don't crash if data is not modulo channels*width
wavparse: Fix push mode ignoring audio with a size smaller than segment buffer
wavparse: Fix push mode ignoring last audio payload chunk
aacparse: fix wrong offset of the channel number in adts header
jpegdec: Fix incorrect logic in EOI tag detection
videocrop: Also update the coordinate when in-place
jpegdec: don't overwrite the last valid line
vpx: Error out if enabled and no features found
v4l2videodec: ensure pool exists before orphaning it
v4l2videoenc: fix type conversion errors
v4l2bufferpool: Queue number of allocated buffers to capture
v4l2object: fix mpegversion number typo
v4l2object: Work around bad TRY_FMT colorimetry implementations
gst-plugins-bad
avfvideosrc: Explicitly request video permission on macOS 10.14+
wasapi: Various fixes and a workaround for a specific driver bug
wasapi: Move to CoInitializeEx for COM initialization
wasapi: Fix runtime/build warnings
waylandsink: Commit the parent after creating subsurface
msdkdec: fix surface leak in msdkdec_handle_frame
tsmux: Fix copying of buffer region
tsdemux: Handle continuity mismatch in more cases
tsdemux: Always issue a DTS even when it's equal to PTS
openexr: Fix build with OpenEXR 2.4 (and also OpenEXR 2.2 on Ubuntu 18.04)
ccextractor: Always forward all sticky events to the caption pad
pnmdec: Return early on ::finish() if we have no actual data to parse
ass: avoid infinite unref loop with bad data
fluidsynth: add sf3 to soundfont search path
webrtcdsp/webrtcechoprobe segmentation fault on windows (1.16.0 x86)
gst-libav
avvidenc: Fix error propagation
avdemux: Fix segmentation fault if long_name is NULL
avviddec: Fix huge leak caused by circular reference
avviddec: Enforce allocate new AVFrame per input frame
avdec_mpeg2video (and probably more): Huge memory leak in git master
gst-rtsp-server
rtsp-media: Use lock in gst_rtsp_media_is_receive_only
rtsp-client: RTP Info when completed_sender
rtsp-client: fix location uri-format by getting uri directly from context instead
gstreamer-vaapi
meson build: halt configuration if no renderer API
libs: decoder: h265: skip all pictures prior the first I-frame
libs: window: x11: Avoid usage of deprecated API
gst-editing-services
Initialize debug categories before usage
gst-build
gst-env: Use locally built GStreamer utility programs
version 3.4.7:
- avcodec/g729dec: require buf_size to be non 0
- avcodec/alac: Fix integer overflow in lpc_prediction() with sign
- avcodec/wmaprodec: Fix buflen computation in save_bits()
- avcodec/vc1_block: Fix integer overflow in AC rescaling in vc1_decode_i_block_adv()
- avcodec/vmdaudio: Check chunk counts to avoid integer overflow
- avformat/mxfdec: Clear metadata_sets_count in mxf_read_close()
- avcodec/nuv: Use ff_set_dimensions()
- avcodec/ffwavesynth: Fix integer overflow with pink_ts_cur/next
- avcodec/ralf: Fix integer overflows with the filter coefficient in decode_channel()
- avcodec/g729dec: Use 64bit and clip in scalar product
- avcodec/mxpegdec: Check for multiple SOF
- avcodec/nuv: Move comptype check up
- avcodec/wmavoice: Fix integer overflow in synth_frame()
- avcodec/rawdec: Check bits_per_coded_sample more pedantically for 16bit cases
- avutil/lfg: Correct index increment type to avoid undefined behavior
- avcodec/cngdec: Remove AV_CODEC_CAP_DELAY
- avcodec/iff: Move index use after check in decodeplane8()
- avcodec/atrac3: Check for huge block aligns
- avcodec/ralf: use multiply instead of shift to avoid undefined behavior in decode_block()
- avcodec/wmadec: Require previous exponents for reuse
- avcodec/vc1_block: Fix undefined behavior in ac prediction rescaling
- avcodec/qdm2: The smallest header seems to have 2 bytes so treat 1 as invalid
- avcodec/apedec: Fixes integer overflow of res+*data in do_apply_filter()
- avcodec/sonic: Fix integer overflow in predictor_calc_error()
- avformat/mp3dec: Check that the frame fits within the probe buffe
- lavc/tableprint_vlc: Remove avpriv_request_sample() from included files.
- avcodec/wmaprodec: get frame during frame decode
- avcodec/interplayacm: Fix overflow of last unused value
- avcodec/adpcm: Fix undefined behavior with negative predictions in IMA OKI
- avcodec/cook: Move up and extend block_align check
- avcodec/twinvq: Check block_align
- avcodec/cook: Enlarge gain table
- avcodec/cook: Check samples_per_channel earlier
- avcodec/atrac3plus: Check split point in fill mode 3
- avcodec/wmavoice: Check sample_rate
- avcodec/xsubdec: fix overflow in alpha handling
- avcodec/iff: Check available space before entering loop in decode_long_vertical_delta2() / decode_long_vertical_delta()
- avcodec/apedec: Fix integer overflow in filter_3800()
- avutil/lfg: Document the AVLFG struct
- avcodec/ffv1dec: Use a different error message for the slice level CRC
- avcodec/apedec: Fix undefined integer overflow in long_filter_ehigh_3830()
- avcodec/dstdec: Check that AC probabilities are within range
- avcodec/dstdec: Check read_table() for failure
- avcodec/snowenc: Set mb_num to avoid ratecontrol floating point divisions by 0.0
- avcodec/snowenc: Fix 2 undefined shifts
- avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()
- avcodec/aacdec_template: Check samplerate
- avcodec/truemotion2: Fix several integer overflows in tm2_low_res_block()
- avcodec/utils: Check block_align
- avcodec/wmalosslessdec: Fix some integer anomalies
- avcodec/adpcm: Fix invalid shifts in ADPCM DTK
- avcodec/apedec: Only clear the needed buffer space, instead of all
- avcodec/libvorbisdec: Fix insufficient input checks leading to out of array reads
- avcodec/g723_1dec: fix invalid shift with negative sid_gain
- avcodec/vp5: Check render_x/y
- avcodec/qdrw: Check input for header/skiped space before get_buffer()
- avcodec/ralf: Skip initializing unused filter variables
- avcodec/takdec: Fix overflow with large sample rates
- avcodec/alsdec: Check that input space for header exists in read_diff_float_data()
- avformat/pjsdec: Check duration for overflow
- avcodec/ptx: Check that the input contains at least one line
- avcodec/alac: Fix integer overflow in LPC
- avcodec/smacker: Fix integer overflows in pred[] in smka_decode_frame()
- avcodec/aliaspixdec: Check input size against minimal picture size
- avcodec/ffwavesynth: Fix integer overflows in pink noise addition
- avcodec/vc1_block: Fixes integer overflow in vc1_decode_i_block_adv()
- avcodec/wmalosslessdec: Check block_align
- avcodec/g729postfilter: Fix left shift of negative value
- avcodec/binkaudio: Check sample rate
- avcodec/adpcm: Check initial predictor for ADPCM_IMA_EA_EACS
- avcodec/g723_1dec: Fix overflow in shift
- avcodec/apedec: Fix integer overflow in predictor_update_3930()
- avcodec/g729postfilter: Fix undefined intermediate pointers
- avcodec/g729postfilter: Fix undefined shifts
- avcodec/lsp: Fix undefined shifts in lsp2poly()
- avcodec/adpcm: Fix left shifts in AV_CODEC_ID_ADPCM_EA
- avformat/shortendec: Check k in probe
- avfilter/vf_geq: Use av_clipd() instead of av_clipf()
- avcodec/wmaprodec: Check that the streams channels do not exceed the overall channels
- avcodec/qdmc: Check input space in qdmc_get_vlc()
- avcodec/pcm: Check bits_per_coded_sample
- avcodec/exr: Allow duplicate use of channel indexes
- avcodec/fitsdec: Fail on 0 naxisn
- avcodec/ituh263dec: Check input for minimal frame size
- avcodec/truemotion1: Check that the input has enough space for a minimal index_stream
- avformat/mpsubdec: Clear queue on error
- avcodec/sunrast: Check that the input is large enough for the maximally compressed image
- avcodec/sunrast: Check for availability of maplength before allocating image
- avformat/subtitles: Check nb_subs in ff_subtitles_queue_finalize()
- avcodec/wmaprodec: Check if there is a stream
- avcodec/g2meet: Check for end of input in jpg_decode_block()
- avcodec/g2meet: Check if adjusted pixel was on the stack
- avformat/electronicarts: If no packet has been read at the end do not treat it as if theres a packet
- avcodec/utils: Check sample_rate before opening the decoder
- avcodec/fitsdec: fix use of uninitialised values
- avcodec/motionpixels: Mark 2 functions as always_inline
- avcodec/ralf: Fix integer overflow in decode_channel()
- vcodec/vc1: compute rangex/y only for P/B frames
- avcodec/vc1_pred: Fix invalid shifts in scaleforopp()
- avcodec/vc1_block: Fix invalid shift with rangeredfrm
- avcodec/vc1: Check for excessive resolution
- avcodec/vc1: check REFDIST
- avcodec/apedec: Fix several integer overflows in predictor_update_filter() and do_apply_filter()
- avcodec/hevc_cabac: Tighten the limit on k in ff_hevc_cu_qp_delta_abs()
- avcodec/4xm: Check index in decode_i_block() also in the path where its not used.
- avcodec/atrac3: Check block_align
- avcodec/alsdec: Avoid dereferencing context pointer in inner interleave loop
- avcodec/fitsdec: Prevent division by 0 with huge data_max
- avcodec/dstdec: Fix integer overflow in samples_per_frame computation
- avcodec/g729_parser: Check block_size
- avcodec/utils: Optimize ff_color_frame() using memcpy()
- avcodec/aacdec: Check if we run out of input in read_stream_mux_config()
- avcodec/utils: Use av_memcpy_backptr() in ff_color_frame()
- avcodec/smacker: Fix integer overflow in signed int multiply in SMK_BLK_FILL
- avcodec/alac: Fix invalid shifts in 20/24 bps
- avcodec/alac: fix undefined behavior with INT_MIN in lpc_prediction()
- avcodec/ffwavesynth: Fix integer overflow in timestamps
- avcodec/adpcm: Check number of channels for MTAF
- avcodec/sunrast: Fix indention
- avcodec/sunrast: Fix return type for "unsupported (compression) type"
- avformat/mov: Check for EOF in mov_read_meta()
- avcodec/hevcdec: Fix memleak of a53_caption
- avformat/cdxl: Fix integer overflow in intermediate
- avcodec/hevcdec: repeat character in skiped
- avcodec/gdv: Replace assert() checking bitstream by if()
- libavcodec/utils: Free threads on init failure
- avcodec/htmlsubtitles: Avoid locale dependant isdigit()
- avcodec/alsdec: Check k from being outside what our implementation can handle
- avcodec/takdec: Fix integer overflow in decorrelate()
- avcodec/aacps: Fix integer overflows in hybrid_synthesis()
- avcodec/vp56rac: delay signaling an error on truncated input
- avcodec/vp5/6/8: use vpX_rac_is_end()
- avcodec/vp56: Add vpX_rac_is_end() to check for the end of input
- avcodec/qdm2: Check frame size
- avcodec/vc1_pred: Fix refdist in scaleforopp()
- avcodec/vorbisdec: fix FASTDIV usage for vr_type == 2
- avcodec/iff: Check for overlap in cmap_read_palette()
- avcodec/apedec: Fix 32bit int overflow in do_apply_filter()
- avcodec/ralf: fix undefined shift in extend_code()
- avcodec/ralf: fix undefined shift
- avcodec/bgmc: Check input space in ff_bgmc_decode_init()
- avcodec/truemotion2: Fix multiple integer overflows in tm2_null_res_block()
- avcodec/vc1dec: Require res_sprite for wmv3images
- avcodec/vc1_block: Check for double escapes
- avcodec/vorbisdec: Check get_vlc2() failure
- avcodec/tta: Fix integer overflow in prediction
- avcodec/vb: Check input packet size to be large enough to contain flags
- avcodec/cavsdec: Limit the number of access units per packet to 2
- avcodec/alac: Check for bps of 0
- avcodec/alac: Fix multiple integer overflows in lpc_prediction()
- avcodec/rl2: set dimensions
- avcodec/aacdec: Add FF_CODEC_CAP_INIT_CLEANUP
- avcodec/idcinvideo: Add 320x240 default maximum resolution
- avformat/realtextdec: free queue on error
- avcodec/alsdec: Fix integer overflow in decode_var_block_data()
- avcodec/alsdec: Limit maximum channels to 512
- avcodec/anm: Check input size for a frame with just a stop code
- avcodec/flicvideo: Optimize and Simplify FLI_COPY in flic_decode_frame_24BPP() by using bytestream2_get_buffer()
- avcodec/loco: Check left column value
- avcodec/ffwavesynth: Fixes invalid shift with pink noise seeking
- avcodec/ffwavesynth: Fix integer overflow for some corner case values
- avcodec/indeo2: Check remaining input more often
- avcodec/diracdec: Check that slices are fewer than pixels
- avcodec/vp56: Consider the alpha start as end of the prior header
- avcodec/4xm: Check for end of input in decode_p_block()
- avcodec/hevcdec: Check delta_luma_weight_l0/1
- avcodec/hnm4video: Optimize postprocess_current_frame()
- avcodec/hevc_refs: Optimize 16bit generate_missing_ref()
- avcodec/scpr: Use av_memcpy_backptr() in type 17 and 33
- avcodec/dds: Use ff_set_dimensions()
- avcodec/mpc8: Fix 32bit mask/enum
- avcodec/alsdec: Fix integer overflows of raw_samples in decode_var_block_data()
- avcodec/alsdec: Fix integer overflow of raw_samples in decode_blocks()
- avcodec/alsdec: fix mantisse shift
- avcodec/aacdec_template: fix integer overflow in imdct_and_windowing()
- libavcodec/iff: Use unsigned to avoid undefined behaviour
- avcodec/alsdec: Check for block_length <= 0 in read_var_block_data()
- avcodec/vqavideo: Set video size
- avcodec/sanm: Check extradata_size before allocations
- avcodec/mss1: check for overread and forward errors
- avcodec/dirac_parser: Fix overflow in dts
- avcodec/ralf: Fix undefined pointer in decode_channel()
- avcodec/ralf: Fix integer overflow in apply_lpc()
- avcodec/vorbisdec: Implement vr->classifications = 1
- avcodec/vorbisdec: Check parameters in vorbis_floor0_decode() before divide
- avformat/realtextdec: Check for duplicate extradata in realtext_read_header()
- avcodec/apedec: Fix 2 signed overflows
- avcodec/mss3: Check for the rac stream being invalid in rac_normalize()
- avcodec/vc1_block: Check get_vlc2() return before use
- avcodec/apedec: Do not partially clear data array
- avcodec/hnm4video: Forward errors of decode_interframe_v4()
- avcodec/vp3: Check that theora is theora
- avcodec/vc1_pred: Fix invalid shift in scaleforsame()
- avcodec/vc1_block: Fix integer overflow in ff_vc1_pred_dc()
- avcodec/truemotion2: Fix several integer overflows in tm2_motion_block()
- avcodec/apedec: make left/right unsigned to avoid undefined behavior
- avcodec/apedec: Fix multiple integer overflows and undefined behaviorin filter_3800()
- avformat/mpc: deallocate frames array on errors
- avcodec/eatqi: Check for minimum frame size
- avcodec/eatgv: Check remaining size after the keyframe header
- avcodec/assdec: undefined use of memcpy()
- avcodec/brenderpix: Check input size before allocating image
- lafv/wavdec: Fail bext parsing on incomplete reads
- avcodec/utils: fix leak of subtitle_header on error path
- avcodec/utils: Check close before calling it
- avcodec/vorbisdec: Check vlc for floor0 dec vector offset
- avcodec/vorbisdec: amplitude bits can be more than 25 bits
- avutil/softfloat_ieee754: Fix odd bit position for exponent and sign in av_bits2sf_ieee754()
- avcodec/apedec: Fix various integer overflows
- avcodec/apedec: Fix multiple integer overflows in predictor_update_filter()
- avcodec/alsdec: fix undefined shift in multiply()
- avcodec/alsdec: Fix 2 integer overflows
- avcodec/flicvideo: Make line_packets int
- avcodec/dvbsubdec: Use ff_set_dimensions()
- avcodec/ffwavesynth: Check if there is enough extradata before allocation
- avcodec/ffwavesynth: More correct cast in wavesynth_seek()
- avcodec/ffwavesynth: Check sample rate before use
- avcodec/dnxhd_parser: Fix parser when input does not have nicely sized packets
- avcodec/dnxhd_parser: remove unneeded code
- avformat/utils: Check rfps_duration_sum for overflow
- avcodec/h264_refs: Also check reference in ff_h264_build_ref_list()
- avcodec/parser: Check next index validity in ff_combine_frame()
- avcodec/ivi: Ask for samples with odd tiles
- avformat/xmv: Make bitrate 64bit
- avcodec/pngdec: Check that previous_picture has same w/h/format
- avcodec/huffyuv: remove gray8a (the format is listed but not supported by the implementation)
- avcodec/mpc8: Fixes invalid shift in mpc8_decode_frame()
- avcodec/utils, avcodec_open2: close codec on failure
- avcodec/golomb: Correct the doxy about get_ue_golomb() and errors
- avformat/utils: Check timebase before use in estimate_timings()
- avcodec/hq_hqa: Use ff_set_dimensions()
- avcodec/rv10: Fix integer overflow in aspect ratio compare
- avcodec/4xm: Fix signed integer overflows in idct()
- avcodec/qdm2: Check checksum_size for 0
- avcodec/qdm2: error out of qdm2_fft_decode_tones() before entering endless loop
- avcodec/qdm2: Do not read out of array in fix_coding_method_array()
- avcodec/svq3: Use ff_set_dimension()
- avcodec/iff: Check ham vs bpp
- avcodec/ffwavesynth: use uint32_t to compute difference, it is enough
- avcodec/ffwavesynth: Simplify lcg_seek(), avoid negative case
- avcodec/ffwavesynth: Fix backward lcg_seek()
- avcodec/flicvideo: Fix off by 1 error in flic_decode_frame_24BPP()
- avcodec/vc1_block: Check for vlc error in vc1_decode_ac_coeff()
- avcodec/alac: Check lpc_quant
- avcodec/alsdec: Add FF_CODEC_CAP_INIT_CLEANUP
- avcodec/alsdec: Fix integer overflow with buffer number
- avcodec/alsdec: Fixes signed integer overflow in LSB addition
- avcodec/alsdec: Check opt_order / sb_length in ra_block handling
- avcodec/alsdec: Fix integer overflow with shifting samples
- avcodec/alsdec: Fix undefined behavior in decode_rice()
- avcodec/alsdec: Fixes invalid shifts in read_var_block_data() and INTERLEAVE_OUTPUT()
- avcodec/hevc_ps: Change num_tile_rows/columns checks to sps->ctb_height/weight
- avcodec/hevc_ps: Fix integer overflow with num_tile_rows and num_tile_columns
- avcodec/apedec: Add k < 24 check to the only k++ case which lacks such a check
- avformat/aviobuf: Delay buffer downsizing until asserts are met
- avcodec/fitsdec: Check data_min/max
- avcodec/m101: Fix off be 2 error
- avcodec/qdm2: Move fft_order check up
- avcodec/libvorbisdec: Check extradata size
- avformat/vqf: Check header_size
- avcodec/utils: Check bits_per_coded_sample
- avcodec/videodsp_template: Fix overflow of addition
- avcodec/alsdec: Fix invalid shift in multiply()
- avcodec/ffwavesynth: Check ts_end - ts_start for overflow
- avcodec/vc1dsp: Avoid undefined shifts in vc1_v_s_overlap_c / vc1_h_s_overlap_c
- avcodec/tta: Fix undefined shift
- avcodec/qdmc: Fix integer overflows in PRNG
- avcodec/bintext: Check font height
- avcodec/binkdsp: Fix integer overflows in idct
- avcodec/motionpixels: Check for vlc error in mp_get_vlc()
- avcodec/loco: Limit lossy parameter so it is sane and does not overflow
- avformat/mov: Set fragment.found_tfhd only after TFHD has been parsed
- avcodec/xpmdec: Do not use context dimensions as temporary variables
- avcodec/fitsdec: Fix division by 0 in size check
- avcodec/aacpsdsp_template: Fix integer overflow in ps_hybrid_analysis_c()
- avcodec/truemotion2: Fix integer overflow in last loop in tm2_update_block()
- avcodec/iff: finetune the palette size check in the mask case
- avcodec/iff: Fix mask_buf / mask_palbuf leak
- avformat/icodec: Free ico->images on error paths
- avformat/wsddec: Fix undefined shift
- avcodec/fmvc: Check if header fields are available before allocating the image
- avcodec/bink: Reorder operations in init to avoid memleak on error
- avformat/wtvdec: Avoid (32bit signed) sectors
- avcodec/bitstream: Check for more conflicting codes in build_table()
- avcodec/bitstream: Check for integer code truncation in build_table()
- avformat/sbgdec: Fixes integer overflow in str_to_time() with hours
- avformat/vpk: Check offset for validity
- avformat/vpk: Fix integer overflow in samples_per_block computation
- avcodec/mjpegdec: Check for non ls PAL8
- avcodec/interplayvideo: check decoding_map_size with video_data_size
- avcodec/h264_parse: Use 64bit for expectedpoc and expected_delta_per_poc_cycle
- avcodec/mss4: Check input size against skip bits
- avcodec/diracdec: Fix integer overflow in global_mv()
- avcodec/vmnc: Check available space against chunks before reget_buffer()
- avcodec/aacdec_template: skip apply_tns() if max_sfb is 0 (from previous header decode failure)
- avcodec/aacdec_fixed: Handle more extreem cases in noise_scale()
- avcodec/aacdec_template: Merge 3 #ifs related to noise handling
- avcodec/aacdec_fixed: ssign seems always -1 in noise_scale(), simplify
- avformat/mp3enc: Avoid SEEK_END as it is unsupported
- avcodec/truemotion2: Fix several integer overflows in tm2_update_block()
- avformat/webm_chunk: Specify expected argument length of get_chunk_filename()
- avformat/webm_chunk: Check header filename length
- avcodec/cpia: Check input size also against linesizes and EOL
- swscale/tests/swscale: Lengthen pixfmt name buffer to 21 bytes
- libswcale: Fix possible string overflow in test.
- avcodec/hq_hqa: Check available space before reading slice offsets
- lavf/webm_chunk: Respect buffer size
- avcodec/fits: Check bitpix
- avcodec/jvdec: Use ff_get_buffer() when the content is not reused
- avcodec/truemotion2: Fix 2 integer overflows in tm2_update_block()
- avcodec/jpeg2000: Check stepsize before using it
- avcodec/aacdec_fixed: Fix undefined shift in noise_scale()
- avutil/avstring: Fix bug and undefined behavior in av_strncasecmp()
- avformat/mov: Skip stsd adjustment without chunks
- avformat/aadec: Check for scanf() failure
- avcodec/ccaption_dec: Add a blank like at the end to avoid rollup reading from outside
- avcodec/ivi: Move buffer/block end check to caller of ivi_dc_transform()
- avcodec/diracdec: Use 64bit in intermediate of global motion vector field generation
- avcodec/truemotion2: Fix integer overflow in tm2_decode_blocks()
- avcodec/rscc: Check that the to be uncompressed input is large enough
- avcodec/bsf: check that AVBSFInternal was allocated before dereferencing it
- lavf/rawenc: Only accept the appropriate stream type for raw muxers.
- avcodec/h263dec: fix hwaccel decoding
- avutil/mem: Fix invalid use of av_alloc_size
- avformat/aacdec: resync to the next adts frame on invalid data instead of aborting
- avformat/aacdec: factorize the adts frame resync code
Version 42.0.0 "Overtime":
New features and enhancements
* mkvmerge: added an option for creating byte-identical files:
`--deterministic <seed>`.
* mkvmerge: Matroska reader: mkvmerge will remove the `icpf` atom headers if
they're present in frames read from Matroska files.
* mkvmerge: MP4 reader: ALAC tracks: the number of channels, sampling
frequency and bit depth are now taken from the bitstream in order to fix
bogus values on the container level.
* mkvpropedit: when changing track UIDs the referring elements in existing
chapters & tags will be updated automatically, too.
* mkvinfo: when the option `-p`/`--hex-positions` is used, element positions
will be output regardless of the verbosity level.
* mkvinfo: added the option `-P`/`--positions` for showing the position of
each element in decimal regardless of the verbosity level used.
* mkvinfo: added the option `-o`/`--continue` for continuing processing when
the first cluster is encountered regardless of the verbosity level
used.
* mkvinfo: added the option `-a`/`--all` for outputting all sub-elements (even
cues & seek head entries) and not stopping at the first cluster regardless
of the verbosity level used.
* MKVToolNix GUI: multiplexer: added an option in the preferences for
disabling adding cover images from Blu-ray discs.
* MKVToolNix GUI: multiplexer: added mkvmerge's new `--deterministic` option
in the "additional command-line options" dialog.
* MKVToolNix GUI: header editor:: when changing track UIDs the referring
elements in existing chapters & tags will be updated automatically,
too.
Bug fixes
* mkvmerge: HEVC ES parser: fixed a bug in the slice parser calculating the
size of a field which in turn could have led to the slice's type being read
wrong.
* mkvmerge: Matroska reader: fixed a segmentation fault when trying to read a
file that uses header removal compression but no removed bytes are present
in the track headers.
* mkvmerge: MPEG elementary stream parser: fixed an invalid memory access and
use of uninitialized memory that could happen under certain
circumstances.
* mkvmerge: RealMedia reader: fixed a division by zero when all audio
timestamps were zero.
* mkvmerge: RealMedia reader: fixed an invalid memory access in the video
frame assembly code triggered by invalid data in the file.
Build system changes
* `std::optional` (C++17 feature) is now used instead of `boost::optional`.
* `std::regex` is now used instead of `boost::regex`.
Other changes
* New man page translations into French, Italian, Russian and Chinese
Traditional have been added.
* Convert to ffmpeg4 from ffmpeg3
Changelog:
We are happy to announce the new release 0.8.0 of GPAC, featuring AV1, full CENC and ATSC3.0 support.
General
Many security fixes (static compile and fuzzing through AFL, always ongoing).
Many bugs fixes
Added :ncl option in log levels to disable color logs
More tests and coverage
File Formats
Better support of QTFF / ProRes files
Support for AV1
-- import and export
-- source formats: OBUs (Section 5), IVF and AnnexB
-- AV1 in HEIF
Support for color (nclc, nclx and ICC profiles) in HEIF and ISOBMFF
Support for HDR (mdcv, clli) info in HEIF and ISOBMFF
Support for alpha in HEIF
Support for enforcing pasp presence even for 1:1 ratios
HEVC temporal sublayer split in MP4Box
Allow meta storage before mdat for meta-only files (heif and co)
Added option to keep AU delimiter in isobmff samples
Support for opus import
Support for pixi and ccst in HEIF
DolbyVision 'dvcC' and partial 'dvhe' boxes for HDR
Support for VP9 import and playback
Sample dependency in avc and hevc importers, and track thinner for non-refs images
Support for audio_roll signaling
New audio import mode to control AudioSampleEntry creation (v0, v1 ISOBMFF, v1 QTFF)
xHE-AAC import with detection of sync samples
Added support for MPEG-H 3D audio boxes (no import yet)
Handle Vobsub empty SPU packets
Added auxv and pict support
Common Encryption
Fully compliant CENC supporting cenc, cens, cbc1 and cbcs
CENC for AV1
Improved DASH+CENC support, pssh in MPD
ForceClear mode for CENC to skip encryption without sample groups
Made senc in movie fragments always stored before truns
Added default values handling for cbcs and possibility to set protection system per track
Compatibility with OpenSSL 1.1.x
Streaming and Adaptive Streaming
Support for ATSC3.0 both US and Korean versions !
Support for for live splices (xlink period insertions) in DASH client
Automatic period continuity in DASH when no codec change between periods
Added DASH cue-base segmentation (XML based) and -dsap option to generate cue files from source
Support for BBA-0 and BOLA implementations
Write fragment defaults in trex even when not using them
Support for simple ssix for keyframe data byterange at the start of a segment
Moved segment template at AdaptationSet level if only one representation
Changed default bsmode in dasher if single input file
Added init-seg-ext option
Added -mvex-after-traks option to MP4Box when dashing for CMAF
Added segmentation option to insert a tfdt per traf
Added -closest mode for DASH segmentation
Added -bound option to use audio segmenting method for video
Renamed -dash-run-for to -run-for
Added '=' in dash templates
Improved bandwith estimation when using HTTP 1.1 chunk transfer
Add option to force moof base offsets
MP4Box
Added -catpl to concatenate from playlist in MP4Box
Added options to set movie timescale at import and dash time
Added mpd rip option and top-level box compressor in MP4Box
Made -dts skip timing check and added -dtsc for that
Made force-cat option more agressive
Support for MovieFragmentRandomAccess using -mfra option
Added -dtsx to dump timing without offset
Added -dnalc opt for nal CRC dump
Added chunk extraction up to time until end
ISOBMFF single track import now removes references by default
Decoders
Updated ffmpeg to 4.0.2
Moved to openHEVC 3.0 API
Added nvdec support (windows, linux) with reuse of decoder context for tiled VR
Added HEVC support to mediacodec on android
AV1 playback through ffmpeg
Opus playback through ffmpeg
3D, VR and 360
Added vrhud for multiviewpoint 360
Added forced visibility mode of tiles in VR
Added tile visibility debug mode
Added forced stereo output for openhevc
Disable face nav if mouse grabbed
Added simple face tracking vr navigation based on udp commands
Added PSVR support
Added mouse move emulation at window border to force sphere rotation when inactive
Changed tile visibility algo to sample points in mesh
Players (Mobile and Desktop)
Added about extension
Added multiple audio objects in dynamic scene
Added addon splicing of main content
Added mosaic://v1:.:vN url support
Added gaze simulation through mouse and gaze-sphere visibility test
Subtitles
Allow * as argument of -srt|ttxt to dump all possible tracks (#925)
Improved support for WebVTT import
Improved support for WebVTT DASHing/fragmentation
Misc
OSX install now done through PKG and modify PATH env in/etc/paths
Added initial PMT version and disc marker to TS muxer
Moved dektec output to matrix API, added SDI clipping
Added temi periodic toggle and manual toggle in MP42TS
Changes:
- Fixed: build warning from mismatched callback signature.
- Fixed: only first column printed with colors off.
- New: type 'q' at the prompt to quit.
- New: next page suggested after last subpage (e.g. [101] after [101-4]).
- Change: drop /usr/local from default include and lib search path. System
search paths aren't for us to decide.
version 4.2.2
- cbs_mpeg2: Fix parsing the last unit
- cbs_mpeg2: Rearrange start code search
- cbs_mpeg2: Decompose Sequence End
- cbs_mpeg2: Fix parsing of picture and slice headers
- cbs: Remove useless initializations
- mpeg2_metadata, cbs_mpeg2: Fix handling of colour_description
- lavc/cbs_h2645_syntax_template: Fix memleak
- avcodec/cbs: Fix potential overflow
- avcodec/cbs: Factor out common code for writing units
- avcodec/ffwavesynth: Fix undefined overflow in wavesynth_synth_sample()
- avcodec/ffwavesynth: Fix undefined overflow in wavesynth_synth_sample()
- avcodec/cook: Use 3 stage VLC decoding for channel_coupling
- avcodec/wmalosslessdec: Fixes undefined overflow in dequantization in decode_subframe()
- avcodec/sonic: Check e in get_symbol()
- avcodec/twinvqdec: Correct overflow in block align check
- avcodec/vc1dec: Fix "return -1" cases
- avcodec/vc1dec: Free sprite_output_frame on error
- avcodec/atrac9dec: Clamp band_ext_data to max that can be read if skipped.
- avcodec/agm: Include block size in the MV check for flags == 3
- avcodec/wmadec: Keep track of exponent initialization per channel
- avcodec/iff: Check that video_size is large enough for the read parameters
- avcodec/cbs_vp9: Check data_size
- avcodec/cbs_vp9: Check index_size
- avcodec/adpcm: Clip predictor for APC
- avcodec/targa: Check colors vs. available space
- avcodec/dstdec: Use get_ur_golomb_jpegls()
- avcodec/wmavoice: Check remaining input in parse_packet_header()
- avcodec/wmalosslessdec: Fix 2 overflows in mclms
- avcodec/wmaprodec: Fixes integer overflow with 32bit samples
- avcodec/adpcm: Fix invalid shift in xa_decode()
- avcodec/wmalosslessdec: Fix several integer issues
- avcodec/wmalosslessdec: Check that padding bits is not more than sample bits
- avcodec/iff: Skip overflowing runs in decode_delta_d()
- avcodec/pnm: Check that the header is not truncated
- avcodec/mp3_header_decompress_bsf: Check sample_rate_index
- avcodec/cbs_av1_syntax_template: Check num_y_points
- avformat/rmdec: Initialize and sanity check offset in ivr_read_header()
- avcodec/agm: Do not allow MVs out of the picture area as no edge is allocated
- avcodec/apedec: Fix 2 integer overflows
- avformat/id3v2: Fix double-free on error
- avcodec/wmaprodec: Set packet_loss when we error out on a sanity check
- avcodec/wmaprodec: Check offset
- avcodec/truemotion2: Fix 2 integer overflows in tm2_low_res_block()
- avcodec/wmaprodec: Check if the channel sum of all internal contexts match the external
- avcodec/atrac9dec: Check q_unit_cnt more completely before using it to access at9_tab_band_ext_group
- avcodec/fitsdec: Use lrint()
- avcodec/g729dec: Avoid using buf_size
- avcodec/g729dec: Factor block_size out
- avcodec/g729dec: require buf_size to be non 0
- avcodec/alac: Fix integer overflow in lpc_prediction() with sign
- avcodec/wmaprodec: Fix buflen computation in save_bits()
- avcodec/vc1_block: Fix integer overflow in AC rescaling in vc1_decode_i_block_adv()
- avcodec/vmdaudio: Check chunk counts to avoid integer overflow
- avformat/mxfdec: Clear metadata_sets_count in mxf_read_close()
- avcodec/nuv: Use ff_set_dimensions()
- avformat/vividas: Error out on audio packets in the absence of audio streams
- avformat/vividas: Check and require 1 video stream
- avcodec/ffwavesynth: Fix integer overflow with pink_ts_cur/next
- avcodec/ralf: Fix integer overflows with the filter coefficient in decode_channel()
- avcodec/g729dec: Use 64bit and clip in scalar product
- avcodec/mxpegdec: Check for multiple SOF
- avcodec/nuv: Move comptype check up
- avcodec/wmavoice: Fix integer overflow in synth_frame()
- avcodec/rawdec: Check bits_per_coded_sample more pedantically for 16bit cases
- avutil/lfg: Correct index increment type to avoid undefined behavior
- avcodec/cngdec: Remove AV_CODEC_CAP_DELAY
- avcodec/iff: Move index use after check in decodeplane8()
- avcodec/atrac3: Check for huge block aligns
- avcodec/ralf: use multiply instead of shift to avoid undefined behavior in decode_block()
- avcodec/wmadec: Require previous exponents for reuse
- avcodec/vc1_block: Fix undefined behavior in ac prediction rescaling
- avcodec/qdm2: The smallest header seems to have 2 bytes so treat 1 as invalid
- avcodec/apedec: Fixes integer overflow of res+*data in do_apply_filter()
- avcodec/sonic: Fix integer overflow in predictor_calc_error()
- avformat/vividas: Add EOF check in val_1 loop in track_header()
- avcodec/atrac9dec: Check precision_fine/coarse
- avformat/mp3dec: Check that the frame fits within the probe buffer
- vcodec/agm: Alloc based on coded dimensions
- avcodec/wmaprodec: get frame during frame decode
- avcodec/interplayacm: Fix overflow of last unused value
- avcodec/adpcm: Fix undefined behavior with negative predictions in IMA OKI
- avcodec/cook: Move up and extend block_align check
- avcodec/sbcdec: Fix integer overflows in sbc_synthesize_four()
- avcodec/twinvq: Check block_align
- avcodec/cook: Enlarge gain table
- avcodec/cook: Check samples_per_channel earlier
- avcodec/atrac3plus: Check split point in fill mode 3
- avcodec/wmavoice: Check sample_rate
- avcodec/xsubdec: fix overflow in alpha handling
- avcodec/iff: Check available space before entering loop in decode_long_vertical_delta2() / decode_long_vertical_delta()
- avcodec/apedec: Fix integer overflow in filter_3800()
- avutil/lfg: Document the AVLFG struct
- avcodec/ffv1dec: Use a different error message for the slice level CRC
- avcodec/apedec: Fix undefined integer overflow in long_filter_ehigh_3830()
- avcodec/dstdec: Check that AC probabilities are within range
- avcodec/dstdec: Check read_table() for failure
- avformat/vividas: Fix n_sb_blocks Check
- avcodec/snowenc: Set mb_num to avoid ratecontrol floating point divisions by 0.0
- avcodec/snowenc: Fix 2 undefined shifts
- avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()
- avcodec/aptx: Check the number of channels
- avcodec/aacdec_template: Check samplerate
- avcodec/truemotion2: Fix several integer overflows in tm2_low_res_block()
- avcodec/utils: Check block_align
- avcodec/wmalosslessdec: Fix some integer anomalies
- avcodec/adpcm: Fix invalid shifts in ADPCM DTK
- avcodec/apedec: Only clear the needed buffer space, instead of all
- avcodec/libvorbisdec: Fix insufficient input checks leading to out of array reads
- avcodec/g723_1dec: fix invalid shift with negative sid_gain
- avcodec/vp5: Check render_x/y
- avcodec/hcom: Check the root entry and the right entries
- avcodec/qdrw: Check input for header/skiped space before get_buffer()
- avcodec/ralf: Skip initializing unused filter variables
- avcodec/takdec: Fix overflow with large sample rates
- avcodec/atrac9dec: Set channels
- avcodec/alsdec: Check that input space for header exists in read_diff_float_data()
- avformat/pjsdec: Check duration for overflow
- avcodec/agm: Check for reference frame earlier
- avcodec/ptx: Check that the input contains at least one line
- avcodec/alac: Fix integer overflow in LPC
- avcodec/smacker: Fix integer overflows in pred[] in smka_decode_frame()
- avcodec/aliaspixdec: Check input size against minimal picture size
- avcodec/ffwavesynth: Fix integer overflows in pink noise addition
- avcodec/vc1_block: Fixes integer overflow in vc1_decode_i_block_adv()
- avcodec/wmalosslessdec: Check block_align
- avcodec/g729dec: Avoid computing invalid temporary pointers for ff_acelp_weighted_vector_sum()
- avcodec/g729postfilter: Fix left shift of negative value
- avcodec/binkaudio: Check sample rate
- avcodec/sbcdec: Fix integer overflows in sbc_synthesize_eight()
- avcodec/adpcm: Check initial predictor for ADPCM_IMA_EA_EACS
- avcodec/g723_1dec: Fix overflow in shift
- avcodec/apedec: Fix integer overflow in predictor_update_3930()
- avcodec/g729postfilter: Fix undefined intermediate pointers
- avcodec/g729postfilter: Fix undefined shifts
- avcodec/lsp: Fix undefined shifts in lsp2poly()
- avcodec/adpcm: Fix left shifts in AV_CODEC_ID_ADPCM_EA
- avformat/shortendec: Check k in probe
- avfilter/vf_geq: Use av_clipd() instead of av_clipf()
- avcodec/wmaprodec: Check that the streams channels do not exceed the overall channels
- avcodec/qdmc: Check input space in qdmc_get_vlc()
- avcodec/wmaprodec: Fix cleanup on error
- avcodec/pcm: Check bits_per_coded_sample
- avcodec/exr: Allow duplicate use of channel indexes
- avcodec/fitsdec: Fail on 0 naxisn
- avcodec/dxv: Subtract 12 earlier in dxv_decompress_cocg()
- libavcodec/dxv: Remove redundant seek
- avcodec/ituh263dec: Check input for minimal frame size
- avcodec/truemotion1: Check that the input has enough space for a minimal index_stream
- avformat/mpsubdec: Clear queue on error
- avcodec/sunrast: Check that the input is large enough for the maximally compressed image
- avcodec/sunrast: Check for availability of maplength before allocating image
- avformat/subtitles: Check nb_subs in ff_subtitles_queue_finalize()
- avcodec/vc1_block: Fix invalid left shift in vc1_decode_p_mb()
- avcodec/wmaprodec: Check if there is a stream
- avcodec/g2meet: Check for end of input in jpg_decode_block()
- avcodec/g2meet: Check if adjusted pixel was on the stack
- avformat/electronicarts: If no packet has been read at the end do not treat it as if theres a packet
- avcodec/dxv: Check op_offset in dxv_decompress_yo()
- avcodec/utils: Check sample_rate before opening the decoder
- avcodec/aptx: Fix multiple shift anomalies
- avcodec/fitsdec: fix use of uninitialised values
- avcodec/motionpixels: Mark 2 functions as always_inline
- avcodec/ituh263dec: Make the condition for the studio slice start code match between ff_h263_resync() and ff_mpeg4_decode_studio_slice_header()
- avcodec/ralf: Fix integer overflow in decode_channel()
- vcodec/vc1: compute rangex/y only for P/B frames
- avcodec/vc1_pred: Fix invalid shifts in scaleforopp()
- avcodec/vc1_block: Fix invalid shift with rangeredfrm
- avcodec/vc1: Check for excessive resolution
- avcodec/vc1: check REFDIST
- avcodec/apedec: Fix several integer overflows in predictor_update_filter() and do_apply_filter()
- avcodec/hevc_cabac: Tighten the limit on k in ff_hevc_cu_qp_delta_abs()
- avcodec/4xm: Check index in decode_i_block() also in the path where its not used.
- avcodec/loco: Check for end of input in the first line
- avcodec/atrac3: Check block_align
- avcodec/alsdec: Avoid dereferencing context pointer in inner interleave loop
- avcodec/hcom: Check that there are dictionary entries
- avcodec/fitsdec: Prevent division by 0 with huge data_max
- avcodec/dstdec: Fix integer overflow in samples_per_frame computation
- avcodec/g729_parser: Check block_size
- avcodec/sbcdec: Initialize number of channels
- avcodec/utils: Optimize ff_color_frame() using memcpy()
- avcodec/aacdec: Check if we run out of input in read_stream_mux_config()
- avcodec/utils: Use av_memcpy_backptr() in ff_color_frame()
- avcodec/smacker: Fix integer overflow in signed int multiply in SMK_BLK_FILL
- avcodec/alac: Fix invalid shifts in 20/24 bps
- avcodec/alac: fix undefined behavior with INT_MIN in lpc_prediction()
- avcodec/ffwavesynth: Fix integer overflow in timestamps
- avformat/vividas: Test size and packet numbers a bit more
- avformat/vividas: Check n_sb_blocks against input space
- avcodec/dxv: Check op_offset in both directions
- avcodec/adpcm: Check number of channels for MTAF
- avcodec/sunrast: Fix indention
- avcodec/sunrast: Fix return type for "unsupported (compression) type"
- avcodec/utils: Check channels fully earlier
- avformat/mov: Check for EOF in mov_read_meta()
- avcodec/hevcdec: Fix memleak of a53_caption
- avformat/vividas: Remove align offset which is always masked off
- avformat/vividas: remove dead assignment
- avformat/cdxl: Fix integer overflow in intermediate
- avcodec/hevcdec: repeat character in skiped
- repeat an even number of characters in occured
- avcodec/gdv: Replace assert() checking bitstream by if()
- libavcodec/utils: Free threads on init failure
- avcodec/htmlsubtitles: Avoid locale dependant isdigit()
- avcodec/alsdec: Check k from being outside what our implementation can handle
- avcodec/takdec: Fix integer overflow in decorrelate()
- avcodec/aacps: Fix integer overflows in hybrid_synthesis()
- avcodec/mpeg4videodec: Fix integer overflow in mpeg4_decode_studio_block()
- avcodec/vp56rac: delay signaling an error on truncated input
- avcodec/pnm_parser: Use memchr() in pnm_parse()
- tests: Fix bash errors in lavf_container tests.
- avformat/matroskadec: Fix use-after-free when demuxing ProRes
- avformat/matroskadec: Fix demuxing ProRes
- avcodec/cbs_av1: fix array size for ar_coeffs_cb_plus_128 and ar_coeffs_cr_plus_128
- avcodec/cbs_av1: avoid reading trailing bits when obu type is OBU_TILE_LIST
- lavc/cbs_h2645: Fix incorrect max size of nalu unit
- avcodec/extract_extradata_bsf: Don't unref uninitialized buffers
- avformat/av1: Fix leak of dynamic buffer in case of parsing failure
- libavformat/rtsp: return error if rtsp_hd_out is null instead of crash
- cbs_h264: Fix missing inferred colour description fields
- avcodec/cbs_av1: keep separate reference frame state for reading and writing
- avcodec/cbs_av1: fix reading reference order hint in skip_mode_params()
- avcodec/amfnec: allocate packets using av_new_packet()
- avcodec/nvenc: make sure newly allocated packets are refcounted
- lavc/mpeg4audio: add chan_config check to avoid indeterminate channels
- aformat/movenc: add missing padding to output track extradata
- avcodec/nvenc: add driver version info for SDK 9.1
- avcodec/bsf: check that AVBSFInternal was allocated before dereferencing it