### 0.23.14 (2021-03-10 01:40:00 UTC)
* Add config/Search/Search Tasks/"Host running FlareSolverr" to handle CloudFlare providers
* Change the cf_clearance cookie to an undocumented optional config instead of a requirement
* Change where cf_clearance does not exist or expires, config/Search/Search Tasks/"Host running FlareSolverr" is required
* Fix saving magnet from PAs as files under py3
* Fix SkyTorrents provider
* Fix Torlock provider
* Fix TBP provider
### 0.23.13 (2021-02-26 19:05:00 UTC)
* Add Newznab providers can use API only or API + RSS cache fallback. Tip added to Newznab config/Media Providers/API key
* Add correct user entry mistakes for nzbs2go api url
### 0.23.12 (2021-02-19 17:00:00 UTC)
* Change allow Python 3.8.8 and 3.9.2
### 0.23.11 (2021-02-04 23:30:00 UTC)
* Fix report correct number of items found during nzb search
* Change recognise custom spotweb providers
### 0.23.10 (2021-01-30 11:20:00 UTC)
* Fix change file date on non Windows
### 0.23.9 (2021-01-28 19:45:00 UTC)
* Fix provider nCore
* Change update dateutil fallback zoneinfo to 2021a
### 0.23.8 (2020-12-31 20:40:00 UTC)
* Change update dateutil fallback zoneinfo to 2020f
* Fix notifiers Pushover and Boxcar2 under py3
* Fix need to restart SG for a change in TVChaosUK password to take effect
### 0.23.7 (2020-12-13 20:40:00 UTC)
* Fix remove need to page refresh after entering an anime scene absolute number on view-show
* Change add TVChaosUK custom name regulator to prevent a false trigger from the wordlist filter
### 0.23.6 (2020-12-11 01:50:00 UTC)
* Update UnRar for Windows 5.91 to 6.00 x64
* Fix providers BitHDTV, Blutopia, HDTorrents, Pretome, PrivateHD, PTFiles, SceneHD, TVChaosUK
* Change handle redirects from POST requests
* Change Kodi Addon 1.0.8
### 0.23.5 (2020-12-05 13:45:00 UTC)
* Change improve dark theme text legibility with green/gold background under "Downloads" in view-shows/simple layout
### 0.23.4 (2020-12-02 11:30:00 UTC)
* Change allow Python 3.9.1
### 0.23.3 (2020-11-30 17:20:00 UTC)
* Change remove use of native Py 7zip as compressor found to crash Python binary under Linux with low memory conditions
### 0.23.2 (2020-11-21 18:40:00 UTC)
* Change allow Python 3.8.7
* Change suppress py27 startup cryptography deprecation warning
* Fix filter out history items that don't qualify for status snatched/good
### 0.23.1 (2020-11-16 23:00:00 UTC)
* Fix image failure for a show that is force updated, removed, then readded
### 0.23.0 (2020-11-11 13:30:00 UTC)
* Change improve search performance for backlog, manual, failed, and proper
* Add overview of the last release age/date at each newznab provider to History/Layout "Connect fails"
* Add "History new..." to Shows menu by clicking the number
* Add db backup to the scheduled daily update
* Add display "Database backups" location at config/about if feature available
* Add option "Backup database plan" to config/general/advanced if feature available
* Add py7zr to recommended.txt for optional 7z compression
* Add `backup_db_path` setting to config.ini to customise backup db location
* Add `backup_db_max_count` to config.ini with range 0-90 where 0 = disable backup, 14 = default
* Change improve list performance for file/directory browser
* Change improve import shows listing performance
* Change improve performance during show rescan process
* Change improve performance during media processing
* Change improve scantree performance with regex params of what to include and/or exclude
* Change rename remove_file_failed to remove_file_perm and make it return an outcome
* Add config/General/Updates/Alias Process button, minimum interval for a fetch of custom names/numbering is 30 mins
* Add Export alternatives button to edit show
* Change season specific alt names now available not just for anime
* Change improve tooltip over show title in display show for multiple alternatives
* Add display season alternatives on hover over season titles in display show
* Change single digit season display to zero-padded double digits in edit show
* Change add note on edit show for season specific search rule
* Add mark next to season titles that have exceptions
* Add support for centralised sg alternative names and numbers
* Change sg alts can overwrite scene number field only if field value is blank
* Change add note on edit show for season specific search rule
* Change add has_season_exceptions to control newznab id search
* Change add season exceptions to torrent providers
* Change give remove_file functions time to process
* Add ignore folders that contain ".sickgearignore" flag file
* Change add 3 days cache for tmdb base info only
* Change `Discordapp` to `Discord` in line with company change
* Change remove `app` from URL when calling webhook
* Change remind user when testing Notifications config / Discord to update URL
* Change Trim/Clear history to hide items because the data is needed for core management
* Fix incorrect text for some drop down list items in the apiBuilder view that affected some browsers
* Fix connection skip error handling in tvdb_api
* Add client parameter to pp class and add it to API sg.postprocess
* Change API version to 14
* Change add a test for both require and ignore show specific words with partial match, both should fail
* Change expand to all providers, and season results, applying filters to .torrent content and not just search result...
name for where a found torrent result `named.this` contains `name.that` and ignore `that` did not ignore `named.this`
* Change init showDict for all unit tests
* Change add error handling for zoneinfo update file parsing
* Change downgrade network conversions/timezone warnings on startup to debug level
* Add enum34 1.1.10
* Add humanize 3.1.0 (aec9dc2)
* Add Torrent file parse 0.3.0 (2a4eecb)
* Update included fallback timezone info file to 2020d
* Update attr 20.1.0.dev0 (4bd6827) to 20.2.0 (4f74fba)
* Update Beautiful Soup 4.8.2 (r559) to 4.9.3 (r593)
* Update cachecontrol library 0.12.5 (007e8ca) to 0.12.6 (167a605)
* Update certifi 2020.06.20 to 2020.11.08
* Update dateutil 2.8.1 (43b7838) to 2.8.1 (c496b4f)
* Change add diskcache_py3 5.0.1 (9670fbb)
* Change add diskcache_py2 4.1.0 (b0451e0)
* Update feedparser_py3 6.0.0b3 (7e255f0) to 6.0.1 (98d189fa)
* Update feedparser_py2 backport
* Update hachoir_py3 3.0a6 (5b9e05a) to 3.1.2 (f739b43)
* Update hachoir_py2 2.0a6 (5b9e05a) to 2.1.2
* Update Js2Py 0.70 (f297498) to 0.70 (92250a4)
* Update package resource API to 49.6.0 (3d404fd)
* Update profilehooks module 1.11.2 (d72cc2b) to 1.12.0 (3ee1f60)
* Update Requests library 2.24.0 (1b41763) to 2.24.0 (2f70990)
* Update soupsieve_py3 2.0.0.final (e66c311) to 2.0.2.dev (05086ef)
* Update soupsieve_py2 backport
* Update Tornado_py3 Web Server 6.0.4 (b4e39e5) to 6.1.0 (2047e7a)
* Update tmdbsimple 2.2.6 (310d933) to 2.6.6 (679e343)
* Update urllib3 1.25.9 (a5a45dc) to 1.25.11 (00f1769)
* Change add remove duplicates in newznab provider list based on name and url
* Change remove old provider dupe cleanup
* Change add response rate limit handling for generic providers
* Change add newznab retry handling
* Change add 2s interval fetch retry for Github as it can sometimes return no data
* Change rename misuse of terminology `frequency` to `interval`
### 0.22.16 (2020-11-10 20:15:00 UTC)
* Fix anime name parser tests failing on assumed season number 1
* Change increase number of IMDb ID digits parsed in TVDb lib
* Change add Trakt requested guidance to the log for locked user accounts
### 0.22.15 (2020-11-09 14:10:00 UTC)
* Fix IMDb cards not always displayed as `in library`
### 0.22.14 (2020-11-06 21:55:00 UTC)
* Fix RarBG in cases where home page cannot be reached
### 0.22.13 (2020-11-05 01:00:00 UTC)
* Fix SpeedCD provider
* Remove HorribleSubs provider
### 0.22.12 (2020-11-03 16:05:00 UTC)
* Fix IPTorrents
### 0.22.11 (2020-10-30 01:45:00 UTC)
* Fix an old and rare thread timing case that can change a show to the wrong type while fetching alternative names
### 0.22.10 (2020-10-28 14:10:00 UTC)
* Fix clear of old fail times for providers
### 0.22.9 (2020-10-21 11:55:00 UTC)
* Change remove DB file logging level from config/General and reduce DB levels to Debug to reduce log file noise
* Add Trakt rate-limiting http response code 429 handling to prevent request failure
### 0.22.8 (2020-10-19 13:45:00 UTC)
* Fix rare timing case on first-time startup with a network timezone update failure and an endless loop
* Change ensure `autoProcessTV/sabToSickGear.py` is set executable
### 0.22.7 (2020-10-19 10:15:00 UTC)
* Add `autoProcessTV/sabToSickGear.py` that works with SABnzbd under both py2 and py3
### 0.22.6 (2020-10-19 01:05:00 UTC)
* Fix libtrakt logging error that created a Trakt notifier issue during media process
Version 0.8.4.1:
* Hotfix for crash on Windows, no changes for Linux
Version 0.8.4:
* improved handling of mixed AVM1/AVM2 files
* implement streaming of videos embedded in the swf file
* implement class inheritance for AVM1
* added settings dialog, currently only used to enable/disable local storage
* support for local storage added
* use SDL threading methods, remove glibmm dependency
0.8.2 is a middle-size update of the 0.8.0 branch:
- ARM32 optimizations for ipred and itx in 10/12bits,
completing the 10b/12b work on ARM64 and ARM32
- Give the post-filters their own threads
- ARM64: rewrite the wiener functions
- Speed up coefficient decoding, 0.5%-3% global decoding gain
- x86 optimizations for CDEF_filter and wiener in 10/12bit
- x86: rewrite the SGR AVX2 asm
- x86: improve msac speed on SSE2+ machines
- ARM32: improve speed of ipred and warp
- ARM64: improve speed of ipred, cdef_dir, cdef_filter, warp_motion and itx16
- ARM32/64: improve speed of looprestoration
- Add seeking, pausing to the player
- Update the player for rendering of 10b/12b
- Misc speed improvements and fixes on all platforms
- Add a xxh3 muxer in the dav1d application
Version 55.0.0 "Waiting For Space"
Bug fixes
* all programs, only on Windows: fixed checking existence of & creating
directories with UNC paths such as `\\server\share\folder\file.mkv`.
* all programs, only on Windows: implemented several workarounds for bugs in
`std::filesystem` wrt. UNC paths. The effect of those bugs was that Blu-rays
and DVDs couldn't be added from UNC paths.
* mkvmerge, only on Windows: fixed non-ASCII characters getting mangled in the
destination file name when splitting is active.
* MKVToolNix GUI, only on Windows: fixed the GUI hanging when trying to browse
for files on drives that don't actually exist.
* MKVToolNix GUI, only on Windows: the GUI did not remember UNC paths as the
"most recently used source directory" properly.
* MKVToolNix GUI: only on Windows: when dragging & dropping files from other
applications to MKVToolNix GUI the GUI will force the drop action to be a
copy action, no matter which keys were pressed by the users. This prevents
Windows Explorer from deleting the dragged file when the user presses shift
while dropping the file onto MKVToolNix GUI.
* MKVToolNix GUI, only on Windows: when using the file dialog for selecting a
file name to save to (e.g. when browsing for the destination file name in
the multiplexer or saving an attachment in the header editor) non-ASCII
characters in the default file name were mangled.
* MKVToolNix GUI: multiplexer: the user can now configure what to do when
using the "Add source files" button independently of the setting for what
happens when files are dragged & dropped onto the GUI. The same options are
available, but they're distinct settings, allowing for different use
cases.
* MKVToolNix GUI: multiplexer: deriving the track language from file names
doesn't use one big regular expression of all enabled languages
anymore. Instead, the file name is split into parts on a list of characters
(such as `.` or `(` and `)`; configurable in the preferences). This prevents
the regular expression becoming too big for the regular expression library
to handle when many languages are enabled.
* MKVToolNix GUI: preferences: the language lists for "deriving track
languages" and "enabling items by language" always included all the ISO
639-3 languages, even if those weren't enabled in the "often-used languages"
pane.
Other changes
* mkvmerge, MKVToolNix GUI multiplexer: the functionality for changing the
length of the NALU "size" field for AVC/H.264 and HEVC/H.265 tracks has been
removed. The corresponding command-line option will continue to be
recognized by mkvmerge as not to break existing third-party applications,
but it won't actually do anything.
Version 54.0.0 "F Maj Pixie"
New features and enhancements
* mkvmerge: added support for using ISO 639-3 language codes in IETF BF47
language tags.
* mkvmerge: AC-3 parser: added support for byte-swapped AC-3 data.
* mkvmerge: Matroska reader: for audio tracks that have the bit depth track
header set mkvmerge will now keep that header even for codecs that don't
require it for decoding.
* mkvmerge: MPEG transport stream reader, PCM audio tracks: mkvmerge will now
re-order the channels for 5.1, 7.0 and 7.1 channel tracks from the Blu-ray
layout to the WAVEFORMATEXTENSIBLE layout expected in Matroska.
* mkvmerge, mkvinfo, mkvpropedit, MKVToolNix GUI: added support for the
following new track header elements: "hearing impaired" flag, "visual
impaired" flag, "text descriptions" flag, "original" flag, "commentary"
flag.
* MKVToolNix GUI: added support for using ISO 639-3 language codes in IETF
BF47 language tags. As there are several thousand of them, they're
deactivated by default and must be activated in the preferences ("GUI" →
"Often used selections" → "Languages").
* MKVToolNix GUI: multiplexer: when adding Blu-rays the user can select
multiple playlists to add simultaneously in the "select playlist to add"
dialog.
* MKVToolNix GUI: multiplexer: the file name extensions "eb3" and "ec3" were
added for Dolby Digital Plus & "mpl" for Dolby TrueHD in the file
dialogs.
* MKVToolNix GUI: multiplexer: when adding multiple files the dialog asking
the user what to do with them has gained a new checkbox. If enabled, all
files containing at least one video track will always be placed in newly
created multiplex setting.
* MKVToolNix GUI: multiplexer: added a menu entry in the "Multiplexer" for
adding all files that are currently in the clipboard.
Bug fixes
* all: Windows: fixed compatibility with gettext 0.21 and newer on mingw.
* all: Windows: fixed several of the programs having problems with certain
Unicode characters (primarily emojis) in file names (e.g. mkvextract
wrongfully complaining about an "invalid mode" or the GUI not being able to
find parts of Blu-ray file structures).
* mkvextract: AAC: fixed wrong channel mask field in the ADTS headers for 7.1
channel layouts.
* mkvextract: h.265/HEVC extraction: if the first frame starts with the
parameter sets (SPS, PPS & VPS), the ones from CodecPrivate aren't written
and the ones from the first frame are kept.
* mkvmerge: fixed the calculation of chapter timestamps read from NTSC
DVDs.
* MKVToolNix GUI: IETF BCP 47 language widget: the language combo box will now
always contain the language code the user enters in the free-form field,
even if it isn't in the list of often-used languages the user configured in
the preferences.
* MKVToolNix GUI: multiplexer: when browsing for the destination file name the
default directory is now chosen according to the preferences regarding how
the destination file name should be formed. For example, if the policy is
set to "fixed output directory" then that output directory will be the one
initially set when the directory selection dialog is opened.
* MKVToolNix GUI: multiplexer: fixed the removal of appended source files if
the "delete source files" end-of-job action is enabled.
* MKVToolNix GUI: chapter editor: when importing chapters from DVDs the IETF
BCP 47 language elements will be set, too, not just the legacy language
elements.
Build system changes
* libEBML v1.4.2 and libMatroska v1.6.3 are now required. The optional,
bundled copies of both libraries have been updated to those versions. This
bump in requirements fixes several heap overflow bugs in libEBML.
* MKVToolNix is now using the C++17 library feature "file system library"
instead of Boost's "file system" and "system" libraries. For the GNU
Compiler Collection (gcc) libstdc++ this means v8 or newer is required; for
clang's libc++ it means v7 or newer. For macOS this means that provided disk
image will only run on 10.15 "Catalina" or newer.
version 4.3.2:
avcodec/hapdec: Change compressed_offset to unsigned 32bit
avformat/rmdec: Check codec_length without overflow
avformat/mov: Check element count in mov_metadata_hmmt()
avcodec/vp8: Move end check into MB loop in vp78_decode_mv_mb_modes()
avcodec/fits: Check gcount and pcount being non negative
avformat/nutdec: Check timebase count against main header length
avformat/electronicarts: Clear partial_packet on error
avformat/r3d: Check samples before computing duration
avcodec/pnm_parser: Check av_image_get_buffer_size() for failure
avformat/wavdec: Consider AV_INPUT_BUFFER_PADDING_SIZE in set_spdif()
avformat/rmdec: Check remaining space in debug av_log() loop
avformat/flvdec: Treat high ts byte as unsigned
avformat/samidec: Sanity check pts
avcodec/jpeg2000dec: Check atom_size in jp2_find_codestream()
avformat/avidec: Use 64bit in get_duration()
avformat/mov: Check for duplicate st3d
avformat/mvdec: Check for EOF in read_index()
avcodec/jpeglsdec: Fix k=16 in ls_get_code_regular()
avformat/id3v2: Check the return from avio_get_str()
avcodec/hevc_sei: Check payload size in decode_nal_sei_message()
libavutil/eval: Remove CONFIG_TRAPV special handling
avformat/wtvdec: Check len in parse_chunks() to avoid overflow
avformat/asfdec_f: Add an additional check for the extradata size
avformat/3dostr: Check sample_rate
avformat/4xm: Make audio_frame_count 64bit
avformat/mov: Use av_mul_q() to avoid integer overflows
avcodec/vp9dsp_template: Fix integer overflows in itxfm_wrapper
avformat/rmdec: Reorder operations to avoid overflow
avcodec/mxpegdec: fix SOF counting
avcodec/rscc: Check inflated_buf size whan it is used
avformat/mvdec: Sanity check SAMPLE_WIDTH
avcodec/nvenc: fix timestamp offset ticks logic
avformat/rmdec: Fix codecdata_length overflow check
avcodec/simple_idct: Fix undefined integer overflow in idct4row()
avformat/wavdec: Check block_align vs. channels before combining them
avformat/tta: Use 64bit intermediate for index
avformat/soxdec: Check channels to be positive
avformat/smacker: Check for too small pts_inc
avformat/sbgdec: Use av_sat_add64() in str_to_time()
avcodec/cscd: Check output len in zlib as in lzo
avcodec/vp3: Check input amount in theora_decode_header()
avformat/wavdec: Check avio_get_str16le() for failure
avformat/flvdec: Check for EOF in amf_skip_tag()
avformat/aiffdec: Check size before subtraction in get_aiff_header()
avformat/electronicarts: More chunk_size checks
avcodec/cfhd: check peak.offset
avformat/tedcaptionsdec: Check for overflow in parse_int()
avformat/nuv: Check channels
avcodec/siren: Increase noise category 5 and 6
avformat/mpc8: Check size before implicitly converting to int
avformat/nutdec: Fix integer overflow in count computation
avformat/mvi: Use 64bit for testing dimensions
avformat/utils: Check dts in update_initial_timestamps() more
avformat/mpsubdec: Use av_sat_add/sub64() in fracval handling
avformat/flvdec: Check for avio_read() failure in amf_get_string()
avformat/flvdec: Check for nesting depth in amf_skip_tag()
avformat/flvdec: Check for nesting depth in amf_parse_object()
avformat/asfdec_o: Check for EOF in asf_read_marker()
avformat/flvdec: Use av_sat_add64() for pts computation
avformat/utils: Check dts - (1<<pts_wrap_bits) overflow
avformat/bfi: Check chunk_header
avformat/ads: Check size
avformat/iff: Check block align also for ID_MAUD
avcodec/utils: Check for integer overflow in get_audio_frame_duration() for ADPCM_DTK
avformat/fitsdec: Better size checks
avformat/mxfdec: Fix integer overflow in next position in mxf_read_local_tags()
avformat/avidec: dv does not support palettes
avformat/dhav: Break out of infinite dhav search loop
libavformat/utils: consider avio_size() failure in ffio_limit()
avformat/nistspheredec: Check bits_per_coded_sample and channels
avformat/asfdec_o: Check size vs. offset in detect_unknown_subobject()
avformat/utils: check for integer overflow in av_get_frame_filename2()
avutil/timecode: Avoid undefined behavior with large framenum
avformat/mov: Check a.size before computing next_root_atom
avformat/sbgdec: Reduce the amount of floating point in str_to_time()
avformat/mxfdec: Free all types for both Descriptors
uavformat/rsd: check for EOF in extradata
avcodec/wmaprodec: Check packet size
avformat/dhav: Check position for overflow
avcodec/rasc: Check frame before clearing
avformat/vividas: Check number of audio channels
avcodec/alsdec: Fix integer overflow with quant_cof
avformat/mpegts: Fix argument type for av_log
avformat/cafdec: clip sample rate
avcodec/ffv1dec: Fix off by 1 error with quant tables
avformat/mpegts: Increase pcr_incr width to 64bit
avcodec/utils: Check bitrate for overflow in get_bit_rate()
avformat/mov: Check if hoov is at the end
avcodec/hevc_ps: check scaling_list_dc_coef
avformat/iff: Check data_size
avformat/matroskadec: Sanity check codec_id/track type
avformat/rpl: Check the number of streams
avformat/vividas: Check sample_rate
avformat/vividas: Make len signed
avcodec/h264idct_template: Fix integer overflow in ff_h264_chroma422_dc_dequant_idct()
avformat/dsfdec: Check block_align more completely
avformat/mpc8: Check remaining space in mpc8_parse_seektable()
avformat/id3v2: Sanity check tlen before alloc and uncompress
avformat/vqf: Check len for COMM chunks
avformat/mov: Avoid overflow in end computation in mov_read_custom()
avcodec/hevc_cabac: Limit value in coeff_abs_level_remaining_decode() tighter
avformat/cafdec: Check the return code from av_add_index_entry()
avformat/cafdec: Check for EOF in index read loop
avformat/cafdec: Check that bytes_per_packet and frames_per_packet are non negative
avformat/mpc8: correct integer overflow in mpc8_parse_seektable()
avformat/mpc8: correct 32bit timestamp truncation
avcodec/exr: Check ymin vs. h
avformat/avs: Use 64bit for the avio_tell() output
avformat/wavdec: More complete size check in find_guid()
avcodec/mv30: Use unsigned in idct_1d()
avformat/iff: Check size before skip
avformat/rmdec: Check for EOF in index packet reading
avcodec/vp3dsp: Use unsigned constant to avoid undefined integer overflow in ff_vp3dsp_set_bounding_values()
avformat/icodec: Check for zero streams and stream creation failure
avformat/icodec: Factor failure code out in read_header()
avformat/bintext: Check width
avformat/sbgdec: Check that end is not before start
avformat/lvfdec: Check stream_index before use
avformat/au: cleanup on EOF return in au_read_annotation()
avformat/mpegts: Limit copied data to space
avformat/bintext: Check width in idf_read_header()
avformat/iff: check size against INT64_MAX
avformat/vividas: improve extradata packing checks in track_header()
avformat/paf: Check for EOF in read_table()
avformat/gxf: Check pkt_len
avformat/aiffdec: Check packet size
avformat/concatdec: use av_strstart()
avformat/wavdec: Refuse to read chunks bigger than the filesize in w64_read_header()
avformat/rsd: Check size and start before computing duration
avformat/vividas: better check of current_sb_entry
avformat/iff: More completely check body_size
avformat/vividas use avpriv_set_pts_info()
avformat/xwma: Check for EOF in dpds_table read code
avcodec/utils: Check sample rate before use for AV_CODEC_ID_BINKAUDIO_DCT in get_audio_frame_duration()
avcodec/dirac_parser: do not offset AV_NOPTS_OFFSET
avformat/rmdec: Make expected_len 64bit
avformat/pcm: Check block_align
avformat/lrcdec: Clip timestamps
avutil/mathematics: Use av_sat_add64() for the last addition in av_add_stable()
avformat/electronicarts: Check for EOF in each iteration of the loop in ea_read_packet()
avformat/ifv: Check that total frames do not overflow
avcodec/vp9dsp_template: Fix some overflows in iadst8_1d()
avcodec/fits: Check bscale
avformat/nistspheredec: Check bps
avformat/jacosubdec: Use 64bit inside get_shift()
avformat/genh: Check block_align
avformat/mvi: Check count for overflow
avcodec/magicyuv: Check slice size before reading flags and pred
avformat/asfdec_f: Check for negative ext_len
avformat/bethsoftvid: Check image dimensions before use
avformat/genh: Check block_align for how it will be used in SDX2_DPCM
avformat/au: Check for EOF in au_read_annotation()
avformat/vividas: Check for zero v_size
avformat/segafilm: Do not assume AV_CODEC_ID_NONE is 0
avformat/segafilm: Check that there is a stream
avformat/wtvdec: Check dir_length
avformat/ffmetadec: finalize AVBPrint on errors
avcodec/decode/ff_get_buffer: Check for overflow in FFALIGN()
avcodec/exr: Check limits to avoid overflow in delta computation
avformat/boadec: Check that channels and block_align are set
avformat/asfdec_f: Check name_len for overflow
avcodec/h264idct_template: Fix integer overflow in ff_h264_chroma422_dc_dequant_idct()
avformat/sbgdec: Check for timestamp overflow in parse_time_sequence()
avcodec/aacdec_fixed: Limit index in vector_pow43()
avformat/kvag: Fix integer overflow in bitrate computation
avcodec/h264_slice: fix undefined integer overflow with POC in error concealment
avformat/rmdec: sanity check coded_framesize
avformat/flvdec: Check for EOF in amf_parse_object()
avcodec/mv30: Fix multiple integer overflows
avcodec/smacker: Check remaining bits in SMK_BLK_FULL
avcodec/cook: Check subpacket index against max
avcodec/utils: Check for overflow with ATRAC* in get_audio_frame_duration()
avcodec/hevcpred_template: Fix diagonal chroma availability in 4:2:2 edge case in intra_pred
avformat/icodec: Change order of operations to avoid NULL dereference
avcodec/exr: Fix overflow with many blocks
avcodec/vp9dsp_template: Fix integer overflows in idct16_1d()
avcodec/ansi: Check initial dimensions
avcodec/hevcdec: Check slice_cb_qp_offset / slice_cr_qp_offset
avcodec/sonic: Check for overread
avformat/subviewerdec: fail on AV_NOPTS_VALUE
avcodec/exr: Check line size for overflow
avcodec/exr: Check xdelta, ydelta
avcodec/celp_filters: Avoid invalid negation in ff_celp_lp_synthesis_filter()
avcodec/takdsp: Fix negative shift in decorrelate_sf()
avcodec/dxtory: Fix negative stride shift in dx2_decode_slice_420()
avformat/asfdec_f: Change order or operations slightly
avformat/dxa: Use av_rescale() for duration computation
avcodec/vc1_block: Fix integer overflow in ac value
avcodec/mv30: Fix several integer overflows in idct_1d()
avformat/iff: Check data_size not overflowing int64
avcodec/dxtory: Fix negative shift in dx2_decode_slice_410()
avcodec/sonic: Check channels before deallocating
avformat/vividas: Check for EOF in first loop in track_header()
avformat/wvdec: Check rate for overflow
avcodec/ansi: Check nb_args for overflow
avformat/wc3movie: Cleanup on wc3_read_header() failure
avformat/wc3movie: Move wc3_read_close() up
avcodec/tiff: Fix default white level
avcodec/diracdsp: Fix integer anomaly in dequant_subband_*
avutil/fixed_dsp: Fix integer overflows in butterflies_fixed_c()
avcodec/mv30: Check remaining mask in decode_inter()
avcodec/wmalosslessdec: Check remaining space before padding and channel residue
avformat/cdg: Fix integer overflow in duration computation
avcodec/mpc: Fix multiple numerical overflows in ff_mpc_dequantize_and_synth()
avcodec/agm: Fix off by 1 error in decode_inter_plane()
avformat/electronicarts: Check if there are any streams
avcodec/ffwavesynth: Fix integer overflow in wavesynth_synth_sample / WS_SINE
avcodec/vp9dsp_template: Fix integer overflow in iadst8_1d()
avformat/avidec: Fix io_fsize overflow
avcodec/cfhd: Check transform type
avcodec/tiff: Check jpeg context against jpeg frame parameters
avcodec/tiff: Restrict tag order based on specification
avcodec/tiff: Avoid abort with DNG RAW TIFF with YA8
avcodec/tiff: Check the linearization table size
avformat/siff: Reject audio packets without audio stream
avformat/mpeg: Check avio_read() return value in get_pts()
avcodec/tiff: Check bpp/bppcount for 0
avcodec/snowdec: Sanity check hcoeff
avformat/mov: Check comp_brand_size
avformat/ape: Error out in case of EOF in the header
avcodec/alac: Check decorr_shift to avoid invalid shift
avcodec/tdsc: Fix tile checks
opusdec: do not fail when LBRR frames are present
configure: update copyright year
avfilter/vf_framerate: fix infinite loop with 1-frame input
avformat/url: Change () position in ff_make_absolute_url()
avformat/mpegts: make sure mpegts_read_header always stops at the first pmt
avformat/alp: fix handling of TUN files
avformat/argo_asf: fix handling of v1.1 files
swscale/x86/yuv2rgb: fix crashes when loading alpha from unaligned buffers
lavf/url: fix relative url parsing when the query string or fragment has a colon
avformat/libsrt: fix cleanups on failed libsrt_open() and libsrt_setup()
avcodec/cuviddec: backport extradata fixes
avcodec/cuviddec: handle arbitrarily sized extradata
lavf/srt: fix build fail when used the libsrt 1.4.1
avformat/libsrt: close listen fd in listener mode
lavf/url: rewrite ff_make_absolute_url() using ff_url_decompose().
lavf/url: add ff_url_decompose().
avcodec/cbs_av1: fix setting FrameWidth in frame_size_with_refs()
avcodec/cbs_av1: use a more appropiate AV1ReferenceFrameState pointer variable name
avcodec/cbs_av1: fix handling reference frames on show_existing_frame frames
avcodec/cbs_av1: infer frame_type in show_existing_frame frames earlier
avcodec/cbs_av1: add OrderHint to CodedBitstreamAV1Context
avcodec/cbs_av1: infer frame_type when parsing a show_existing_frame frame
cbs_av1: Fix test for presence of buffer_removal_time element
avcodec/cbs_av1: fix storage size for render_{width,height}_minus_1
lavc: Lower MediaFoundation audio encoder priority.
x86/yuv2rgb: fix crashes when storing data on unaligned buffers
checkasm/vf_blend: use the correct depth parameters to initialize the blend modes
x86/vf_blend: fix warnings about trailing empty parameters
x86/h264_deblock: fix warning about trailing empty parameter
avutil/x86inc: fix warnings when assembling with Nasm 2.15
Release v1.6.3.
* libEBML v1.4.2 is now required.
* Added classes for new track header elements:
"KaxFlagHearingImpaired", "KaxFlagVisualImpaired",
"KaxFlagTextDescriptions", "KaxFlagOriginal" and
"KaxFlagCommentary".
Version 53.0.0 "Fool's Gold"
New features and enhancements
* mkvmerge: AVI reader: added support for reading the video aspect ratio from
the video properties header (`vprp` chunk) if present and setting the
display dimensions accordingly.
* mkvmerge: MP4 reader: for h.264/AVC tracks that don't have an
`AVCConfigurationBox` (`avcC` atom) in their sample description (`stsd`)
atom or whose `avcC` atom contains no content `mkvmerge` will now re-derive
the `AVCConfigurationBox` from the bitstream.
* mkvextract: mkvextract will now check if any of the destination file names
is the same as the source file name and abort with an error if that's the
case.
* MKVToolNix GUI: when querying the user for a file name for saving things
(e.g. multiplexer settings or an attachment in the header editor), the
automatically suggested file name will now be based on the
situation-specific file names (e.g. the destination file name for
multiplexer settings or the attachment's name when saving an attachment in
the header editor) instead of the directory's name.
* MKVToolNix GUI: multiplexer: when deriving track languages from file names
the GUI will now select the right-most match instead of the left-most
one. For example, "La.vie.en.rose.(fr).srt" will now be detected as French
(fr) instead of English (en).
* MKVToolNix GUI: preferences: the items in the "pre-defined …" lists can now
be renamed by double-clicking with the mouse or pressing the F2 key.
* Windows installer: the `bluray_dump` command-line utility will be installed
into the `tools` sub-directory. `bluray_dump` can read & dump certain file
types used on Blu-rays: `.mpls` playlists, `.clpi` clip information
databases, `.bdmv` index files, `bdmt_….xml` disc library databases and
`tnmt_….xml` track & chapter name databases.
Bug fixes
* mkvmerge: stretching chapter timestamps with `--chapter-sync` now works
correctly with floating point values including fractions of floating point
numbers (e.g. `12.3/45.67`). The tooltips in the GUI have been adjusted
accordingly.
* mkvmerge: MPEG 1/2 video handling: the "default duration" header field was
often half the value it actually should be, resulting in all video frames
having an explicit block duration with the correct value. This has been
fixed with a patch by Tom Yan.
* mkvmerge: MPEG 1/2 video handling: the data stored in `Codec private` and
`Codec state` doesn't contain extensions other than sequence & sequence
display extensions anymore. Fix by Tom Yan.
* mkvmerge: tag handling: when remuxing a Matroska file with the
`--no-track-tags`, existing `SOURCE_ID` track tags are now skipped, too.
* MKVToolNix GUI: multiplexer: the drop-down boxes with pre-defined track
names now follow the order set in the preferences instead of sorting the
entries alphabetically.
Changes between 3.0.11.1 and 3.0.12:
----------------------------------
Access:
* Add new RIST access module compliant with simple profile (VSF_TR-06-1)
Access Output:
* Add new RIST access output module compliant with simple profile (VSF_TR-06-1)
Demux:
* Fixed adaptive's handling of resolution settings
Audio output:
* Fix audio distortion on macOS during start of playback
Video Output:
* Direct3D11: Fix some potential crashes when using video filters
macOS:
* Add native support for Apple Silicon / ARM-64
* Visual UI adaptations for macOS Big Sur
* Fix displaying EQ bands in the UI depending on which frequency
presets are set for the EQ in advanced preferences
* Fix UI issues in bookmarks window
Misc:
* Several fixes in the web interface, including privacy and security
improvements
* Update YouTube and Vocaroo scripts
TheoraPlay is a simple library to make decoding of Ogg Theora videos
easier.
A tiny example to pull data out of an .ogv file is about 50 lines of C
code, and a complete SDL-based media player is about 300 lines of code.
TheoraPlay is optimized for multicore CPUs, and is designed to be
programmer-friendly. You will need libogg, libvorbis, and libtheora, of
course, but then you just drop a .c file and two headers into your
project and you're ready to hook up video decoding, without worrying
about Ogg pages, Vorbis blocks, or Theora decoder state.
Places TheoraPlay can be found in use: - Shank. - Crypt of the
Necrodancer. - 20XX. - FNA.
0.8.0
Added additional parsing for simple CUE-OUT with Duration key
Added _cueout_duration to _parse_cueout
Added AVERAGE-BANDWIDTH to IFramePlaylist
Added VIDEO-RANGE to IFramePlaylist
Added new playlist delta attributes from v10
Added HDCP-LEVEL to StreamInfo and IFramePlaylist
Changelog:
26.1.2 macOS Hotfix Changes
Browser sources on macOS now support hardware accelerated rendering on macOS 10.15 and above, reducing resource usage
Fixed a crash on startup (by updating CEF to version 4183)
26.1.1 Hotfix Changes
Fixed macOS 10.13 crash on startup [PatTheMav]
Fixed decklink devices not working correctly [DDRBoxman]
Fixed browser source crashing on certain versions of macOS [eric]
Fixed buttons not displaying text correctly on context bar when using Acri theme [Warchamp7]
Fixed a bug with slideshow source where if you use randomize and have "restart when visible" active, it would not transition on activate [cg2121]
Fixed a bug where duplicated scene items would not have their lock states duplicated [cg2121]
Fixed a bug where the default canvas resolution would be scaled incorrectly if fractional scaling was enabled [RytoEX]
Fixed jack on Linux deadlocking on close [marcan]
Fixed jack on Linux going out of sync sometimes [marcan]
Added webp to image formats that you can browse when using the image source [f3ndot]
26.1 New Features and Additions
Added Virtual Camera output on macOS [johnboiles/PatTheMav]
Added Virtual Camera output on Linux (requires v4l2loopback-dkms) [catxfish/cg2121]
Added the ability to use a separate audio track for the VOD when using Twitch [Jim]
If using Simple output mode, enable "Enable Advanced Encoder Settings", and enable "Twitch VOD Track (Uses Track 2)". Twitch VOD output will then be on audio track 2
If using Advanced output mode in the Streaming tab, enable "Twitch VOD Track" and select the track you'd like to use for it
Special thanks to Twitch for assisting during the development of this feature
Added OpenBSD support [grayed]
Added the ability to ingest captions coming from Decklink devices via "Decklink Captions" from the Tools menu [DDRBoxman]
Added hardware decoding options for stinger transitions [WizardCM]
Added an option to duplicate filters in the right-click context menu of filters [exeldro]
Added ability to copy and paste a single filter between sources [cg2121]
Added HLS support and ingests for YouTube [ushadow]
Added a Replay buffer save event to the frontend API [hgonomeg]
26.1 Improvements/Tweaks
Updated dependencies on Windows and macOS (such as x264 and Qt) to their latest versions for the latest performance improvements [Jim]
On Linux, the program will now detect other instances that are currently running and warn the user about running more than one copies at a time [clockley]
When creating a new profile, you will be now be given the option to run the auto-configuration wizard [JohannMG]
Changed the "Enforce Streaming Service Bitrate" to "Ignore streaming service setting recommendations", moved it to the Streaming section of the Settings window, and made it so it now affects both Simple and Advanced output modes. [Jim]
Maximum limitations for streaming services are now shown in the Streaming section of the Settings window [Jim]
Streaming services may now apply resolution and framerate limits on streams to their services [Jim]
26.1 Bug Fixes
Fixed a bug where the "Save Replay" button would stay highlighted after being clicked [offthegrid-mike]
Fixed a bug where the Media source would have unusual lag playing back certain media files (particularly WMV files) [Jim]
Fixed an issue where Facebook streaming would allow you to select resolutions/framerates that aren't supported [Jim]
Fixed certain connection issues with SRT/mpegts [pkviet]
Fixed a bug where you could disable the Replay Buffer even if it was currently active [Scrxtchy]
Fixed a bug where renaming a source would not return keyboard/mouse focus back to the list [jberenhaus]
Fixed an issue where 'Paste Filters' on sources didn't work in all situations [WizardCM]
Fixed an issue where Virtual Camera & Source Toolbar hotkeys would be duplicated when switching profiles [WizardCM]
Fixed an issue with removing signal handlers in Lua [Scrxtchy]
Fixed a potential hang when repeatedly selecting and deselecting display capture sources on Windows [exeldro]
Fixed an issue where the replay buffer could use settings from CQP mode in CBR mode [R1CH]
Fixed an issue where certain recordings could not be remuxed (typically from the QSV encoder) [R1CH]
Changelog:
## HandBrake 1.3.3
### All platforms
#### General
- Fixed ISO 639-2/B language codes not set correctly in MKV (affects Hebrew, Indonesian, Javanese, and Yiddish) (#2903)
- Improved support for sources where pixel format cannot be quickly identified, e.g. due to delayed video track start (#2893)
- Added logging to identify where hardware support is disabled
- Miscellaneous bug fixes and improvements
#### Video
- Improved Intel QSV memory footprint by eliminating a buffer pool (#2675)
- Improved Intel QSV H.265 memory buffer size as required by newer Intel Media SDK (#2862)
- Fixed and improved Intel QSV in various situations, especially hardware decoding (#873, #2660, #2661, #2829)
- Fixed full range video being not being identified as limited range after conversion where filters are used (#2859)
#### Subtitles
- Fixed handling of overlapping SSA import subtitles (791adbac)
- Improved support for out-of-order SSA subtitles as allowed by specification (#2906)
#### Command line interface
- Fixed --preset failure unless full path is specified, e.g. --preset="Category Name/Preset Name" (#2838)
#### Build system
- Improved Flatpak to better conform to freedesktop metainfo standards
- Improved Intel QSV Flatpak plugin build effiency using cmake-ninja
- Added a patch to fix cross compiling libdav1d using GCC 10.x (quality of life improvement)
- Official HandBrake 1.3.3 Windows release is built using GCC 9.x and is not directly affected by this issue
#### Third-party libraries
- Updated libraries
- FFmpeg 4.2.3 (decoding and filters)
### Mac
- Fixed preview layout not displaying properly on OS X 10.11 El Capitan
- Fixed incorrect copyright year on About dialog (#2830)
### Windows
- Fixed a crash related to the dark theme (#2816)
- Fixed a potential crash related to preview image memory allocation (#2871)
- Fixed a potential crash due to certain actions causing no preset being selected (#2875)
- Fixed missing E-AC-3 encoder option (#2855)
- Fixed hardware encoder support unavailable in portable build (#2832)
- Miscellaneous bug fixes and improvements
## HandBrake 1.3.2
### All platforms
#### General
- Fixed point to point end detection in certain scenarios (#2603)
- Improved support for H.265 video in AVI container produced by some security cameras (#2622)
- Added logging to identify problematic sources where container and video track pixel aspect ratios differ
- Added logging to help debug potential JSON API issues
#### Video
- Fixed color range conversion being applied twice when scaling video (#2561)
- Fixed incorrect identification of support for QSV HEVC encoder on older Intel hardware (#2558)
- Added logging to identify automatic picture rotation
- Miscellaneous bug fixes and improvements
#### Audio
- Fixed an upstream FFmpeg issue where passing through AAC ADTS audio could produce invalid MKV output in rare cases (error instead) (#2809)
#### Filters
- Fixed uninitialized memory in NLMeans prefilter leading to video corruption at bottom of picture (only affects custom settings) (#2576)
- Fixed a crash in the Detelecine filter with out of bounds parameters (only affects custom settings) (#2560, #2804)
#### Subtitles
- Fixed burned in subtitles position offset where cropscale filter is not used (#2449)
#### Command line interface
- Fixed subtitles not being selected when specifying --all-subtitles without also specifying a non-empty --subtitle-lang-list
#### Build system
- Fixed building the GTK graphical interface for use on Windows (link ole32)
- Updated Flatpak manifest creation script for compatibility with Python 3
- Updated Flatpak runtime and numactl library versions, QSV plugin
- Improved minimum version dependencies to facilitate building on systems with older automake and pkg-config
- Added a workaround for an upstream libdav1d issue affecting installation on FreeBSD (#2662)
- Miscellaneous bug fixes and improvements
### Linux
- Fixed point to point controls not accepting fractional seconds
- Fixed updating presets with identical names in different categories
- Improved parity with other platforms by allowing removal of preset categories (automatic after last preset in category is removed)
- Improved parity with other platforms by showing title and chapter range on the queue summary tab
### Mac
- Fixed selection behavior new track audio mixdown set to DPL2 instead of stereo (#2641)
- Fixed queued job failures related to removable drives by resolving security scoped resources as needed (#2566)
### Windows
- Fixed loading preset files with Unicode characters in path (#2427)
- Fixed clear queue options to prevent them clearing active jobs (#2587)
- Fixed main window status label not always reflecting the true count of queue jobs (#2538)
- Fixed failure loading default settings which could cause various issues in the graphical interface (#2549)
- Fixed preview images displaying incorrectly in some cases (anamorphic none, flip horizontal) (e9675bb, #2764)
- Fixed various issues related to Auto Passthru, including fallback settings (#2619, #2627, #2611)
- Fixed exported presets not importing correctly using the Mac graphical interface (#2531)
- Fixed pause and resume not working correctly in some cases (#2647)
- Fixed display of times greater than 24 hours (estimated time renaming, paused duration) (#2582, #2649)
- Fixed various cosmetic issues in the graphical interface (#2645, #2646)
- Improved display of long filenames in the queue (#2570)
- Improved some UX stress cases related to the queue (#2632)
- Improved error message when importing a preset specifying a nonexistent audio encoder (#2638)
- Improved audio and subtitle languages behavior to preserve selected languages order where "any" is also selected (#2611)
- Improved low disk space preferences and alerts (#2648)
- Added a workaround for an upstream .NET issue causing tooltips to not render correctly in some cases (#2630)
- Miscellaneous bug fixes and improvements
Rather than add to the ifdef stew that's already there, simply don't
try to second-guess the host platform. Otherwise, we'd need more macro
checks added for, at least, NetBSD, FreeBSD, and musl, but including
sys/types.h should "just work".
(There's seemingly another unrelated portability issue directly below
that code block, but it won't break builds, and would require different
means of correction.)
Version 52.0.0 "Secret For The Mad"
New features and enhancements
* MKVToolNix GUI: job queue: the maximum number of jobs to run concurrently
can now be increased in the preferences. The default remains
at 1.
* MKVToolNix GUI: the GUI will now add a context-specific default extension to
file names selected for saving on platforms that don't add one itself
(e.g. GNOME). For example, when saving multiplexer settings the extension
`.mtxcfg` will be added.
* MKVToolNix GUI: added an option to the preferences for the window to stay on
top of other windows.
Bug fixes
* mkvextract: h.265/HEVC extraction: the code for skipping extraction of
prefix SEI NALUs in the first frame was skipping two bytes too few,
resulting in broken processing of all following bytes. Patch by Mike Chen.
* libEBML: the optional, bundled version of libEBML was updated to v1.4.1.
Build system changes
* libEBML v1.4.1 is now required due to a bug in libEBML that caused pointers
to just-freed memory being returned to the caller under certain invalid data
constellations, causing use-after-free errors in all of MKVToolNix's
programs.
Packaged in wip by Charlotte Koch
Open Asset Import Library (short name: Assimp) is a portable Open Source
library to import various well-known 3D model formats in a uniform manner.
The most recent version also knows how to export 3D files and is therefore
suitable as a general-purpose 3D model converter. See the feature list.
Assimp aims to provide a full asset conversion pipeline for use in game
engines/realtime rendering systems of any kind, but it is not limited to
this purpose. In the past, it has been used in a wide range of applications.
Changes from the wip package
-Updated HOMEPAGE
-Adjusted CATEGORIES to be consistent with DragonFly, FreeBSD and OpenBSD
-Re-build buildlink3.mk
pkgsrc changes:
- Remove `ass' option: libass is now always needed and enabled
- Add `openal' option to enable openal ao (disabled by default)
- Remove pkgsrc patches ao-s that were removed in 0.33.0 (a possible
patch for oss ao is under discussion upstream:
https://github.com/mpv-player/mpv/pull/8312 )
Changes:
0.33.0
======
Features
--------
Added
~~~~~
- scripting: load scripts from directories
- mac: activate logging when started from the bundle
- ytdl_hook.lua: delay load subtitles
- sub: add an option to filter subtitles by regex
- scripting: add a way to run subprocesses as "scripts"
- command: implement asynchronous commands and support for named arguments
- player: add optional separate video decoding thread
- vo_gpu: d3d11: add support for exclusive fullscreen
- w32_common: Support HiDPI on Windows
- vo_x11: add 10 bit support
- vo_gpu: add BT.2390 tone-mapping
- client API: add software rendering API
- audio: add scaletempo2 filter based on chromium
- auto_profiles: add this script
- stream: Implement slice:// for reading slices of streams
- player: add automatic loading of external cover art files
- vo_sixel: implement terminal video output using sixel
Changed
~~~~~~~
- sws_utils: use zimg by default if available
- build: pick up Lua 5.2 by default (preferred over 5.1)
- build: disable RPI vendor blob auto-detection in favor of open-source stack
- build: make C11 atomics mandatory
- build: make libass non-optional
- player: stricter filename matching for external subtitle auto-loading
- lua: support Unicode paths in script loading and IO library
- vo_direct3d: rip out texture video rendering path and dumb down OSD rendering
- audio: rewrite internal audio handling and AO API
- build: disable GLX by default
Removed
~~~~~~~
- stream_libarchive: disable tar support due to bugs
- Remove remains of Libav compatibility
- stream_smb: remove due to lack of thread safety and the abundance
of alternatives, FFmpeg still includes SMB support
- command: remove legacy hook API (has been deprecated for a long time)
- client API: remove deprecated qthelper.hpp header
- removed audio outputs: sndio, rsound, oss
- x11: remove xdg-screensaver invocations that supported dbus based idle inhibit
- client API: deactivate the opengl_cb API
- build system: drop Python 2 compatbility
Options and Commands
--------------------
Added
~~~~~
- demux: add option to disable cache "sharing" between back and forward buffers
- player: add ab-loop-count option/property
- ytdl_hook: add a way to use ytdl's default formats
- ytdl_hook: add all_formats option that loads all formats that were found
- demux_mkv: document probe-start-time option and enable it by default
- command: extend osd-overlay command with bounds reporting
- player: a number of new playlist contol commands/properties
- ipc: add --input-ipc-client option
- options: add option to control display-sync factor
- vo_gpu: add better gamut clipping option
- vo_gpu: vulkan: add ability to disable events
- x11: add option to make window appear on a specific workspace
- wayland: expose wayland-app-id as a user option
- player: add --subs-with-matching-audio option
- command: add read-only focused property
- screenshot: option to use software rendering for screenshots
- command: add delete-watch-later-config
- command: new property mouse-pos with current position and hover state
Changed
~~~~~~~
- options: remove deprecation warning for "-foo bar" syntax
- player: make audio hr-seek default
- ad_lavc: disable decoder downmix by default
- command: support save-position-on-quit for "stop" command too
- command: extend subprocess command
- options: do not accept ":" as separator anymore in key/value lists
Deprecated
~~~~~~~~~~
- demux: deprecate --cache-secs
Removed
~~~~~~~
- wayland: remove wayland-frame-wait-offset option
- input: remove deprecated --input-file option
- vo_vdpau: remove deprecated/inactive --vo-vdpau-deint option
Fixes and Minor Enhancements
----------------------------
- options: stop hiding deprecated options from --help output
- lua, js: add mp.get_script_directory() function
- lua: fix security relevant loading order issue with scripts
- player: make screenshot each-frame mode more accurate
- bash completion: complete ao/af/vo/vf options
- zimg: add alpha support
- wayland: make resizing better
- edl: add mechanism for delay loading streams
- stream_file: fix caching-related performance regression on CIFS
- cocoa-cb: fix crashes and issues with UI updates
- sub, demux: improve behavior with negative subtitle delay/muxed subs
- demux: make seek ranges work for static images + audio
- cocoa-cb: support maximize/minimize on startup
- umpv: change from legacy FIFO to socket
- stats: move input speed to cache page, make it a graph
- stats: add fourth page with performance graphs
- command: print edition title to OSD when cycling
- zimg: add support for big endian input and output
- demux_mkv: add png intra support
- build: detect VT_GETMODE on FreeBSD and DragonFly
- win32: use windows 10 native virtual-terminal if available
- vo_gpu: enable frame caching for still frames
- command: add property to return text subtitles in ASS
- vo_gpu: ra_pl: add timers support
- build: allow vo_wlshm on more Wayland platforms (e.g. FreeBSD)
- zimg: add slice threading and use it by default
- command: add a way to access properties of a current track
- vo_gpu: EGL: fix transparency on X11/EGL/Mesa
- vd_lavc: add AV1 to the default allowed hwdec codec list
pkgsrc changes:
---------------
* Add patch corresponding to a Github open pull request
* Update from c++03 to c++11 in USE_LANGUAGES to accept nullptr
upstream changes:
-----------------
* No clear ChangeLog in the repository
Changes:
fix support for sound in PPAPI plugin
better handling of obfuscated code
new command line argument to ignore unhandled exceptions
support for context menus added
partial support for CubeTextures and compressed Textures in Stage3d
ability to create screenshot added
boost dependency removed
fullscreen mode implemented
better sound handling, especially for AVM1
better support of older (AVM1) swf files
support for xml in AVM1
support for video streaming in AVM1
A bunch of packages had an extra "p" specification character passed to
the pax -p option. One is enough. Committed to reduce the human parsing
costs, should someone else need to examine this. (In my case because it
seems recent Linux distros have changed such that some -p arguments can
now cause an error to occur, where previously they were accepted.)
Changes between 3.0.11 and 3.0.11.1:
----------------------------------
Demux:
* Fixed HLS playlist update mechanism, unable to start
in some cases.
* Because of broken HLS servers, adaptive no longer
considers Content-Type as authoritative.
* Fixed handling of WEBM WebVTT subtitles
* Workaround invalid ADTS in TS from Makito encoders
* Fixed Opus when using avformat demuxer
Decoders:
* Fixed inverted explicit start/end positioning
Service Discovery:
* Fix listing of media on certain Panasonic recorders discovered via UPnP
macOS:
* Fix automatic playback resume with "Music" app
* Fix possible freeze after pause, seek, unpause
Version 0.4.2
-------------
- Improved X11/Wayland detection.
- Changed ALSA input to use non-blocking API. This seems to reduce the latency in some cases.
- Added support for s24, s32 and f32 sample formats for ALSA input.
- Added 'open folder' button after saving the recording.
- Several minor improvements.
If you have an obscure multimedia file which needs a 32-bit binary
Windows codec to play you're probably better off converting it in
a VM these days.
While here, delint.
2020-10-25: Version 1.2.1
- Add initial support for .fmts files.
- Improve missing/broken playlist handling ("Star Trek Beyond 4K").
- Improve UHD metadata support.
- Improve BD-J compability.
- Improve error resilience and stability.
- Fix long delay in "Evangelion, You are (not) alone" menu.
- Fix JVM bootstrap issues with some Java 9 versions.
- Fix sign extended bytes when reading single bytes in BDJ.
- Fix creating organization and disc specific BD-J BUDA directories.
- Use external libudfread when available.
- Rename list_titles to bd_list_titles and add it to installed programs.
Release 0.15.0
Boo! Three long years in the making due to large internal changes, this long-awaited release brings bug fixes, speed, and a new mechanism for opting into VSFilter-incompatible features:
Fix backwards/VSFilter-incompatible font sizes with FreeType 2.10+
Improve speed via better caching
Require HarfBuzz unconditionally to ensure good shaping for complex scripts
ass_set_use_margins(true) now simply places text on the whole screen instead of attempting to tie it to video positioning (set by the margin values) and failing in various ways when margins are used to implement pan & scan in a video player
Add ass_track_set_feature() & catch-all ASS_FEATURE_INCOMPATIBLE_EXTENSIONS
Add ASS_FEATURE_BIDI_BRACKETS to enable Unicode 6.3+ bracket matching when applying the Unicode Bidirectional Algorithm (incompatible with VSFilter; requires libass built with FriBidi 1.0+)
Fix stack overflow on deeply nested \t tags
Fix positioning of events with leading line breaks
Fix small but nonzero \bord becoming \bord0 (regression in 0.14.0)
Measure BorderStyle=4 box padding from glyph border, not from glyph fill
Scale everything from script resolution if storage size is not set (including borders and shadows regardless of ScaledBorderAndShadow)
Fix the default aspect ratio calculation when neither ass_set_pixel_aspect() nor ass_set_aspect_ratio() is called
Multiple fixes for karaoke override tags
Handle memory allocation failures better: avoid some crashes and produce images closer to truth
Avoid some integer overflows
Add internal infrastructure for regression testing
Improve VSFilter compatibility:
- Treat invalid nested \t tags like VSFilter
- Make \t(T,T,...) at time exactly T use the post-transition values
- Make lines stack more like they do in VSFilter
- Default ScaledBorderAndShadow to 0 (like VSFilter), except for subtitles that were produced by old FFmpeg/Libav
- Make shadow positioning with 3D transforms match VSFilter’s
- Cut out glyphs from border & shadow in all the same cases as VSFilter
- Match VSFilter on animated color tags with negative acceleration
- Fix parsing of some files that VSFilter accepts but libass didn’t by ignoring leading whitespace in each line of an ASS file or CodecPrivate
- Improve font selection with CoreText
- Stop faux-bolding fonts that are too bold to get faux bold in VSFilter
- Ignore leading/trailing spaces when calculating height of nonblank lines
- Match VSFilter on \fade with large alpha value arguments
- Stop splitting bitmaps on font substitution
- Multiple fixes for Banner and Scroll effects
- Multiple fixes for karaoke override tags
### 0.22.5 (2020-10-16 00:45:00 UTC)
* Fix reading scene numbers from db
* Change improve clarity of notes when config/Media Process/Failed Download Handling is enabled
### 0.22.4 (2020-10-15 13:20:00 UTC)
* Fix enable "Perform search tasks" at config/Media Providers/Options for custom RSS
* Fix remove enable_scheduled_backlog as it is not appropriate for custom RSS
* Fix if no anime release group parsed, provider id is used to prevent skipping result
* Fix if no anime season is parsed, assume season 1 to prevent skipping result
* Change add some anime quality recognition to assist search
### 0.22.3 (2020-10-14 15:00:00 UTC)
* Fix use qualities saved as default during Add Show to set up qualities in Bulk Change
* Fix add manual indents to Quality dropdown select that browsers removed from CSS styles
* Change allow Python 3.9.0
* Fix English flag
### 0.22.2 (2020-09-25 09:00:00 UTC)
* Change allow Python 3.8.6
* Fix show saved require word list to require at least one word during search
### 0.22.1 (2020-09-24 13:00:00 UTC)
* Fix rare case with import existing shows where shows are not listed due to a corrupt `.nfo` file
### 0.22.0 (2020-09-19 20:50:00 UTC)
* Add menu Shows/"Metacritic Cards"
* Add menu Shows/"TV Calendar Cards"
* Add country and language to Shows/"Trakt Cards"
* Add persistence to views of Shows/Browse Cards
* Change make web UI calls async so that, for example, process media will not block page requests
* Change improve speed of backlog overview
* Fix the missing snatched low quality on backlog overview
* Fix print trace to webinterface
* Fix creating show list when there is no list at the cycle of backlog search spread
* Change improve Python performance of handling core objects
* Change improve performance for find_show_by_id
* Change episode overview, move pulldown from 'Set/Failed' to 'Override/Failed'
* Change add rarfile_py3 3.1 (a4202ca)
* Change backport rarfile_py2; Fixes for multivolume RAR3 with encrypted headers
* Update Apprise 0.8.0 (6aa52c3) to 0.8.5 (55a2edc)
* Update attr 19.2.0.dev0 (daf2bc8) to 20.1.0.dev0 (4bd6827)
* Update Beautiful Soup 4.8.1 (r540) to 4.8.2 (r559)
* Update Certifi 2019.06.16 (84dc766) to 2020.06.20 (f7e30d8)
* Update dateutil 2.8.1 (fc9b162) to 2.8.1 (43b7838)
* Update DiskCache library 4.0.0 (2c79bb9) to 4.1.0 (b0451e0)
* Update feedparser 6.0.0b1 (d12d3bd) to feedparser_py2 6.0.0b3 (7e255f0)
* Add feedparser_py3 6.0.0b3 (7e255f0)
* Update Fuzzywuzzy 0.17.0 (0cfb2c8) to 0.18.0 (2188520)
* Update html5lib 1.1-dev (4b22754) to 1.1 (f87487a)
* Update idna library 2.8 (032fc55) to 2.9 (1233a73)
* Update isotope library 3.0.1 (98ba374) to 3.0.6 (ad00807)
* Update functools_lru_cache 1.5 (21e85f5) to 1.6.1 (2dc65b5)
* Update MsgPack 0.6.1 (05ff11d) to 1.0.0 (fa7d744)
* Update profilehooks module 1.11.0 (e17f378) to 1.11.2 (d72cc2b)
* Update PySocks 1.7.0 (91dcdf0) to 1.7.1 (c2fa43c)
* Update Requests library 2.22.0 (3d968ff) to 2.24.0 (1b41763)
* Update Six compatibility library 1.13.0 (ec58185) to 1.15.0 (c0be881)
* Update soupsieve_py3 2.0.0.dev (69194a2) to 2.0.0.final (e66c311)
* Update soupsieve_py2 1.9.5 (6a38398) to 1.9.6 final (f9c96ec)
* Update tmdbsimple 2.2.0 (ff17893) to 2.2.6 (310d933)
* Update Tornado_py3 Web Server 6.0.3 (ff985fe) to 6.0.4 (b4e39e5)
* Update urllib3 release 1.25.6 (4a6c288) to 1.25.9 (a5a45dc)
* Add Telegram notifier
* Change enable image caching on browse pages
* Change update sceneNameCache after scene names are updated
* Change add core dedicated base class tvinfo_base to unify future info sources
* Add exclude ignore words and exclude required words to settings/Search, Edit and View show
* Add API response field `global exclude ignore` to sg.listignorewords endpoint
* Add API response field `global exclude require` to sg.listrequirewords endpoint
* Change improve Popen resource usage under py2
* Add overall failure monitoring to History/Connect fails (renamed from "Provider fails")
* Change log exception during updateCache in newznab
* Change make Py3.9 preparations
* Change anime "Available groups" to display "No groups listed..." when API is fine with no results instead of blank
* Change improve clarity of anime group lists by using terms Allow list and Block list
* Change add alternative locations for git.exe on Windows with a log warning
* Add link to the wiki setup guide for NZBGet and SABnzbd at Search Settings/"NZB Results"
* Change API version to 13
### 0.21.49 (2020-09-19 20:40:00 UTC)
* Change make make test_encrypt hardware independent
* Fix add `cf_clearance` to two providers that use CF IUAM, Scenetime and Torrenting
* Change convert Scenetime Quicktime SD release titles to formal SD quality title
### 0.21.48 (2020-09-18 21:00:00 UTC)
* Change typo on search_episode_subtitles when subtitles are disabled
* Fix enabled encrypt option on startup under py3
### 0.21.47 (2020-09-17 16:10:00 UTC)
* Change add warning to logs for enabled providers where `cf_clearance` cookie is missing
* Fix backlog search in season search mode
* Fix don't search if subtitles disabled
### 0.21.46 (2020-09-16 20:00:00 UTC)
* Fix TorrentDay and IPTorrents. Important: user must add browser cookie `cf_clearance` to provider 'Cookies' setting.
If `cf_clearance` not found in browser, log out, delete site cookies, refresh browser, `cf_clearance` will be created.
Upstream announcement:
https://helpx.adobe.com/security/products/flash-player/apsb20-58.html
Adobe Security Bulletin
Security updates available for Adobe Flash Player | APSB20-58
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 an exploitable crash, potentially resulting in arbitrary code
execution in the context of the current user.
Version 51.0.0 "I Wish" 2020-10-04
New features and enhancements
* mkvmerge, mkvpropedit, MKVToolNix GUI: IETF BCP 47 language tags: added
missing support for UN M.49 regions for which there are no corresponding ISO
3166 alpha codes. This enables language tags such as `es-419` = Spanish in
Latin America and the Caribbean.
* MKVToolNix GUI: IETF BCP 47 language tags: the text in the widget displaying
the current language & the corresponding edit button is now displayed like a
link (depending on the theme: different color & underlined), making it
clearer that not just the edit button can be clicked but the text, too.
Bug fixes
* mkvmerge: AV1 parser: fixed mkvmerge crashing after uncaught exceptions due
to certain data conditions. Found by fuzzying.
* mkvmerge: AV1 packetizer: the duration of frames wasn't set properly. When
appending AV1 IVF or OBU files this meant that the last frame of the Nth
file and the first frame of file N+1 had the same timestamp.
* mkvmerge: DTS reader: fixed handling of buffers with an odd length when
byte-swapped DTS is detected so that mkvmerge doesn't abort with a failed
assertion. Found by fuzzying.
* mkvmerge: h.264/AVC and h.265/HEVC elementary stream readers: mkvmerge will
no longer claim to recognize data that looks like AVC or HEVC but with
invalid video width/height values as that lead to failed assertions in
libEBML later. Found by fuzzying.
* mkvmerge: h.265/HEVC parser: fixed mkvmerge aborting after uncaught
exceptions due to certain data constellations found by fuzzying.
* mkvmerge: IVF reader: fixed mkvmerge crashing with a "division by zero"
error due to certain data conditions. Found by fuzzying.
* mkvmerge: fixed mkvmerge aborting with a "division by zero" error due to the
timestamp scaling factor being 0 after handling certain data constellations
found by fuzzying.
* mkvmerge: track statistics: fixed a "division by zero" error when the
content's shorter than 1ms. Found by fuzzying.
* mkvmerge, mkvinfo, mkvextract, mkvpropedit: Matroska access class: fixed an
invalid memory access under certain data conditions. Found by fuzzying.
* MKVToolNix GIU: IETF BCP 47/RFC 5646 language tags: the GUI will no longer
open the language dialog when clicking on a disabled language display
widget.
* MKVToolNix GUI: IETF BCP 47 language tags: the "variants" combo-boxes were
not populated even when the language tag was valid and contained at a
variant.
* MKVToolNix GUI: IETF BCP 47 language tags: when no language is selected, at
least one of the other components (extended subtags, region, or variants)
has something selected and "private use" is not empty, the GUI would claim
this to be a valid tag, which it isn't.
* MKVToolNix GUI: multiplexer: when the tracks/chapters/tags selection changes
from "at least one entry selected" to "no entry selected", the input
controls will be reset to their default state and not just disabled.
Build system changes
* `configure` now checks for the presence of the a system-wide installed copy
of the JPCRE2 C++ wrapper library for the PCRE2 library and uses that if
it's new enough (at least v10.32.1). If not, the bundled version will be
used as a fallback.
Changelog:
OBS Studio 26.0
As usual, if you would like to support our project, please check us out on
Patreon or OpenCollective!
New Features and Additions
* Windows: Added Virtual Camera, allowing you to use the OBS output as a
camera in other apps on your computer. Support for other operating systems
will be added in future versions when they're ready [Jim]
* Added a Source Toolbar to allow easy access to relevant controls for the
currently selected source. The toolbar can be toggled via the View Menu ->
Source Toolbar [DDRBoxman/Jim/cg2121]
* Added media controls to allow controlling playback of media/VLC sources on
the source toolbar when a media source, VLC source, or slideshow source is
selected [cg2121]
* Added a new noise suppression method to the Noise Suppression filter,
RNNoise, which is an AI-based noise suppression method with significantly
better results for voice than the pre-existing method (Speex) [remjay]
* Added the ability to take screenshots of the previews, sources, or scenes
with hotkeys [cg2121]
* Added a log viewer when going to the Help menu -> Logs -> View Log menu
item [cg2121]
* Added a percentage toggle checkbox to the volume controls in advanced audio
properties [cg2121]
* Added more audio capture support for BSD operating systems [khng300]
* Added the option to disable antialiasing for text sources [Codex-]
* Added a right-click context menu option to projectors to make a specific
projector always on top of other windows [Bennik2000]
Improvements/Tweaks
* QSV Encoder: Improved performance when running OBS on an Intel GPU and
simplified various options [brittneysclark]
* The cursor will now change to reflect your action (dragging edges or
sources) when editing items in the preview [WizardCM]
* Improved the interface of transitions dock [cg2121]
* Increased the update rate of the level meters in the audio mixer from 30Hz
to 60Hz for improved smoothness and responsiveness [dodgepong]
* Media sources using remote URLs will now automatically try to reconnect
when disconnected [Yohox]
* Added a "Defaults" button to the script dialog to reset script properties
to defaults [cg2121]
* Added a right-click context menu when clicking on scripts to allow opening
the script file location or reloading specific scripts [WizardCM]
* The auto-configuration dialog will now use standard/common resolutions when
selecting what resolution you’d like to use [cg2121]
* 709 is now the default YUV colorpsace
* The VLC source’s playlist property can now be reordered by dragging and
dropping items within it [cg2121]
* Projectors associated with specific monitors will now be deleted when the
monitor is disconnected from the system [cg2121]
* You can now use slashes in the recording name format and prefix prefixes/
suffixes to automatically create directories when recording or making
replays [Jim]
* Improved performance and accuracy of the LUT filter [jpark37]
* The default audio sample rate is now 48khz instead of 44.1khz [e00E]
* NVENC: Added a more friendly warning that will show up if you are using an
outdated NVIDIA driver [notr1ch]
* Windows: The program will now show a list of command line options in a
dialog box if started with the --help or -h command line parameters
[WizardCM]
* macOS: Added support for several more virtual audio drivers to be selected
as desktop audio capture devices in audio settings [pkv]
* Image sources will no longer check for changes or try to load an image
while hidden [notr1ch]
* The minimum canvas resolution is now 8x8 to prevent issues where this could
be rounded to zero causing OBS to fail to start [notr1ch]
* The settings window can now be closed with the ESC key [Bennik2000]
* macOS window capture no longer shows windows which aren't relevant to
capture [timmiehaha]
Bug Fixes
* Windows: Fixed an issue where loss of certain devices could cause a crash
with window capture [jpark37]
* Windows: Fixed a bug where an inactive UWP app (such as Calculator) could
be selected for window capture, but would still fail to capture even after
being unminimized [jpark37]
* Windows: Fixed a flaw where capturing Chrome-based programs with Window
Capture might fall back and capture other Chrome-based programs
unintentionally [jpark37]
* Windows: Fixed the auto updater always launching OBS as administrator after
a successful update [notr1ch]
* Windows: The auto updater now works correctly if the OBS user and
administrator user are different accounts [notr1ch]
* Linux: Fixed an issue where the browser source could crash when browsing
files [cg2121]
* Linux: Fixed an issue with “always on top” sometimes not working with
projectors [cg2121]
* Linux: Fixed an issue where cameras using V4L2 would not respond correctly
to pan/tilt controls [ioangogo]
* Linux: Fixed an issue where a user’s preferred language could not be
detected correctly [khng300]
* macOS: Fixed an issue where “always on top” windows would not always be
on top [jtopper]
* macOS: Fixed an issue where certain prompts didn’t have a default action
for keyboard users [unknowndomain]
* macOS: Fixed a memory leak which could cause a crash after extended use
[jpark37]
* macOS: Fixed an issue where resizing a multiview window could cause a crash
[jpark37]
* Fixed a bug where pressing the rename shortcut while editing a scene name
would reset the edit state [RytoEX]
* Fixed a bug where the system tray icon could appear even though it was
disabled in settings [Programatic]
* Fixed a bug where you could get two save confirmation dialogs in a row when
exiting the filter/properties [Jim]
* Fixed various bugs and stability issues with Vulkan capture [jpark37]
* Fixed a bug where starting recording or the replay buffer could resize the
main window [cg2121]
* Fixed a bug where media sources hotkeys would not work correctly in Studio
Mode’s preview [cg2121]
* Fixed an issue that allowed “Paste (Duplicate)” for scene sources,
resulting in strange bugs [exeldro]
* Fixed an issue where the volume meters in the audio mixer would appear to
be clipping when docks were moved [WizardCM]
* Fixed an issue where the right edge of certain JPEG and movie files could
be incorrectly rendered [jpark37]
* Fixed an issue where groups would not be selected/deselected correctly
[cg2121]
* Fixed a hang that could occur when streaming with certain streaming
services (caused by certain RTMP status values) [eric]
* Fixed an issue where scene collections which used similar names with
different symbols could overwrite one another [RytoEx]
* Fixed a bug where CoreAudio audio encoder would not work with 4.0 audio
correctly [pkv]
* Fixed a crash when a hotkey to play/pause was used on a media source with
an invalid or blank file [exeldro]
* Fixed a bug where the “Start Streaming” button could become blank under
certain circumstances [WizardCM]
* Fixed a bug where a changed theme get stuck if the user exited the settings
dialog with the [x] button rather than the OK/Cancel buttons [Jim]
* Fixed a bug where filters would be deleted on sources that had their
plugins removed [Jim]
* Fixed a bug where hotkeys could repeat when held down [cg2121]
* Fixed a bug where unnamed sources would show up in the hotkeys settings
[Scrxtchy]
* Fixed a bug where services wouldn't be ordered properly when showing all
services [Jim]
* Fixed an issue where the automatic scene switcher tool wouldn't detect some
windows [adalessa]
* Fixed a bug where the Stats dock would steal focus from the main window
[Bennik2000]
* Fixed a tearing issue for certain codecs (such as ProRes) when using FFmpeg
output [ePirat]
* Fixed a bug with the SRT output to make it compliant with ETR 290 Level 1
recommendations (rewrite of srt output) [pkv]
* Fixed a bug where the last frame of a media source could be visible briefly
when restarting playback [notr1ch]
* Fixed a bug where you could not capture programs using executable names
beginning with “time” [notr1ch]
* Fixed a crash with certain AJA devices [Jim]
* Fixed a memory leak when dragging and dropping stuff on to OBS to create
sources [cg2121]
* Fixed a memory leak and crash on shutdown when scenes were reordered
[Programatic]
* Fixed the script_path() script function causing memory corruption [PerHeed]
* Fixed camera controls on Linux video devices not working
[Nathan-Huckleberry]
- support for Dolby Vision meta-data tagging in ISOBMFF
- improved QT support
- bug fixes and security fixes
pkgsrc changes:
- pkglint: define each PLIST_VARS where it's used
Version 50.0.0 "Awakenings"
New feature: IETF BCP 47 language tags
* I've written up a [nice FAQ
entry](https://gitlab.com/mbunkus/mkvtoolnix/-/wikis/Languages-in-Matroska-and-MKVToolNix)
about the switch to using IETF BCP 47 language tags, how they interact with
legacy language elements, how the programs actually behave and how to
disable their use if necessary.
* mkvmerge: IETF BCP 47/RFC 5646 language tags: mkvmerge will now accept full
BCP 47 language tags for all options taking a language. mkvmerge will always
write "LanguageIETF" track header elements. If the language tag contains a
valid ISO 639-2 language code it will also set the legacy "Language" track
header element to the included ISO 639-2 code.
* mkvmerge: IETF BCP 47/RFC 5646 language tags: if present the "LanguageIETF"
track header element will be reported as the `language_ietf` property in
JSON identification mode.
* mkvmerge: IETF BCP 47/RFC 5646 language tags in chapters: mkvmerge will now
write "ChapLanguageIETF" elements when creating chapter atoms, either when
reading the simple chapter format or when generating chapters due to the
`--generate-chapters` command line option.
* mkvmerge: IETF BCP 47/RFC 5646 language tags in tags: mkvmerge will now
write "TagLanguageIETF" elements when creating "simple tag" elements, either
when reading tag XML files or when generating them.
* mkvmerge: IETF BCP 47/RFC 5646 language tags: added an option
`--disable-language-ietf` that causes mkvmerge to only write the legacy
language elements.
* mkvmerge, mkvpropedit, MKVToolNix GUI's chapter editor: IETF BCP 47/RFC 5646
language tags in chapters: when reading XML chapter files the programs will
now add "ChapLanguageIETF" elements for atoms that don't contain them. The
values are derived from existing "ChapterLanguage" elements.
* mkvpropedit: IETF BCP 47/RFC 5646 language tags: setting/deleting the track
language now acts on both the old language element as well as the
"LanguageIETF" track header element.
* mkvpropedit: IETF BCP 47/RFC 5646 language tags: added an option
`--disable-language-ietf` that causes mkvpropedit to apply changes to the
`language` track header property only to the legacy language track header
element.
* mkvinfo: IETF BCP 47/RFC 5646 language tags: added support for the
"LanguageIETF" track header element.
* MKVToolNix GUI: multiplexer: added full support for IETF BCP 47/RFC 5646
language tags for both track and chapter languages.
* MKVToolNix GUI: chapter: added full support for IETF BCP 47/RFC 5646
language tags for chapter languages.
* MKVToolNix GUI: header editor: added full support for IETF BCP 47/RFC 5646
language tags for track header languages. The header editor allows editing
of the legacy language elements and the IETF BCP 47 language elements
independent of each other.
Other new features and enhancements
* mkvmerge: the chapter generation mode `when-appending` now also works with
the splitting modes `parts:` & `parts-frames:` when using the `…,+…` syntax
for appending other sections of the source file to the same destination
file.
* MKVToolNix GUI: multiplexer: the file selection dialogs now include the
extension `.dtsma` for DTS files.
* mkvmerge: MP4 reader: sped up parsing MP4 DASH files with a lot of segments
(`trun` atoms) quite a bit.
* The PCRE2 regular expression library is now used instead of `std::regex` for
big performance improvements in all places where regular expressions are
used for parsing big chunks of text, e.g. in the subtitle parsers.
* all programs: Windows: all programs now support long file names on Windows
10 release 1604 if they're turned on in the registry.
Bug fixes
* MKVToolNix GUI: preferences: under certain conditions changing the selected
entry in the page tree on the left did not cause the page shown on the right
to be updated.
* mkvmerge: splitting text by a fixed string (e.g. `,`) is now done by using
`std::string.find()` instead of using a regular-expression-based text
splitting function, greatly improving its performance.
* mkvmerge: mkvmerge will now read-buffer file I/O when probing text file
formats which increases its speed significantly on Windows.
* mkvmerge: MP4 reader: fixed handling of `tkhd` atoms of version 1.
Build system changes
* The PCRE2 library (the 8-bit variant) is now required.
libde265 is an open source implementation of the h.265 video codec.
It is written from scratch and has a plain C API to enable a simple
integration into other software.
2020-07-29 v1.9.0 "Quacking Duck"
This release adds support for NV12, a separate library for rate control, as
well as incremental improvements.
- Upgrading:
NV12 support is added to this release.
A new interface is added for VP9 rate control. The new library libvp9rc.a
must be linked by applications.
Googletest is updated to v1.10.0.
simple_encode.cc is compiled into a new library libsimple_encode.a with
CONFIG_RATE_CTRL.
- Enhancement:
Various changes to improve VP9 SVC, rate control, quality and speed to real
time encoding.
- Bug fixes:
Fix key frame update refresh simulcast flexible svc.
Fix to disable_16x16part speed feature for real time encoding.
Fix some signed integer overflows for VP9 rate control.
Fix initialization of delta_q_uv.
Fix condition in regulate_q for cyclic refresh.
Various fixes to dynamic resizing for VP9 SVC.
As of 1.24, MATE requires GNU-specific msgfmt features. meta-pkgs/mate/
Makefile.common r. 1.10 expressed this tool dependency using
USE_BUILTIN.gettext=no, but this exposed pkgsrc gettext-libs in the
build environment as well, which some MATE packages then linked
against, but gettext-libs didn't end up being declared as a run-time
dependency, so binary package installations were broken (with the
workaround of manually installing the undeclared gettext-libs
dependency). Express this dependency differently, so GNU msgfmt is
used as a tool without exposing pkgsrc gettext-libs.
(The pkgsrc tooling infrastruture could be altered to provide a
distinct "gmsgfmt" tool, same with "gxgettext", and perhaps others.
Here I'm just immediately concerned with fixing this packaging issue.)
Addresses PR pkg/55503 by Jay Patel.
Version 20.03, 2020-04-03
-------------
+ AC-4 full featured support (presentations, groups, substreams)
+ MPEG-H 3D Audio basic support
+ MPEG-TS: audio preselection descriptor support
+ Dolby Vision v2 detection
+ MPEG-4: support of colr/nclx (color information) box
x URL encoding option fixes, permitting to use URL encoded or non URL encoded links
x AAC: fix SBR frequency when in ADIF
x DPX: ColorimetricSpecification and TransferCharacteristic were inverted
x Several crash and memory leaks fixes
Version 49.0.0 "Sick Of Losing Soulmates" 2020-08-02
New features and enhancements
* mkvmerge: added support for copying the new track header elements
`BlockAddIDName`, `BlockAddIDType`, `BlockAddIDValue` and
`BlockAddIDExtraData` from Matroska files if they exist.
* mkvinfo: added support for the new track header elements
`BlockAdditionMapping`, `BlockAddIDName`, BlockAddIDType`, `BlockAddIDValue`
and `BlockAddIDExtraData`.
* MKVToolNix GUI: multiplexer: the list of recent directories can now be
edited in the preferences → "Multiplexer" → "Destination file
name".
* MKVToolNix GUI: preferences: the values in the various "predefined values"
lists can now be re-ordered freely by dragging & dropping.
Bug fixes
* mkvmerge: Matroska reader: when reading tracks (e.g. a subtitle track) from
Matroska files with their `default track` flag set to `yes`, and when
overwriting those via the command line to `no`, `mkvmerge` would not promote
additional tracks of the same type from other files (e.g. another subtitle
track from an SRT file).
* mkvmerge: SRT reader: empty lines inside entries were doubled.
* mkvmerge: subtitles: when calculating the rounded duration of each entry the
error from rounding the corresponding timestamp will be taken into
account.
* mkvextract: SSA/ASS extraction: mkvextract is no longer inserting empty
lines before the `Dialogue:` lines.
* mkvextract: USF subtitles: start & end timestamps were too high by a factor
of 1.000.000.
* MKVToolNix: info tool: when saving to a text file the checkbox "Save as
default for saving output to text files" did nothing.
* MKVToolNix: info tool: when saving to a text file in "all elements in a
tree-like structure" mode, the GUI always stopped at the first cluster
regardless of the setting of the "verbosity" option.
* MKVToolNix GUI: preferences: when tooltips were disabled the dialogs for
adding new entries to the various "predefined values" lists were missing
their texts.
* Windows installer: the images are shown again.
* configure: fixed detection of QtDBus.
Build system changes
* libMatroska v1.6.1 is now required. The bundled version has been updated to
that version.
Released v1.6.2.
* In release 1.6.1 the version number in CMakeLists.txt wasn't
updated, affecting the installed cmake and pkgconfig files. The
version number has been bumped to 1.6.2 in all relevant files now.
Released v1.6.1.
* "KaxBlockAddIDValue" class: this class is no longer marked as
"mandatory" in order to coincide with the latest specification.
0.7.0:
EXTINF tag must not violate floating point spec
Drop Python 2 support
Allow users to use proxies
Allow users to use a custom HTTP client
Rounded framerate to 3 decimal places per spec
Support VIDEO-RANGE in StreamInfo
Too many versions were skipped to provide a full change log here.
All versions and their changes can be found here:
https://github.com/SickGear/SickGear/releases
And since SickGear now supports Python 3, let's also switch to that.
version 4.3.1:
avcodec/tiff: Check input space in dng_decode_jpeg()
avcodec/mjpeg_parser: Adjust size rejection threshold
avcodec/cbs_jpeg: Fix uninitialized end index in cbs_jpeg_split_fragment()
avformat/sdp: Fix potential write beyond end of buffer
avformat/mm: Check for existence of audio stream
avformat/mov: Fix unaligned read of uint32_t and endian-dependance in mov_read_default
avcodec/apedec: Fix undefined integer overflow with 24bit
avcodec/loco: Fix integer overflow with large values from loco_get_rice()
avformat/smjpegdec: Check the existence of referred streams
avcodec/tiff: Check frame parameters before blit for DNG
avcodec/mjpegdec: Limit bayer to single plane outputting format
avcodec/pnmdec: Fix misaligned reads
avcodec/mv30: Fix integer overflows in idct2_1d()
avcodec/hcadec: Check total_band_count against imdct_in size
avcodec/scpr3: Fix out of array access with dectab
avcodec/tiff: Do not overrun the array ends in dng_blit()
avcodec/dstdec: Replace AC overread check by sample rate check
dnn_backend_native: Add overflow check for length calculation.
avcodec/h264_metadata_bsf: Fix invalid av_freep
avcodec/cbs_h265: set default VUI parameters when vui_parameters_present_flag is false
avcodec/av1_parser: initialize avctx->pix_fmt
avcodec/av1_parser: add missing parsing for RGB pixel format signaling
avcodec/av1_parser: set context values outside the OBU parsing loop
avutil/avsscanf: Add () to avoid integer overflow in scanexp()
avformat/utils: reorder duration computation to avoid overflow
avcodec/pngdec: Check for fctl after idat
avformat/hls: Pass a copy of the URL for probing
avutil/common: Fix integer overflow in av_ceil_log2_c()
avcodec/wmalosslessdec: fix overflow with pred in revert_cdlms
avformat/mvdec: Fix integer overflow with billions of channels
avformat/microdvddec: skip malformed lines without frame number.
dnn_backend_native: check operand index
dnn_backend_native.c: refine code for fail case
avformat/mov: fix memleaks
libavformat/mov: Fix memleaks when demuxing DV audio
avcodec/cbs_av1: Fix writing uvlc numbers >= INT_MAX
avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak
avcodec/bitstream: Don't check for undefined behaviour after it happened
avformat/aviobuf: Also return truncated buffer in avio_get_dyn_buf()
avformat/aviobuf: Don't check for overflow after it happened
version 3.4.8:
avcodec/hevc_mp4toannexb_bsf: Check NAL size against available input
lavf/webm_chunk: Fix NULL dereference
avcodec/ttaenc: Fix undefined shift
fftools/ffmpeg: Free swresample dictionary during cleanup
avfilter/vf_xbr: Fix left shift of negative number
avfilter/vf_hqx: Fix undefined left shifts of negative numbers
avcodec/jpeg2000dwt: Fix undefined shifts of negative numbers
avcodec/ituh263dec: Fix undefined left shift of negative number
avcodec/dnxhdenc: Fix undefined left shifts of negative numbers
swscale/utils: Fix invalid left shifts of negative numbers
swscale/x86/swscale: Fix undefined left shifts of negative numbers
avcodec/exr: Fix undefined left shifts of negative numbers
avformat/movenc: Fix undefined shift
avcodec/pcm: Fix undefined shifts
avcodec/wavpackenc: Fix undefined shifts
avcodec/ac3enc: Fix invalid shift
avcodec/tdsc: Fix undefined shifts
fftools/ffmpeg_opt: Fix signed integer overflow
avformat/mov: Fix reel_name size check
avformat/mov: Fix memleak upon encountering repeating tags
avformat/matroskaenc: Don't use NULL for %s format string
avformat/webvttdec: Fix memleak upon read header failure
avformat/vplayerdec: Fix memleak upon read header failure
avformat/tedcaptionsdec: Fix memleak upon read header failure
avformat/subviewerdec: Fix memleak upon read header failure
avformat/subviewer1dec: Fix memleak upon read header failure
avformat/stldec: Fix memleak upon read header failure
avformat/srtdec: Fix memleak upon read header failure
avformat/sccdec: Fix memleak upon read header failure
avformat/samidec: Fix memleak upon read header failure
avformat/pjsdec: Fix memleak upon read header failure
avformat/mpsubdec: Fix memleak upon read header failure
avformat/mpl2dec: Fix memleak upon read header failure
avformat/microdvddec: Fix memleak upon read header failure
avformat/lrcdec: Fix memleak upon read header failure
avformat/jacosubdec: Fix memleak upon read header failure
avformat/assdec: Fix memleak upon read header failure
avformat/aqtitledec: Fix memleak upon read header failure
avformat/mov: Fix memleaks upon read_header failure
avformat/omadec: Fix memleaks upon read_header failure
avformat/matroskadec: Fix memleaks in WebM DASH manifest demuxer
avformat/matroskadec: Use right number of tracks
avformat/matroskadec: Fix handling gigantic durations
avformat/aviobuf: Don't check for overflow after it happened
avformat/matroskaenc: Fix memleak upon encountering bogus chapter
fftools/ffmpeg_opt: Check attachment filesize
avformat/webmdashenc: Check codec types
avformat/avidec: Fix memleak with embedded GAB2 subtitles
avformat/webmdashenc: Fix memleak upon realloc failure
avformat/matroskadec: Don't discard the upper 32bits of TrackNumber
avformat/hnm: Check for extradata allocation failure
avformat/subtitles: Don't increment packet counter prematurely
avformat/bethsoftvid: Fix potential memleak upon reallocation failure
avformat/smoothstreaming: Fix memleaks on errors
avformat/matroskaenc: Check BlockAdditional size before use
avformat/utils: Fix memleaks in avformat_open_input()
avcodec/cavsdsp: Fix undefined left shifts of negative numbers
avformat/hevc: Fix potential leak in case of ff_hevc_annexb2mp4_buf failure
avformat/matroskaenc: Check for reformatting errors
avcodec/ra144enc: Fix invalid left shift of negative number
avcodec/adxenc: Avoid undefined left shift of negative numbers
avcodec/adpcm: Fix undefined left shifts of negative numbers
avcodec/proresenc_anatoliy: Fix invalid left shift of negative number
avformat/wtvdec: Fix memleak when reading header fails
avformat/fitsdec: Fix potential leak of string in AVBPrint
avformat/mov: fix memleaks
libavformat/mov: Fix memleaks when demuxing DV audio
avcodec/bitstream: Don't check for undefined behaviour after it happened
avcodec/dstdec: Replace AC overread check by sample rate check
avformat/utils: reorder duration computation to avoid overflow
avcodec/pngdec: Check for fctl after idat
avformat/hls: Pass a copy of the URL for probing
avformat/hls: check segment duration value of EXTINF
avutil/common: Fix integer overflow in av_ceil_log2_c()
avcodec/wmalosslessdec: fix overflow with pred in revert_cdlms
avformat/mvdec: Fix integer overflow with billions of channels
avformat/microdvddec: skip malformed lines without frame number.
avformat/mxfdec: free duplicated utf16 strings
avformat/4xm: Check that a video stream was created before returning packets for it
avcodec/ffwavesynth: Avoid undefined operation on ts overflow
avcodec/mpeg4videodec: Fix 2 integer overflows in get_amv()
avcodec/lossless_audiodsp: Fix undefined overflows in scalarproduct_and_madd_int16_c()
avcodec/sonic: Fix several integer overflows
avcodec/pixlet: Fix log(0) check
avcodec/iff: Fix off by x error
avcodec/wmalosslessdec: Check block_align maximum
avcodec/loco: Fix signed integer overflow in loco_get_rice()
avformat/thp: Check fps
avformat/mpl2dec: Fix integer overflow with duration
avcodec/mpeg12dec: remove outdated comments
avcodec/snowdec: Avoid integer overflow with huge qlog
avformat/mov: Check if DTS is AV_NOPTS_VALUE in mov_find_next_sample().
avcodec/mpeg12dec: Fix got_output
avformat/4xm: Cleanup on GET_LIST_HEADER() failure
avcodec/lzf: Consider the needed size in reallocation
avformat/mlvdec: fail reading a packet with 0 streams
avformat/thp: Check compcount
avcodec/adpcm: XA: Check shift similar to filter
avcodec/huffyuvdec: Test vertical coordinate more often
avcodec/hq_hqa: Check info size
avcodec/wmalosslessdec: Fix integer overflow in mclms_predict()
avcodec/vp9dsp_template: Fix integer overflow(s) in iadst16_1d()
avcodec/h264dec: Disable forced small_padding on flag2 fast
avformat/oggparsevorbis: Error out on double init of vp
avcodec/pnmdec: Use unsigned for maxval rescaling
avcodec/ivi: Clear got_p_frame before decoding a new frame using it
avcodec/dsddec: Check channels
avcodec/xvididct: Fix integer overflow in idct_row()
avcodec/wmalosslessdec: Fix integer overflows in revert_inter_ch_decorr()
avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE
avformat/swfenc: Fix integer overflow in frame rate handling
avformat/aadec: Check toc_size to contain the minimum to demuxer uses
avformat/mov: Don't allow negative sample sizes.
mpeg4videoenc: Don't crash with -fsanitize=bounds
avformat/mpegts: Shuffle avio_seek
avcodec/binkaudio: Fix 2Ghz sample_rate
avcodec/adpcm: Fix integer overflow in ADPCM THP
avcodec/ralf: Check num_blocks before use
avcodec/iff: Test video_size being non zero
avcodec/utvideodec: Fix integer overflow in decode_plane()
avcodec/ttadsp: Fix several integer overflows in tta_filter_process_c()
avcodec/ralf: Fix integer overflow in decode_block()
avcodec/nuv: widen buf_size type
avcodec/iff: Fix several integer overflows
avcodec/g729postfilter: Clip gain before scaling with AGC_FAC1
avcodec/alac: Fix integer overflow with 24/20bps samples
avcodec/dstdec: Check sample rate
avformat/thp: Require a video stream
avformat/mpeg: Decrease score by 1 for files with very little valid data
avcodec/pngdec: Check length in fdAT
avcodec/g2meet: Check tile_width in epic_jb_decode_tile()
avcodec/vp9dsp_template: Fix integer overflows in idct32_1d()
avcodec/alacdsp: Fix invalid shift in append_extra_bits()
libavcodec/wmalosslessdec: prevent sum of positive numbers from becoming negative
avcodec/dstdec: Fix integer overflow in read_table()
avcodec/txd: Check for input size against the header size.
avcodec/svq1dec: Check that there is data left after the header
avcodec/intrax8: Check for end of bitstream in ff_intrax8_decode_picture()
avcodec/hevc_mp4toannexb_bsf: Check nalu_size
avcodec/iff: Check length before memcpy() in decode_deep_rle32()
avcodec/iff: Fix invalid pointer intermediates in decode_deep_rle32()
avcodec/pngdec: Pass ret from decode_iccp_chunk()
avcodec/rv40dsp: Fix integer overflows in rv40_weight_func_*()
avcodec/ac3dec_fixed: Fix several invalid left shifts in scale_coefs()
avcodec/flac_parser: Do not lose header count in find_headers_search()
avcodec/audiodsp: Fix integer overflow in scalarproduct_int16_c()
avformat/oggdec: Check for EOF after page header
swscale/yuv2rgb: Fix vertical dither offset with slices
avcodec/dpcm: clip exponent into supported range in XAN DPCM
avcodec/flacdsp_template: Fix invalid shifts in decorrelate
avcodec/xvididct: Fix integer overflow in MULT()
avcodec/ffwavesynth: Correct undefined overflow of PINK_UNIT
swscale/output: Fix integer overflow in yuv2rgb_write_full() with out of range input
swscale/output: Fix integer overflow in alpha computation in yuv2gbrp16_full_X_c()
libavformat/amr.c: Check return value from avio_read()
libavformat/mov.c: Free aes_decrypt to avoid leaking memory
libavformat/oggdec.c: Check return value from avio_read()
avformat/asfdec_f: Fix overflow check in get_tag()
avformat/nsvdec: Fix memleaks on errors while reading the header
avcodec/ffwavesynth: Fix integer overflow in computation of ddphi
avcodec/adpcm: Fix invalid shift in AV_CODEC_ID_ADPCM_PSX
avcodec/mpeg12dec: Fix invalid shift in mpeg2_fast_decode_block_intra()
avcodec/mpegaudioenc_template: fix invalid shift of sample
avcodec/motion_est_template: Fix invalid shifts in no_sub_motion_search()
libavformat/avienc: Check bits per sample for PAL8
avformat/mpegts: Improve the position determination for avpriv_mpegts_parse_packet()
avcodec/magicyuv: Check that there are enough lines for interlacing to be possible
avformat/mvdec: Check stream numbers
avcodec/pcm: Fix invalid shift in AV_CODEC_ID_PCM_LXF
avcodec/qdm2: Check fft_coefs_index
avformat/utils: Fix integer overflow with complex time bases in avformat_find_stream_info()
avformat/avidec: Avoid integer overflow in NI switch check
fftools/ffmpeg: Fix integer overflow in duration computation in seek_to_start()
avfilter/vf_aspect: Fix integer overflow in compute_dar()
avcodec/apedec: Fix invalid shift with 24 bps
avformat/utils: Fix undefined behavior in ff_configure_buffers_for_index()
avcodec/dpcm: Fix integer overflow in AV_CODEC_ID_GREMLIN_DPCM
avcodec/wmalosslessdec: Fix integer overflow with sliding in padding bits
avcodec/wmalosslessdec: Fix loop in revert_acfilter()
avcodec/lagarith: Sanity check scale
avcodec/apedec: Fix integer overflows in predictor_decode_mono_3950()
avcodec/ralf: Fix integer overflow in apply_lpc()
avcodec/dca_lbr: Fix some error codes and error passing
avcodec/wmavoice: Fix rounding and integer anomalies in calc_input_response()
avcodec/wmavoice: sanity check block_align
avcodec/pcm: Fix invalid shift in pcm_decode_frame for LXF
avcodec/snappy: Sanity check bytestream2_get_levarint()
avcodec/mlpdsp: Fix a invalid shift in ff_mlp_rematrix_channel()
avcodec/avdct: Clear IDCTDSPContext context
avcodec/x86/diracdsp: Fix high bits on Windows x86_64
avformat/mov: Check STCO location
avcodec/wmalosslessdec: Fix multiple integer overflows
avcodec/apedec: Fix undefined integer overflow in decode_array_0000()
avcodec/smacker: Check space before decoding type
avcodec/rawdec: Use linesize in b64a
avcodec/iff: Over-allocate ham_palbuf for HAM6 IFF-PBM
avcodec/x86/diracdsp: Fix incorrect src addressing in dequant_subband_32()
avfilter/vf_find_rect: Remove assert
avfilter/vf_find_rect: Increase worst case score
swscale/input: Fix several invalid shifts related to rgb2yuv constants
swscale/output: Fix several invalid shifts in yuv2rgb_full_1_c_template()
swscale/swscale: Fix several invalid shifts related to vChrDrop
avcodec/hevc_mp4toannexb_bsf: check that nalu size doesnt overflow
avcodec/hevc_mp4toannexb_bsf: Avoid NULL memcpy()
avcodec/wmalosslessdec: move channel check up
avcodec/adpcm: Fix overflow in FFABS() IMA_EA_EACS
avcodec/alac: Fix integer overflow in LPC coefficient adaption
avcodec/g729postfilter: Optimize out overflowing multiplication from apply_tilt_comp()
avcodec/vc1dec: Check field_mode for sprites
avcodec/vc1dec: Limit bits by the actual bitstream size
avcodec/vmdaudio: Check block_align more
configure: bump year
avcodec/pgssubdec: Free subtitle on error
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/wmadec: Keep track of exponent initialization per channel
avcodec/iff: Check that video_size is large enough for the read parameters
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
avformat/rmdec: Initialize and sanity check offset in ivr_read_header()
avcodec/apedec: Fix 2 integer overflows
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
libavcodec/libvpxenc: Don't free user-provided AVPacket
libavcodec/libmp3lame: Don't free user-provided AVPacket
avcodec/libopusenc: Don't free user-provided AVPacket
avformat/matroskadec: Fix default value of BlockAddID
version 2.8.17:
avcodec/apedec: Fix undefined integer overflow with 24bit
avcodec/loco: Fix integer overflow with large values from loco_get_rice()
avformat/smjpegdec: Check the existence of referred streams
avcodec/pnmdec: Fix misaligned reads
avformat/utils: reorder duration computation to avoid overflow
avcodec/pngdec: Check for fctl after idat
png: split header state and data state in two separate variables.
avformat/hls: Pass a copy of the URL for probing
avformat/hls: check segment duration value of EXTINF
avutil/common: Fix integer overflow in av_ceil_log2_c()
avformat/microdvddec: skip malformed lines without frame number.
avformat/4xm: Check that a video stream was created before returning packets for it
avcodec/ffwavesynth: Avoid undefined operation on ts overflow
avcodec/mpeg4videodec: Fix 2 integer overflows in get_amv()
avcodec/lossless_audiodsp: Fix undefined overflows in scalarproduct_and_madd_int16_c()
avcodec/sonic: Fix several integer overflows
avcodec/iff: Fix off by x error
avcodec/wmalosslessdec: Check block_align maximum
avcodec/loco: Fix signed integer overflow in loco_get_rice()
avformat/thp: Check fps
avformat/mpl2dec: Fix integer overflow with duration
avcodec/mpeg12dec: remove outdated comments
avcodec/snowdec: Avoid integer overflow with huge qlog
avcodec/mpeg12dec: Fix got_output
avformat/4xm: Cleanup on GET_LIST_HEADER() failure
avformat/mlvdec: fail reading a packet with 0 streams
avformat/thp: Check compcount
avcodec/adpcm: XA: Check shift similar to filter
avcodec/huffyuvdec: Test vertical coordinate more often
avcodec/hq_hqa: Check info size
avcodec/wmalosslessdec: Fix integer overflow in mclms_predict()
avcodec/vp9dsp_template: Fix integer overflow(s) in iadst16_1d()
avcodec/h264dec: Disable forced small_padding on flag2 fast
avcodec/pnmdec: Use unsigned for maxval rescaling
avcodec/ivi: Clear got_p_frame before decoding a new frame using it
avcodec/dsddec: Check channels
avcodec/xvididct: Fix integer overflow in idct_row()
avcodec/wmalosslessdec: Fix integer overflows in revert_inter_ch_decorr()
avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE
avformat/aadec: Check toc_size to contain the minimum to demuxer uses
avformat/mov: Don't allow negative sample sizes.
mpeg4videoenc: Don't crash with -fsanitize=bounds
avcodec/binkaudio: Fix 2Ghz sample_rate
avcodec/adpcm: Fix integer overflow in ADPCM THP
avcodec/ralf: Check num_blocks before use
avcodec/utvideodec: Fix integer overflow in decode_plane()
avcodec/ralf: Fix integer overflow in decode_block()
avcodec/nuv: widen buf_size type
avcodec/g729postfilter: Clip gain before scaling with AGC_FAC1
avformat/thp: Require a video stream
avformat/mpeg: Decrease score by 1 for files with very little valid data
avcodec/pngdec: Check length in fdAT
avcodec/g2meet: Check tile_width in epic_jb_decode_tile()
avcodec/vp9dsp_template: Fix integer overflows in idct32_1d()
libavcodec/wmalosslessdec: prevent sum of positive numbers from becoming negative
avcodec/txd: Check for input size against the header size.
avcodec/svq1dec: Check that there is data left after the header
avformat/mov: fix memleaks
libavformat/mov: Fix memleaks when demuxing DV audio
libavcodec/libvpxenc: Don't free user-provided AVPacket
avcodec/libopusenc: Don't free user-provided AVPacket
version 2.8.16:
- avcodec/hevc_mp4toannexb_bsf: Check nalu_size
- avcodec/iff: Check length before memcpy() in decode_deep_rle32()
- avcodec/iff: Fix invalid pointer intermediates in decode_deep_rle32()
- avcodec/rv40dsp: Fix integer overflows in rv40_weight_func_*()
- avcodec/ac3dec_fixed: Fix several invalid left shifts in scale_coefs()
- avcodec/flac_parser: Do not lose header count in find_headers_search()
- avcodec/audiodsp: Fix integer overflow in scalarproduct_int16_c()
- avformat/oggdec: Check for EOF after page header
- swscale/yuv2rgb: Fix vertical dither offset with slices
- avcodec/dpcm: clip exponent into supported range in XAN DPCM
- avcodec/flacdsp_template: Fix invalid shifts in decorrelate
- avcodec/xvididct: Fix integer overflow in MULT()
- avcodec/ffwavesynth: Correct undefined overflow of PINK_UNIT
- swscale/output: Fix integer overflow in yuv2rgb_write_full() with out of range input
- libavformat/amr.c: Check return value from avio_read()
- libavformat/mov.c: Free aes_decrypt to avoid leaking memory
- libavformat/oggdec.c: Check return value from avio_read()
- avformat/asfdec_f: Fix overflow check in get_tag()
- avformat/nsvdec: Fix memleaks on errors while reading the header
- avcodec/ffwavesynth: Fix integer overflow in computation of ddphi
- avcodec/mpeg12dec: Fix invalid shift in mpeg2_fast_decode_block_intra()
- avcodec/mpegaudioenc_template: fix invalid shift of sample
- avcodec/motion_est_template: Fix invalid shifts in no_sub_motion_search()
- avformat/mpegts: Improve the position determination for avpriv_mpegts_parse_packet()
- avformat/mvdec: Check stream numbers
- avcodec/pcm: Fix invalid shift in AV_CODEC_ID_PCM_LXF
- avcodec/qdm2: Check fft_coefs_index
- avformat/avidec: Avoid integer overflow in NI switch check
- avfilter/vf_aspect: Fix integer overflow in compute_dar()
- avcodec/apedec: Fix invalid shift with 24 bps
- avformat/utils: Fix undefined behavior in ff_configure_buffers_for_index()
- avcodec/wmalosslessdec: Fix loop in revert_acfilter()
- avcodec/lagarith: Sanity check scale
- avcodec/apedec: Fix integer overflows in predictor_decode_mono_3950()
- avcodec/ralf: Fix integer overflow in apply_lpc()
- avcodec/wmavoice: Fix rounding and integer anomalies in calc_input_response()
- avcodec/pcm: Fix invalid shift in pcm_decode_frame for LXF
- avcodec/snappy: Sanity check bytestream2_get_levarint()
- avcodec/mlpdsp: Fix a invalid shift in ff_mlp_rematrix_channel()
- avcodec/avdct: Clear IDCTDSPContext context
- avcodec/apedec: Fix undefined integer overflow in decode_array_0000()
- avcodec/smacker: Check space before decoding type
- avcodec/iff: Over-allocate ham_palbuf for HAM6 IFF-PBM
- avfilter/vf_find_rect: Remove assert
- avfilter/vf_find_rect: Increase worst case score
- swscale/input: Fix several invalid shifts related to rgb2yuv constants
- swscale/output: Fix several invalid shifts in yuv2rgb_full_1_c_template()
- swscale/swscale: Fix several invalid shifts related to vChrDrop
- avcodec/hevc_mp4toannexb_bsf: Avoid NULL memcpy()
- avcodec/wmalosslessdec: move channel check up
- avcodec/adpcm: Fix overflow in FFABS() IMA_EA_EACS
- avcodec/alac: Fix integer overflow in LPC coefficient adaption
- avcodec/g729postfilter: Optimize out overflowing multiplication from apply_tilt_comp()
- avcodec/vc1dec: Check field_mode for sprites
- avcodec/vc1dec: Limit bits by the actual bitstream size
- avcodec/vmdaudio: Check block_align more
- configure: bump year
- avcodec/pgssubdec: Free subtitle on error
- avcodec/ffwavesynth: Fix undefined overflow in wavesynth_synth_sample()
- avcodec/cook: Use 3 stage VLC decoding for channel_coupling
- 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/wmadec: Keep track of exponent initialization per channel
- avcodec/adpcm: Clip predictor for APC
- avcodec/targa: Check colors vs. available space
- 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/pnm: Check that the header is not truncated
- avcodec/mp3_header_decompress_bsf: Check sample_rate_index
- avcodec/apedec: Fix 2 integer overflows
- avcodec/wmaprodec: Set packet_loss when we error out on a sanity check
- avcodec/truemotion2: Fix 2 integer overflows in tm2_low_res_block()
- avformat/matroskadec: Fix default value of BlockAddID
- avcodec/utils: Check block_align
- avcodec/utils: Check sample_rate before opening the decoder
- 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()
- 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/apedec: Fixes integer overflow of res+*data in do_apply_filter()
- avcodec/sonic: Fix integer overflow in predictor_calc_error()
- lavc/tableprint_vlc: Remove avpriv_request_sample() from included files.
- 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/atrac3plus: Check split point in fill mode 3
- avcodec/wmavoice: Check sample_rate
- avcodec/apedec: Fix integer overflow in filter_3800()
- avcodec/ffv1dec: Use a different error message for the slice level CRC
- avcodec/apedec: Fix undefined integer overflow in long_filter_ehigh_3830()
- avcodec/snowenc: Fix 2 undefined shifts
- avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()
- avcodec/truemotion2: Fix several integer overflows in tm2_low_res_block()
- 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/vp5: Check render_x/y
- avcodec/ralf: Skip initializing unused filter variables
- 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/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
- avfilter/vf_geq: Use av_clipd() instead of av_clipf()
- 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/g2meet: Check for end of input in jpg_decode_block()
- avcodec/g2meet: Check if adjusted pixel was on the stack
- 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/g729_parser: Check block_size
- avcodec/aacdec: Check if we run out of input in read_stream_mux_config()
- avcodec/smacker: Fix integer overflow in signed int multiply in SMK_BLK_FILL
- avcodec/alac: fix undefined behavior with INT_MIN in lpc_prediction()
- avcodec/ffwavesynth: Fix integer overflow in timestamps
- avcodec/sunrast: Fix indention
- avcodec/sunrast: Fix return type for "unsupported (compression) type"
- avformat/cdxl: Fix integer overflow in intermediate
- avcodec/hevcdec: repeat character in skiped
- avcodec/alsdec: Check k from being outside what our implementation can handle
- 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: Fix multiple integer overflows in lpc_prediction()
- avcodec/rl2: set dimensions
- 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/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/vp56: Consider the alpha start as end of the prior header
- avcodec/4xm: Check for end of input in decode_p_block()
- avcodec/hnm4video: Optimize postprocess_current_frame()
- avcodec/hevc_refs: Optimize 16bit generate_missing_ref()
- 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/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
- 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()
- 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/vorbisdec: Check vlc for floor0 dec vector offset
- avcodec/vorbisdec: amplitude bits can be more than 25 bits
- avcodec/apedec: Fix various integer overflows
- avcodec/apedec: Fix multiple integer overflows in predictor_update_filter()
- 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
- avformat/utils: Check rfps_duration_sum for overflow
- 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/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/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: 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/apedec: Add k < 24 check to the only k++ case which lacks such a check
- avcodec/qdm2: Move fft_order check up
- avcodec/libvorbisdec: Check extradata size
- avcodec/videodsp_template: Fix overflow of addition
- 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/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/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/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
- avcodec/mjpegdec: Check for non ls PAL8
- 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
- libswcale: Fix possible string overflow in test.
- avcodec/hq_hqa: Check available space before reading slice offsets
- lavf/webm_chunk: Respect buffer size
- avcodec/jvdec: Use ff_get_buffer() when the content is not reused
- avcodec/truemotion2: Fix 2 integer overflows in tm2_update_block()
- avcodec/aacdec_fixed: Fix undefined shift in noise_scale()
- avutil/avstring: Fix bug and undefined behavior in av_strncasecmp()
- 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/hevcdec: Avoid only partly skiping duplicate first slices
- lavc/bmp: Avoid a heap buffer overwrite for 1bpp input.
- avcodec/truemotion2: Fix integer overflow in tm2_null_res_block()
- avcodec/dfa: Check the chunk header is not truncated
- avcodec/dvbsubdec: Check object position
- avcodec/cdgraphics: Use ff_set_dimensions()
- avcodec/qpeg: Limit copy in qpeg_decode_intra() to the available bytes
- avcodec/aic: Check remaining bits in aic_decode_coeffs()
- avcodec/bethsoftvideo: Check block_type
- avcodec/jpeg2000dwt: Fix integer overflow in dwt_decode97_int()
- avcodec/error_resilience: Use a symmetric check for skipping MV estimation
- avcodec/mlpdec: Insuffient typo
- avcodec/jvdec: Check available input space before decode8x8()
- avformat/webmdashenc: Check id in adaption_sets
- avformat/http: Fix Out-of-Bounds access in process_line()
- avformat/ftp: Fix Out-of-Bounds Access and Information Leak in ftp.c:393
- avformat/mov.c: require tfhd to begin parsing trun
- avcodec/pgssubdec: Check for duplicate display segments
- avformat/rtsp: Check number of streams in sdp_parse_line()
- avformat/rtsp: Clear reply in every iteration in ff_rtsp_connect()
- avcodec/fic: Check that there is input left in fic_decode_block()
- avutil/mem: Optimize fill32() by unrolling and using 64bit
- configure: bump year
- avcodec/4xm: Fix returned error codes
- avcodec/mjpegbdec: Fix some misplaced {} and spaces
- avformat/wvdec: detect and error out on WavPack DSD files
- avcodec/mips: Fix failed case: hevc-conformance-AMP_A_Samsung_* when enable msa
- avcodec/fic: Fail on invalid slice size/off
- postproc/postprocess_template: Avoid using %4 for the threshold compare
- avcodec/mjpegdec: Fix indention of ljpeg_decode_yuv_scan()
- lavf/id3v2: fail read_apic on EOF reading mimetype
- avformat/nutenc: Document trailer index assert better
- lavf/mov: ensure only one tkhd per trak
- avcodec/msvideo1: Check for too small dimensions
- avcodec/wmv2dec: Skip I frame if its smaller than 1/8 of the minimal size
- avcodec/msmpeg4dec: Skip frame if its smaller than 1/8 of the minimal size
- avcodec/truemotion2: fix integer overflows in tm2_low_chroma()
- avutil/mem: Fix invalid use of av_alloc_size
- avcodec/hevcdec: decode at most one slice reporting being the first in the picture
- avfilter/af_silenceremove: fix possible crash if supplied duration is negative
- avcodec/pngdec: Check compression method
- avcodec/shorten: Fix integer overflow with offset
- avcodec/cavsdec: Propagate error codes inside decode_mb_i()
- avcodec/mpegaudio_parser: Consume more than 0 bytes in case of the unsupported mp3adu case
- avformat/flvenc: Check audio packet size
- avutil/integer: Fix integer overflow in av_mul_i()
- avcodec/msrle: Check that the input is large enough to contain a end of picture code
- avcodec/jpeg2000dec: Fix off by 1 error in JPEG2000_PGOD_CPRL handling
- avcodec/mpeg4videodec: Fix typo in sprite delta check
- avcodec/h264_cavlc: Check mb_skip_run
- avcodec/ra144: Fix integer overflow in add_wav()
- avformat/utils: Never store negative values in last_IP_duration
- avformat/utils: Fix integer overflow in discontinuity check
- avcodec/unary: Improve get_unary() docs
- avcodec/dvdsubdec: Sanity check len in decode_rle()
- avcodec/mpeg4videodec: Fix undefined shift in get_amv()
- avcodec/zmbv: Check that the decompressed data size is correct
- avcodec/zmbv: Update decomp_len in raw frames
- avcodec/shorten: Fix bitstream end check in read_header()
- avcodec/dvdsubdec: Avoid branch in decode_run_8bit()
- avcodec/h264_refs: Document last if() in ff_h264_execute_ref_pic_marking()
- avcodec/ra144: Fix undefined integer overflow in add_wav()
- avcodec/hq_hqa: Check remaining input bits in hqa_decode_mb()
- avcodec/vb: Check for end of bytestream before reading blocktype
- avcodec/snowdec: Fix integer overflow with motion vector residual
- avformat/nsvdec: Do not parse multiple NSVf
- avformat/mlvdec: read_string() received unsigned size, make the argument unsigned
- avcodec/shorten: Fix integer overflow in residual/LPC combination
- avcodec/shorten: Check verbatim length
- avcodec/mpegaudio_parser: Initialize poutbuf*
- avcodec/qtrle: Check remaining bytestream in qtrle_decode_XYbpp()
- avcodec/diracdec: Change frame_number to 64bit as its a 32bit from the bitstream and we also have a -1 special case
- avcodec/diracdec: Prevent integer overflow in intermediate in global_mv()
- swresample/swresample: Fix input channel count in resample_first computation
- avutil/pixfmt: Document chroma plane size for odd resolutions
Version 48.0.0 "Sick Of Losing Soulmates" 2020-06-27
New features and enhancements
* mkvmerge: AC-3: file identification will report AC-3 tracks encoded in Dolby
Surround EX as codec "AC-3 Dolby Surround EX".
* MKVToolNix GUI: multiplexer: on new installations the GUI will now recognize
all known ISO 639-2 language codes in file names by default instead of only
the top 100 of languages by native speakers.
* MKVToolNix GUI: multiplexer: on new installations the list of "often used
languages" will by default only contain certain agnostic ones ("multiple
languages", "no linguistic content", "reserved for local use", "uncoded
languages"), "English" and the default user interface language. The "list of
spoken languages by native speaks" isn't used anymore.
* MKVToolNix GUI: header editor: added an option to remove all attachments to
the tree context menu.
* MKVToolNix GUI: while the GUI is running it will remember the last page that
was selected when the preferences dialog is closed. Upon re-opening the
preferences that page will be selected by default.
Bug fixes
* mkvmerge: fixed a segmentation fault when exiting prematurely due to write
errors such as the destination having run out of space.
* mkvmerge: DTS: fixed wrong channel count for DTS tracks with XCh
extensions.
* mkvmerge: MPEG TS reader: fixed detecting h.264/AVC and h.265/HEVC tracks
that consist of only a single frame.
* mkvmerge: MPEG TS reader: fixed handling of unbounded PES sizes for tracks
that consist of only a single PES packet.
* mkvmerge: MPEG TS reader: PGS subtitle tracks are now exempt from the
"detect bogus subtitle timestamps" heuristic which could lead to some PGS
subtitles not being timestamped correctly. Symptoms were that they were
shown at the wrong time or that they were shown indefinitely.
* mkvmerge: MPEG TS reader: when reading MPLS playlists the start timestamps
of a play items were handled wrong: all the timestamps of packets read were
compared to that start timestamp, dropping those packets whose timestamps
were smaller than the play item's start timestamp. The correct behavior is
to accept all packets as soon as the first one with a timestamp equal to or
larger than the play item's start timestamp is encountered. This could
result in PGS subtitle entries located right at the start of the play item
being garbled/lost as they consist of multiple PES packets for which some
timestamps are often slightly smaller.
* mkvmerge: MPEG TS reader: when reading MPLS playlists mkvmerge will no
longer read the whole M2TS files they reference, processing only the packets
lying inside the timestamp range given by the playlists's play item's start
& end timestamps. Instead mkvmerge will use the index information present in
corresponding clip information (CLPI) files in order to seek to the nearest
file position of the play item's start timestamp. Additionally mkvmerge will
simply stop processing a file once the end timestamp is seen. This change
greatly speeds up processing files from which only small portions must be
read.
* mkvmerge: WavPack: fixed support for files created by v5 of the
program. Checksums, DSD audio data and non-standard sampling rates are
handled correctly. Patch by David Bryant.
* MKVToolNix GUI: multiplexer: fixed the cursor being positioned wrong after
entering or pasting characters that aren't allowed in file names into the
"destination file" control.
Build system changes
* libEBML v1.4.0 and libMatroska v1.6.0 are now required.
Other changes
* The source code repository's main development branch was renamed to `main`.
Released v1.6.0.
* libEBML v1.4.0 is now required.
* Due to breaking ABI the soname version has been bumped to 7.0.0.
* Default symbol visibility is now "hidden", reducing binary size.
* Converted some things pointed out by cppcheck & clang-tidy to
C++11.
* Fixed a lot of issues pointed out by clang-tidy.
* A C++11 compliant compiler is now required. Several of its
features are now used in the source.
* "KaxCueData" class: added "PositionSet" overrides taking
"KaxSimpleBlock" arguments.
* "KaxSeekHead" class: the "IndexThis" function now returns a
pointer to the newly allocated "KaxSeek" instance.
* "KaxBlockData" class: the "SetReferencedTimecode" function is
now public.
* Fixed classes for updates in the current specification:
KaxTrackTimecodeScale (can be written again), TimeSlice,
SliceLaceNumber, TrackAttachmentLink (these cannot be written
anymore), KaxContentEncAlgo (it's mandatory), KaxChapLanguageIETF
(can occur multiple times), KaxFileUsedStartTime,
KaxFileUsedEndTime (DivX-related elements, cannot be written
anymore)
* Added classes for new elements from the current specification:
KaxBlockAdditionMapping, KaxBlockAddIDValue, KaxBlockAddIDName,
KaxBlockAddIDType, KaxBlockAddIDExtraData,
KaxContentEncAESSettings, KaxContentEncAESSettings.
* The MATROSKA_VERSION pre-processor definition has been
removed. You used to be able toe restrict compiling with only
those classes for elements contained in Matroska v1, but that
hasn't worked since 2010, so… yeah.
* Build system: more fixes for building libMatroska as a DLL on
Windows wrt. symbol visibility.
Seems to resolve text relocation issues on aarch64.
Thanks to an upstream commit fixing the exact problem we're having
(on Linux...) from 2014 for the hint...
Bump PKGREVISION.
Seems to resolve text relocation issues on aarch64.
Thanks to an upstream commit fixing the exact problem we're having
(on Linux...) from 2014 for the hitn...
Bump PKGREVISION.
Upstream announcement:
https://helpx.adobe.com/security/products/flash-player/apsb20-30.html
Adobe Security Bulletin
Security Bulletin for Adobe Flash Player | APSB20-30
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.
This version adds support for low resolution Preview Scaling and adds a
module based on the Rubber Band Library for audio pitch-shifting.
patches to build with qt5.15
Version 47.0.0 "Black Flag"
New features and enhancements
* mkvmerge: chapters: mkvmerge can now read chapters from DVDs if the user
specifies the path to a DVD folder structure via the `--chapters …`
parameter. By default chapters from the first title will be imported. This
can be changed by append `:<title number>` to the file/directory name in the
`--chapters …` argument, e.g. `--chapters /srv/dvds/BigBuckBunny/VIDEO_TS:3`
This feature requires mkvmerge to have been built with the `libdvdread`
library.
* mkvmerge: added `--engage append_and_split_flac` that enables mkvmerge to
append and split FLAC tracks, restoring pre-v45 behavior. The resulting
tracks will be broken: the official FLAC tools will not be able to decode
them and seeking will not work as expected.
* MKVToolNix GUI: multiplexer: added support for mkvmerge's new support for
reading chapters from DVDs if both have been built with the `libdvdread`
library.
* MKVToolNix GUI: multiplexer: when deriving languages from file names the GUI
will now look for simplified language names instead of the full ones
(e.g. instead of looking for "Greek, Modern (1453-)" it would simply look
for "Greek").
* MKVToolNix GUI: multiplexer: the options in the "additional command-line
options" dialog are now sorted alphabetically. Additionally the
`--append-mode` option has been added as one of the only missing global
options.
* MKVToolNix GUI: chapter editor: the chapter editor can now read chapters
from DVDs if MKVToolNix has been build with the `libdvdread` library.
* MKVToolNix GUI: header editor: added an option in the preferences for
displaying all date & time values in UTC instead of the local time
zone.
Bug fixes
* all: fixed a crash when using the `MTX_LOGGER=file` syntax for logging debug
messages without specifying a file name to log to. It will now log to a file
called `mkvtoolnix-debug.log` in the system's default temporary directory,
as initially intended.
Build system changes
* The [`libdvdread`](https://www.videolan.org/developers/libdvdnav.html)
library will be used if found via `pkg-config`. If it is found, support for
reading chapters from DVDs will be enabled in `mkvmerge` and the MKVToolNix
GUI.
* Boost's Date/Time, Lexical Cast, Range, Range Adaptors, Tri-Bool, Variant
libraries are not used anymore.
* MKVToolNix now requires a C++ compiler & standard library that support the
following features of the C++17 standard: "`std::variant`", "`std::gcd`".
For the GNU Compiler Collection (gcc) this means v7 or newer; for clang it
means v4 or newer — the same versions required by earlier MKVToolNix
versions.
* MKVToolNix now requires version 6.1.0 of fmtlib or later for the
`fmt::to_string` function and bugfixes to the formatting of floating point
numbers. If a system-wide version is installed that's older, the bundled
copy will be used.
* The bundled version of fmtlib has been updated to release 6.2.1.
multimedia/ffmpeg4 does not need -std=gnu99, only ffplay4 does.
Since mk/compiler.mk is protected by a multiple-inclusion guard, any
later assignment to USE_LANGUAGES has no effect except being confusing.
The additional languages show up in "bmake show-var" but at the point of
evaluation, they had not been set yet.
This can be detected by several pkgsrc tools:
pkglint says:
WARN: ../../multimedia/ffmpeg4/Makefile.common:14: Modifying
USE_LANGUAGES after including ../../mk/compiler.mk has no effect.
Adding a manual check to mk/compiler.mk results in:
bmake[1]: "mk/compiler.mk" line 273: warning:
For multimedia/ffmpeg4, only languages "c" are used,
the others in "c99" were defined too late.
Making the variable USE_LANGUAGES read-only after including
mk/compiler.mk results in:
bmake[1]: "multimedia/ffmpeg4/Makefile.common" line 14:
Read-only USE_LANGUAGES cannot be set
(The latter two checks are not yet in the official pkgsrc tree.)
Version 3.4
New features
------------
Edge-aware quadtree partitioning to terminate CU depth recursion based on edge information. --rskip level 2 enables the feature and --rskip-edge-threshold denotes the minimum expected edge-density percentage within the CU, below which the recursion is skipped. Experimental feature.
Application-level feature --abr-ladder for automating efficient ABR ladder generation. Shows ~65% savings in the over-all turn-around time required for the generation of a typical Apple HLS ladder in Intel(R) Xeon(R) Platinum 8280 CPU @ 2.70GHz over a sequential ABR-ladder generation approach that leverages save-load architecture.
Enhancements to existing features
---------------------------------
Improved efficiency in 2-pass rate-control algorithm. The savings in the bitrate is ~1.72% with visual improvement in quality in the initial 1-2 secs.
Encoder enhancements
--------------------
Faster ARM64 encodes enabled by ASM contributions from Huawei. The speed-up over no-asm version for 1080p encodes @ medium preset is ~15% in a 16 core H/W.
Strict VBV conformance in zone encoding.
Bug fixes
---------
Multi-pass encode failures with --frame-dup.
Corrupted bitstreams with --hist-scenecut when input depth and internal bit-depth differ.
Incorrect analysis propagation in multi-level save-load architecture.
Failure in detecting NUMA packages installed in non-standard directories.
If {PKG_SYSCONFDIR} = /etc then this substitution
's,/etc/ffserver.conf,${PKG_SYSCONFDIR}/ffserver.conf,g'
results in a noop, which is rejected - so allow.
version 4.2.3
- avcodec/pnmdec: Use unsigned for maxval rescaling
- avcodec/ivi: Clear got_p_frame before decoding a new frame using it
- avcodec/dsddec: Check channels
- avcodec/xvididct: Fix integer overflow in idct_row()
- avcodec/wmalosslessdec: Fix integer overflows in revert_inter_ch_decorr()
- avcodec/cbs_jpeg: Fix infinite loop in cbs_jpeg_split_fragment()
- avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE
- avformat/swfenc: Fix integer overflow in frame rate handling
- avformat/aadec: Check toc_size to contain the minimum to demuxer uses
- avcodec/cbs_h265_syntax_template: Limit num_long_term_pics more strictly
- ffplay: set stream_index to -1 earlier to prevent segfault
- avformat/mov: Free temp buffer upon negative sample_size error.
- avformat/matroskadec: Improve forward compability
- avformat/matroskadec: Don't discard valid packets
- avformat/matroskaenc: Don't segfault when seekability changes
- avformat/utils: Fix memleaks
- avformat/utils: Fix memleaks in avformat_open_input()
- avfilter/vf_dedot: Fix leak of AVFrame if making it writable fails
- avfilter/vf_paletteuse: Fix potential double-free of AVFrame
- avformat/mov: Don't leak MOVFragmentStreamInfo on error
- avformat/mov: Free encryption data on error
- fftools/ffmpeg: Free swresample dictionary during cleanup
- avcodec/mediacodec_wrapper: fix {input,output}_buffers global reference leak
- avformat/webm_chunk: Close IO if writing header fails
- avcodec/cavsdsp: Fix undefined left shifts of negative numbers
- avcodec/ra144enc: Fix invalid left shift of negative number
- avcodec/adxenc: Avoid undefined left shift of negative numbers
- avcodec/adpcm: Fix undefined left shifts of negative numbers
- avcodec/proresenc_anatoliy: Fix invalid left shift of negative number
- avformat/aviobuf: Honor avio_open[2] documentation
- avcodec/cinepakenc: Fix invalid shifts
- avfilter/vf_xbr: Fix left shift of negative number
- avfilter/vf_hqx: Fix undefined left shifts of negative numbers
- avcodec/jpeg2000dwt: Fix undefined shifts of negative numbers
- avcodec/ituh263dec: Fix undefined left shift of negative number
- avcodec/dnxhdenc: Fix undefined left shifts of negative numbers
- swscale/utils: Fix invalid left shifts of negative numbers
- swscale/x86/swscale: Fix undefined left shifts of negative numbers
- fftools/ffmpeg_opt: Fix signed integer overflow
- avcodec/exr: Fix undefined left shifts of negative numbers
- avformat/movenc: Fix undefined shift
- avcodec/pcm: Fix undefined shifts
- avcodec/wavpackenc: Fix undefined shifts
- avutil/encryption_info: Don't pass NULL to memcpy
- avcodec/ac3enc: Fix memleak
- avcodec/ac3enc: Fix invalid shift
- avcodec/g723_1dec: Fix invalid shift
- avcodec/tdsc: Fix undefined shifts
- avcodec/ttaenc: Fix undefined shift
- avformat/avidec: Fix memleak with embedded GAB2 subtitles
- avformat/matroskadec: Don't discard the upper 32bits of TrackNumber
- dump_extradata: Insert extradata even for small packets
- avformat/segafilmenc: Fix undefined left shift of 1 by 31 places
- avformat/wtvdec: Fix memleak when reading header fails
- avformat/dashenc: Fix leak of AVFormatContext on error
- avformat/fitsdec: Fix potential leak of string in AVBPrint
- avformat/matroskadec: Sanitize SeekHead entries
- avformat/matroskaenc: Fix memleak upon encountering bogus chapter
- avformat/matroskaenc: Make ebml_num_size() more robust
- avformat/oggenc: Don't free AVStream's priv_data, fix memleak
- avformat/utils: Fix memleak when decoding subtitle in find_stream_info
- fftools/ffmpeg_opt: Check attachment filesize
- avformat/mpeg: Don't use unintialized value
- avformat/webmdashenc: Check codec types
- avformat/webmdashenc: Fix memleak upon realloc failure
- avformat/subtitles: Don't increment packet counter prematurely
- avformat/bethsoftvid: Fix potential memleak upon reallocation failure
- avformat/smoothstreaming: Fix memleaks on errors
- avformat/matroskaenc: Check BlockAdditional size before use
- avformat/matroskaenc: Check functions that can fail
- avformat/matroskaenc: Check for reformatting errors
- avformat/matroskadec: Check before allocations
- avfilter/vf_unsharp: Don't dereference NULL
- avcodec/zmbvenc: Correct offset in buffer
- avcodec/cbs_h2645: Fix potential out-of-bounds array access
- avformat/mov: Don't allow negative sample sizes.
- mpeg4videoenc: Don't crash with -fsanitize=bounds
- avformat/mpegts: Shuffle avio_seek
- avcodec/binkaudio: Fix 2Ghz sample_rate
- avcodec/adpcm: Fix integer overflow in ADPCM THP
- avcodec/ralf: Check num_blocks before use
- avcodec/iff: Test video_size being non zero
- avcodec/utvideodec: Fix integer overflow in decode_plane()
- avcodec/ttadsp: Fix several integer overflows in tta_filter_process_c()
- avcodec/ralf: Fix integer overflow in decode_block()
- avcodec/nuv: widen buf_size type
- avcodec/iff: Fix several integer overflows
- avcodec/g729postfilter: Clip gain before scaling with AGC_FAC1
- avcodec/alac: Fix integer overflow with 24/20bps samples
- avcodec/dstdec: Check sample rate
- avformat/thp: Require a video stream
- avformat/mpeg: Decrease score by 1 for files with very little valid data
- avcodec/pngdec: Check length in fdAT
- avcodec/g2meet: Check tile_width in epic_jb_decode_tile()
- avcodec/hapdec: Check tex_size more strictly and before using it
- avcodec/vp9dsp_template: Fix integer overflows in idct32_1d()
- avcodec/alacdsp: Fix invalid shift in append_extra_bits()
- libavcodec/wmalosslessdec: prevent sum of positive numbers from becoming negative
- avcodec/dstdec: Fix integer overflow in read_table()
- avcodec/txd: Check for input size against the header size.
- avcodec/svq1dec: Check that there is data left after the header
- avcodec/cbs_h265_syntax_template: Check num_negative/positive_pics when inter_ref_pic_set_prediction_flag is set
- avcodec/intrax8: Check for end of bitstream in ff_intrax8_decode_picture()
- avcodec/hevc_mp4toannexb_bsf: Check nalu_size
- avcodec/iff: Check length before memcpy() in decode_deep_rle32()
- avcodec/iff: Fix invalid pointer intermediates in decode_deep_rle32()
- avcodec/pngdec: Pass ret from decode_iccp_chunk()
- avcodec/rv40dsp: Fix integer overflows in rv40_weight_func_*()
- avcodec/ac3dec_fixed: Fix several invalid left shifts in scale_coefs()
- avcodec/flac_parser: Do not lose header count in find_headers_search()
- avcodec/audiodsp: Fix integer overflow in scalarproduct_int16_c()
- avcodec/cbs_jpeg_syntax_template: Check array index in huffman_table()
- avcodec/cbs_jpeg_syntax_template: Check table index before use in dht()
- avformat/oggdec: Check for EOF after page header
- swscale/yuv2rgb: Fix vertical dither offset with slices
- avcodec/dpcm: clip exponent into supported range in XAN DPCM
- avcodec/flacdsp_template: Fix invalid shifts in decorrelate
- avcodec/xvididct: Fix integer overflow in MULT()
- avcodec/ffwavesynth: Correct undefined overflow of PINK_UNIT
- avcodec/cbs_h264_syntax_template: fix off by 1 error with slice_group_change_cycle
- swscale/output: Fix integer overflow in yuv2rgb_write_full() with out of range input
- swscale/output: Fix integer overflow in alpha computation in yuv2gbrp16_full_X_c()
- libavformat/amr.c: Check return value from avio_read()
- libavformat/mov.c: Free aes_decrypt to avoid leaking memory
- libavformat/oggdec.c: Check return value from avio_read()
- avformat/asfdec_f: Fix overflow check in get_tag()
- avformat/nsvdec: Fix memleaks on errors while reading the header
- avcodec/ffwavesynth: Fix integer overflow in computation of ddphi
- avcodec/cbs_jpeg: Check length for SOS
- avcodec/adpcm: Fix invalid shift in AV_CODEC_ID_ADPCM_PSX
- avcodec/mpeg12dec: Fix invalid shift in mpeg2_fast_decode_block_intra()
- avcodec/cbs_h2645: Treat slices without data as invalid
- avcodec/cbs_h2645: Remove dead code to delete trailing zeroes
- avcodec/cbs_av1_syntax_template: Set seen_frame_header only after successfull uncompressed_header()
- avcodec/mpegaudioenc_template: fix invalid shift of sample
- avcodec/motion_est_template: Fix invalid shifts in no_sub_motion_search()
- libavformat/avienc: Check bits per sample for PAL8
- avformat/mpegts: Improve the position determination for avpriv_mpegts_parse_packet()
- avcodec/magicyuv: Check that there are enough lines for interlacing to be possible
- avformat/mvdec: Check stream numbers
- avcodec/pcm: Fix invalid shift in AV_CODEC_ID_PCM_LXF
- avcodec/qdm2: Check fft_coefs_index
- avformat/utils: Fix integer overflow with complex time bases in avformat_find_stream_info()
- avformat/avidec: Avoid integer overflow in NI switch check
- fftools/ffmpeg: Fix integer overflow in duration computation in seek_to_start()
- avfilter/vf_aspect: Fix integer overflow in compute_dar()
- avcodec/apedec: Fix invalid shift with 24 bps
- avformat/utils: Fix undefined behavior in ff_configure_buffers_for_index()
- avcodec/dpcm: Fix integer overflow in AV_CODEC_ID_GREMLIN_DPCM
- avcodec/wmalosslessdec: Fix integer overflow with sliding in padding bits
- avcodec/wmalosslessdec: Fix loop in revert_acfilter()
- avcodec/agm: YUV420 without DCT needs even dimensions
- avcodec/agm: Test remaining data in decode_raw_intra_rgb()
- avcodec/lagarith: Sanity check scale
- avcodec/apedec: Fix integer overflows in predictor_decode_mono_3950()
- avcodec/ralf: Fix integer overflow in apply_lpc()
- avcodec/dca_lbr: Fix some error codes and error passing
- avcodec/wmavoice: Fix rounding and integer anomalies in calc_input_response()
- avcodec/wmavoice: sanity check block_align
- avcodec/pcm: Fix invalid shift in pcm_decode_frame for LXF
- avcodec/snappy: Sanity check bytestream2_get_levarint()
- avcodec/mlpdsp: Fix a invalid shift in ff_mlp_rematrix_channel()
- avcodec/avdct: Clear IDCTDSPContext context
- avcodec/x86/diracdsp: Fix high bits on Windows x86_64
- tests/fate/lavf-video.mak: fix fate-lavf-gif dependencies
- avformat/mov: Check STCO location
- avcodec/wmalosslessdec: Fix multiple integer overflows
- avcodec/apedec: Fix undefined integer overflow in decode_array_0000()
- avcodec/smacker: Check space before decoding type
- avcodec/rawdec: Use linesize in b64a
- avcodec/iff: Over-allocate ham_palbuf for HAM6 IFF-PBM
- avcodec/x86/diracdsp: Fix incorrect src addressing in dequant_subband_32()
- avfilter/vf_find_rect: Remove assert
- avfilter/vf_find_rect: Increase worst case score
- swscale/input: Fix several invalid shifts related to rgb2yuv constants
- swscale/output: Fix several invalid shifts in yuv2rgb_full_1_c_template()
- swscale/swscale: Fix several invalid shifts related to vChrDrop
- avcodec/hevc_mp4toannexb_bsf: check that nalu size doesnt overflow
- avcodec/hevc_mp4toannexb_bsf: Avoid NULL memcpy()
- avcodec/cbs_av1: Check leb128 values read
- avcodec/wmalosslessdec: move channel check up
- avcodec/cbs_h2645: Skip all 0 NAL units
- avcodec/adpcm: Fix overflow in FFABS() IMA_EA_EACS
- avcodec/alac: Fix integer overflow in LPC coefficient adaption
- avcodec/g729postfilter: Optimize out overflowing multiplication from apply_tilt_comp()
- avcodec/vc1dec: Check field_mode for sprites
- avcodec/vc1dec: Limit bits by the actual bitstream size
- avcodec/vmdaudio: Check block_align more
- configure: bump year
- avcodec/pgssubdec: Free subtitle on error
- avcodec/nvenc: use framerate if available
- avcodec/cbs_h265: fix writing extension_data bits
- avcodec/nvenc: offset dts to account for b-frame reordering
- Revert "avformat/rtp: Pass sources and block filter addresses via sdp file for rtp"
- avformat/matroskadec: Fix default value of BlockAddID
- avformat/dashdec: Don't allocate and leak strings that are never used
- avformat/matroskaenc: Write level 1 elements in one go
- avformat/rtp: Pass sources and block filter addresses via sdp file for rtp
- avformat/bintext: avoid division by zero
this unexpectedly increased the major version of a shared object.
not sure if anything in pkgsrc actually uses that shared object, but
being safe (and leot requested this (:)
SFML is a free multimedia C++ API that provides you low and high level access to
graphics, input, audio, etc.
This package contains the C++ language bindings of SFML.
These packages are susceptible to bugs when confronted with non-ASCII
characters.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94182.
It takes some time to analyze and fix these individually, therefore they
are only marked as "needs work".
Version 0.4.1
-------------
- Added warning for Wayland users.
- Internal error messages from FFmpeg and other libraries are now shown in the log window.
- Fixed blocked continue button after selecting a window.
Version 0.4.0
-------------
- Added high-DPI monitor support.
- Added option to skip the welcome screen.
- Increased maximum video size to 20000x20000.
- Added more command-line options.
- Added recording schedule.
- Add command-line control over stdin.
- Many bugfixes.
Changes since 1.3.6:
* Fix for a regression in initializing the Inter matrix with MPEG
Quantization
Changes since 1.3.5:
* Fix for various, long-standing and potentially critical security
vulnerabilities in the decoder (credit to OSS-Fuzz)
* Always use .text sections in nasm code for macho target
Changes since 1.3.4:
* AmigaOS build patch by Fredrik Wikstrom
* Support for applevel multithreading mode also for AVI output in
xvid_encraw
* Set interlacing flag in decoder correctly
0.6.0:
Order DATERANGE x-s predictably
EXT-X-GAP support
Added ability for extra parameters to be passed to Key class
Add DATERANGE tag support
Add support for EXT-X-PRELOAD-HINT
Version 46.0.0 "No Deeper Escape"
New features and enhancements
* mkvmerge: when splitting, the placeholder `%c` can be used in the
destination file name. It'll be replaced by the name of the first chapter in
the file.
* mkvmerge: when reading MPLS playlists mkvmerge will include a tag named
`SOURCE_ID` in the track's statistics tags that conveys the fact that the
source was a Blu-ray and what the track's ID was in the source
container. When reading Matroska file existing `SOURCE_ID` tags will be
kept. The format used is the same format MakeMKV uses.
* mkvmerge: for audio-only files mkvmerge will now write a cue entry every
500ms instead of every 2s.
* MKVToolNix GUI: job actions: split up the option "execute when the job
finishes successfully or with warnings" into two separate options: "…when
finishes successfully" and "…when exits with warnings".
Bug fixes
* mkvmerge: Matroska reader: when regenerating UIDs for chapters mkvmerge will
now fix referencing tag chapter UID targets to have the same values.
* mkvmerge: MP4 reader: fixed a crash that could potentially happen while
trying to identify H.265/HEVC tracks.
* mkvmerge: MP4 reader: when reading H.265/HEVC tracks without a frame offset
table (`ctts` atom) present, mkvmerge did not parse the `hevcC` structure
correctly in certain cases, causing no video frames to be output at all or
the output not being playable.
* mkvmerge: MPLS handling/MPEG TS reader: timestamp restrictions as given in
an MPLS file were only honored for the first play item, not for subsequent
play items. For those play items the whole referenced file was always
copied.
* mkvmerge: MPLS handling/MPEG TS reader: under certain circumstances mkvmerge
copied one frame too many before switching to the next play item.
* mkvmerge: for audio-only files cues will only be created for I frames
(important for e.g. TrueHD where decoding can only start on a sync
frame).
* MKVToolNix GUI: fixed a crash that happened when closing the preferences
after having closed at least one multiplexer tab.
* MKVToolNix GUI: macOS: changed the default of the "elide tab header labels"
feature introduced in v45 from "no" to "yes" to mirror how versions before
v45 behaved on macOS.
pkgsrc changes:
- for ruby-gilb2 and ruby-gobject-introspection gems,
handle generated source files that are no longer included
in distributed gem files by newly introduced GEM_KEEPBUILD
variable
Upstream changes (from NEWS):
== Ruby-GNOME 3.4.2: 2020-05-02
This is a follow-up release of 3.4.1.
=== Changes
==== Ruby/GLib2
* Improvements
* Add support for Ruby 2.8.
==== Ruby/GTK3
* Improvements
* (({Gtk::Widget#style_get_property})): Added a validation.
* Updated examples.
[GitHub#1318][GitHub#1319][GitHub#1320][GitHub#1321][GitHub#1322]
[GitHub#1323][GitHub#1324][GitHub#1325][GitHub#1326][GitHub#1327]
[GitHub#1328][GitHub#1329][GitHub#1330][GitHub#1331][GitHub#1332]
[GitHub#1353][GitHub#1354][GitHub#1355][GitHub#1391]
[Patch by kojix2]
* Fixes
* Fixed a typo.
[GitHub#1307][Patch by Ismail Arilik]
==== Ruby/GObjectIntrospection
* Improvements
* Changed to accept (({nil})) as a false value for boolean.
[GitHub#1305][Reported by Matijs van Zuijlen]
* Added support for UTF-8 (({GHashTable})) value.
* Added workaround for (({rsvg_handle_set_stylesheet()})).
* Fixes
* Fixed a bug that pointer struct isn't allocated correctly.
[GitHub#1315][Reported by Konrad Narewski]
==== Ruby/GtkSourceView4
* Improvements
* Added support for auto native package install on Ubuntu.
[GitHub#1309][Patch by Ismail Arilik]
* Added support for auto native package install on Debian GNU/Linux.
==== Ruby/VTE3
* Improvements
* (({Vte::Terminal#spawn})): Made options optional.
[GitHub#1333][Patch by kojix2]
* Updated README.
[GitHub#1335][Patch by kojix2]
==== Ruby/GdkPixbuf2
* Improvements
* Updated examples.
[GitHub#1336][GitHub#1337][GitHub#1338][GitHub#1339][GitHub#1340]
[GitHub#1341][GitHub#1342][GitHub#1343][GitHub#1344][GitHub#1347]
[GitHub#1348][GitHub#1349]
[Patch by kojix2]
* Updated README.
[GitHub#1346][Patch by kojix2]
==== Ruby/WebKit2GTK
* Fixes
* Fixed dependency check.
[GitHub#1351][Patch by kojix2]
==== Ruby/RSVG2
* Improvements
* Updated examples.
[GitHub#1357][Patch by kojix2]
[GitHub#1393][Patch by Jean-Christophe Le Lann]
=== Thanks
* Matijs van Zuijlen
* Ismail Arilik
* Konrad Narewski
* kojix2
* Jean-Christophe Le Lann
streamlink 1.4.1 (2020-04-24)
beardypig <beardypig@protonmail.com> (1):
build: include correct signing key: 0xE3DB9E282E390FA0
streamlink 1.4.0 (2020-04-22)
This will be the last release with support for Python 2, as it has finally reached its EOL at the beginning of this year.
Streamlink 1.4.0 comes with lots of plugin fixes/improvements, as well as some new features and plugins, and also a few plugin removals.
Notable changes:
New: low latency streaming on Twitch via --twitch-low-latency (#2513)
New: output HLS segment data immediately via --hls-segment-stream-data (#2513)
New: always show download progress via --force-progress (#2438)
New: URL template support for --hls-segment-key-uri (#2821)
Removed: Twitch auth logic, --twitch-oauth-token, --twitch-oauth-authenticate, --twitch-cookie (#2846)
Fixed: Youtube plugin (#2858)
Fixed: Crunchyroll plugin (#2788)
Fixed: Pixiv plugin (#2840)
Fixed: TVplayer plugin (#2802)
Fixed: Zattoo plugin (#2887)
Changed: set Firefox User-Agent HTTP header by default (#2795)
Changed: upgraded bundled FFmpeg to 4.2.2 in Windows installer (#2916)
Changes between 3.0.9.2 and 3.0.10:
----------------------------------
Misc:
* Update Twitch & VLSub scripts
Changes between 3.0.9.1 and 3.0.9.2:
----------------------------------
Misc:
* Properly bump the version in configure.ac
Changes between 3.0.9 and 3.0.9.1:
----------------------------------
Misc:
* Fix VLSub returning 401 for earch request
Changes between 3.0.8 and 3.0.9:
----------------------------------
Core:
* Work around busy looping when playing an invalid item through VLM
Access:
* Multiple dvdread and dvdnav crashs fixes
* Fixed DVD glitches on clip change
* Fixed dvdread commands/data sequence inversion in some cases causing
unwanted glitches
* Better handling of authored as corrupted DVD
* Added libsmb2 support for SMB2/3 shares
Demux:
* Fix TTML entities not passed to decoder
* Fixed some WebVTT styling tags being not applied
* Misc raw H264/HEVC frame rate fixes
* Fix adaptive regression on TS format change (mostly HLS)
* Fixed MP4 regression with twos/sowt PCM audio
* Fixed some MP4 raw quicktime and ms-PCM audio
* Fixed MP4 interlacing handling
* Multiple adaptive stack (DASH/HLS/Smooth) fixes
* Enabled Live seeking for HLS
* Fixed seeking in some cases for HLS
* Improved Live playback for Smooth and DASH
* Fixed adaptive unwanted end of stream in some cases
* Faster adaptive start and new buffering control options
Packetizers:
* Fixes H264/HEVC incomplete draining in some cases
* packetizer_helper: Fix potential trailing junk on last packet
* Added missing drain in packetizers that was causing missing
last frame or audio
* Improved check to prevent fLAC synchronization drops
Decoder:
* avcodec: revector video decoder to fix incomplete drain
* spudec: implemented palette updates, fixing missing subtitles
on some DVD
* Fixed WebVTT CSS styling not being applied on Windows/macOS
* Fixed Hebrew teletext pages support in zvbi
* Fixed Dav1d aborting decoding on corrupted picture
* Extract and display of all CEA708 subtitles
* Update libfaad to 2.9.1
* Add DXVA support for VP9 Profile 2 (10 bits)
* Mediacodec aspect ratio with Amazon devices
Audio output:
* Added support for iOS audiounit audio above 48KHz
* Added support for amem audio up to 384KHz
Video output:
* Fix for opengl glitches in some drivers
* Fix GMA950 opengl support on macOS
* YUV to RGB StretchRect fixes with NVIDIA drivers
* Use libpacebo new tone mapping desaturation algorithm
Text renderer:
* Fix crashes on macOS with SSA/ASS subtitles containing emoji
* Fixed unwanted growing background in Freetype rendering and Y padding
Mux:
* Fixed some YUV mappings
macOS:
* Use a layer based video output on 10.14 and higher, which should
fix various rendering issues where the vout would glitch between
a wrong size and the correct size.
Additionally this works around OpenGL issues with Macs that have a
dedicated NVIDIA GPU, which caused rendering artifacts in the whole
OS, especially when the "Reduce transparency" accessibility option
is used
* Remove qtsound module and add avaudiocapture module as replacement
* Fix audio capture on macOS Catalina by using avaudiocapture
* Inform the user in case OS permissions are missing for certain actions
* Fix Apple Remote support on macOS Catalina
* Add support for pausing Apple Music on macOS Catalina
* Fix UPnP discovery crash without an active network interface
* Fix rare placement issues with fullscreen panel
* Fix problem in audio output remembering the last device configuration
in digital mode
Service Discovery:
* Update libmicrodns to 0.1.2
Misc:
* Update YouTube, SoundCloud and Vocaroo scripts: this restores
playback of YouTube URLs.
* Add missing .wpl & .zpl file associations on Windows
* Improved chromecast audio quality
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.