- 25 May, 2020 7 commits
-
-
Andreas Rheinhardt authored
It avoids leaving dangling pointers behind in memory. Also remove redundant checks for whether the URLContext to be closed is already NULL. Reviewed-by: Anton Khirnov <anton@khirnov.net> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Mattias Wadman authored
Some flac muxers write truncated metadata picture size if the picture data do not fit in 24 bits. Detect this by truncting the size found inside the picture block and if it matches the block size use it and read rest of picture data. This workaround is only for flac files and not ogg files with flac METADATA_BLOCK_PICTURE comments and it can be disabled with strict level above normal. Currently there is a 500MB limit on truncate size to protect from large memory allocations. The truncation bug in lavf flacenc was fixed in e447a4d1 but based on existing broken files other unknown flac muxers seems to truncate also. Before the fix a broken flac file for reproduction could be generated with: ffmpeg -f lavfi -i sine -f lavfi -i color=red:size=2400x2400 -map 0:0 -map 1:0 -c:v:0 bmp -disposition:1 attached_pic -t 1 test.flac Fixes ticket 6333 Signed-off-by: Anton Khirnov <anton@khirnov.net>
-
Anton Khirnov authored
-
Anton Khirnov authored
-
Andreas Rheinhardt authored
ff_id3v2_parse_apic/chapters/priv/priv_dict all had a parameter extra_meta of type ID3v2ExtraMeta ** as if the functions wanted to make *extra_meta point to something else. But they don't, so just use an ID3v2ExtraMeta *. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Up until now, the ID3v2ExtraMeta structure (which is used when parsing ID3v2 tags containing attached pictures, chapters etc.) contained a pointer to separately allocated data that depended on the type of the tag. Yet the difference of the sizes of the largest and the smallest of these structures is fairly small, so that it is better to simply include a union of all the possible types of tag-dependent structures in ID3v2ExtraMeta. This commit implements this. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
If the write_id3v2 option is set, the aiff muxer would write id3v2 tags if there is global metadata or if there are attached pics to write. Chapters are ignored in this check that precedes writing id3v2 tags. Yet 47ac3449 added support for writing chapters as id3v2 tags, so one should check for the existence of chapters, too; otherwise the chapters would only be written in case there is global metadata or an attached pic. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
- 24 May, 2020 1 commit
-
-
James Almer authored
It's not a decoding exclusive function anymore. Signed-off-by: James Almer <jamrial@gmail.com>
-
- 23 May, 2020 32 commits
-
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Martin Storsjö authored
Just including icodecapi.h + codecapi.h apparently misses some bits, that MSVC doesn't complain about, but Clang does. Thus add a missing header to the custom hacky include path (required for keeping ICodecAPI visible when building in UWP mode, as it is intended to). The issue in Windows SDK headers about ICodecAPI availability in UWP/app mode has been reported upstream at https://developercommunity.visualstudio.com/content/problem/1037125/icodecapi-not-visible-when-compiling-in-uwp-mode.html, and later also filed in Feedback Hub (which can't be linked to externally). Signed-off-by: Martin Storsjö <martin@martin.st>
-
Lynne authored
This should significantly improve the performance with certain filterchains.
-
Lynne authored
-
Lynne authored
Otherwise custom vulkan device contexts won't work.
-
Lynne authored
This allows us to speed up only-uploading or only-downloading use cases.
-
Lynne authored
They're nothing special, and there's no reason they should always use the default flags.
-
Lynne authored
Some users may need special formats that aren't available when the STORAGE flag bit is set, which would result in allocations failing.
-
Lynne authored
This was never actually used, likely due to confusion, as the device context also had one used for uploads and downloads. Also, since we're only using it for very quick image barriers (which are practically free on all hardware), use the compute queue instead of the transfer queue.
-
Lynne authored
If an external pool was provided we skipped all of frames init, including the exec context.
-
Lynne authored
This commit makes full use of the enabled queues to provide asynchronous uploads of images (downloads remain synchronous). For a pure uploading use cases, the performance gains can be significant.
-
Lynne authored
Makes it easier to support multiple queues
-
Lynne authored
Some things like using ImageLists were from a really old version that still used multiplanar images.
-
Lynne authored
With this, the puzzle of making libplacebo, ffmpeg and any other Vulkan API users interoperable is complete. Users of both libraries can initialize one another's contexts without having to create a new one.
-
Lynne authored
This, along with the next patch, are the last missing pieces to being interoperable with libplacebo.
-
Lynne authored
This allows for users who derive devices to set options for the new device context they derive. The main use case of this is to allow users to enable extensions (such as surface drawing extensions) in Vulkan while deriving from the device their frames are on. That way, users don't need to write any initialization code themselves, since the Vulkan spec invalidates mixing instances, physical devices and active devices. Apart from Vulkan, other hwcontexts ignore the opts argument since they don't support options at all (or in VAAPI and OpenCL's case, options are currently only used for device selection, which device_derive overrides).
-
Lynne authored
The Xiph foundation never standardized either Daala nor its mapping in Ogg, and all files that were created are undecodable without knowledge of the git hash.
-
Nicolas George authored
-
Nicolas George authored
-
Nicolas George authored
-
Nicolas George authored
-
Nicolas George authored
Move the contents of all_channel_layouts.inc directly into libavfilter/tests/formats.c.
-
Nicolas George authored
-
Nicolas George authored
-
Andreas Rheinhardt authored
The description of AVOutputFormat.init contains the statement that "this method must not write output". Due to this, the webm_chunk muxer defers opening the AVIOContext for the child muxer until avformat_write_header(), i.e. there is no AVIOContext when the sub-muxer's avformat_init_output() is called. But this violates the documentation of said function which requires the AVFormatContext to have an already opened AVIOContext. This commit fixes this. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Andreas Rheinhardt authored
by storing s->streams[i] in a pointer instead of constantly using s->streams[i]->... Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-