- 27 7月, 2020 5 次提交
-
-
由 Haihao Xiang 提交于
hwcontext_vaapi maps different VA fourcc to the same pix_fmt for U/V plane swap cases, however duplicate formats are not expected in sw_format list when merging formats. For example: ffmpeg -loglevel debug -init_hw_device vaapi -filter_hw_device vaapi0 \ -f lavfi -i smptebars -vf \ "hwupload=derive_device=vaapi,scale_vaapi,hwdownload,format=yuv420p" \ -vframes 1 -f null - Without this fix, an auto scaler is required for the above command Duplicate formats in ff_merge_formats detected [auto_scaler_0 @ 0x560df58f4550] Setting 'flags' to value 'bicubic' [auto_scaler_0 @ 0x560df58f4550] w:iw h:ih flags:'bicubic' interl:0 [Parsed_hwupload_0 @ 0x560df58f0ec0] auto-inserting filter 'auto_scaler_0' between the filter 'graph 0 input from stream 0:0' and the filter 'Parsed_hwupload_0' Signed-off-by: NHaihao Xiang <haihao.xiang@intel.com>
-
由 Haihao Xiang 提交于
-
由 James Almer 提交于
This restores the relevant behavior of the function as it was before 3a8e9271. Signed-off-by: NJames Almer <jamrial@gmail.com>
-
由 James Almer 提交于
The size for a previous plane doesn't signal the presence of another after it. If the plane is present, av_image_fill_plane_sizes() will have returned a size for it. Fixes a regression since 3a8e9271. Reported-by: NImad R. Faiad <irfaiad@gmail.com> Signed-off-by: NJames Almer <jamrial@gmail.com>
-
由 Michael Niedermayer 提交于
Fixes: OOM Fixes: 24375/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-6216862443241472 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
- 26 7月, 2020 12 次提交
-
-
由 Andreas Rheinhardt 提交于
Up until now, the Sega FILM muxer would first write all the packet data, then shift the data (in the muxer's write_trailer function) by the amount necessary to write the header at the front (which entails a seek to the front), then seek back to the beginning and actually write the header. This commit changes this: The dynamic buffer that is used to write the sample table (containing information about each sample in the file) is now used to write the complete header. This is possible because the size of everything in the header except the sample table is known in advance. Said buffer can then be used as one of the two temporary buffers used for shifting which also reduces the amount one has to allocate for this. Thereby the header will be written when shifting, so that the second seek to the beginning is unnecessary. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Up until now, the Sega FILM muxer would store some information about each packet in a linked list. When writing the trailer, the information in said linked list would be used to write a table in the file header. Each entry in said table is 16 bytes long, but each entry of the linked list is 32 bytes long (assuming 64 bit pointer and no padding). Therefore it makes sense to remove the linked list and write the array entries directly into a dynamic buffer while writing the packet (this is possible because the table entries don't depend on any information not available when writing the packet (the offset is not relative to the beginning of the file, but to the end of the table). This also simplifies writing the array at the end (there is no need to traverse a linked list). Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Use avio_wb16() instead of avio_write() to write two zero bytes. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
daud_write_header() doesn't write anything. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Mostly using intermediate pointers for accesses (i.e. storing s->pb in a variable pb and then using pb for writing instead of s->pb) to improve readability. Furthermore, the opening brace '{' of a function has been moved into a line of its own in instances where it wasn't before. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Also return proper error codes when it is absent: AVERROR(EINVAL) instead of AVERROR_INVALIDDATA. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
When using the WebM DASH Manifest muxer, every stream of each adaptation set has to contain a metadata entry containing the filename of the source file. In case of live stream manifests, said filename has to conform to a pattern of <file_description>_<representation_id>.<extension>. These pieces are used to create the other strings that are actually output. Up until now, these other strings would be allocated, used once and then freed directly after usage. This commit changes this: The function that allocated and assembled these strings now returns pointers to the '_' and '.' delimiters and so that the caller can easily pick substrings from it without needing to copy the string. Avoiding allocations also fixes a memleak: One of the allocated strings would leak upon a subsequent allocation failure. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
by checking a bit earlier. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Gyan Doshi 提交于
In 1ec2b3de, the extradata size was affected when the raster was signaled as flipped due to user-set option rather than via extradata. This resulted in a wrong header size being written. Fixed.
-
- 25 7月, 2020 8 次提交
-
-
由 Limin Wang 提交于
Reviewed-by: NMichael Niedermayer <michael@niedermayer.cc> Signed-off-by: NLimin Wang <lance.lmwang@gmail.com>
-
由 Limin Wang 提交于
Reviewed-by: NMarton Balint <cus@passwd.hu> Signed-off-by: NLimin Wang <lance.lmwang@gmail.com>
-
由 Limin Wang 提交于
Reviewed-by: NMarton Balint <cus@passwd.hu> Signed-off-by: NLimin Wang <lance.lmwang@gmail.com>
-
由 Limin Wang 提交于
Reviewed-by: NMarton Balint <cus@passwd.hu> Signed-off-by: NLimin Wang <lance.lmwang@gmail.com>
-
由 Wang Cao 提交于
Signed-off-by: NWang Cao <wangcao@google.com> Signed-off-by: NJames Zern <jzern@google.com>
-
由 Wang Cao 提交于
Signed-off-by: NWang Cao <wangcao@google.com> Signed-off-by: NJames Zern <jzern@google.com>
-
由 Gautam Ramakrishnan 提交于
The codeblock decoder checks whether the mqc decoder has decoded the right number of bytes. However, this check does not account for the fact that the mqc encoder's flush routine adds 2 bytes of data which does not have to be read by the decoder. The check is modified to account for this. This patch solves issue #4827 Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Michael Niedermayer 提交于
Later the decorrelate_stereo call is guarded by channels == 2 and non-zero decorr_left_weight. Make sure decorr_shift is in the expected shift range for that case. Fixes: shift exponent 128 is too large for 32-bit type 'int' Fixes: 23860/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALAC_fuzzer-5751138914402304 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegReviewed-by: NAlexander Strasser <eclipse7@gmx.net> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
- 24 7月, 2020 8 次提交
-
-
由 Linjie Fu 提交于
This enables VAAPI encoding support for 422 10-bit(Y210). Signed-off-by: NLinjie Fu <linjie.justin.fu@gmail.com>
-
由 Mark Thompson 提交于
-
由 Andreas Rheinhardt 提交于
Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
The Matroska demuxer currently always opens a GetByteContext to read the content of the projection's private data buffer; it does this even if there is no private data buffer in which case opening the GetByteContext will lead to a NULL + 0 which is undefined behaviour. Furthermore, in this case the code relied both on the implicit checks of the bytestream2 API as well as on the fact that it returns zero if there is not enough data available. Both of these issues have been addressed by not using the bytestream API any more; instead the data is simply read directly by using AV_RB. This is possible because the offsets are constants. Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
When parsing MXF encountering some tags leads to allocations. And when these tags were encountered repeatedly, this could lead to memleaks, because the pointer to the old data got simply overwritten with a pointer to the new data (or to NULL on allocation failure). This has been fixed. Reviewed-by: NTomas Härdin <tjoppen@acc.umu.se> Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
The MXF demuxer uses an array of pointers to different structures of metadata (all containing a common initial sequence containing a type field to distinguish them) and some of these structures contain pointers to separately allocated subelements. If an error happens while reading and creating the tags, the semi-finished new tag is freed using the function to free these tags. But this function doesn't free the already allocated subelements, because the type has not been set yet. This commit changes this. Reviewed-by: NTomas Härdin <tjoppen@acc.umu.se> Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 Andreas Rheinhardt 提交于
Said array contains pointers to other structs and both the designated new element as well as other stuff contained in it (e.g. strings) leak if the new element can't be added to the array. Reviewed-by: NTomas Härdin <tjoppen@acc.umu.se> Signed-off-by: NAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
由 James Almer 提交于
And add the missing doc/APIchanges entry. Signed-off-by: NJames Almer <jamrial@gmail.com>
-
- 23 7月, 2020 7 次提交
-
-
由 Jiaxun Yang 提交于
GCC complains: warning: listing the stack pointer register ‘$29’ in a clobber list is deprecated [-Wdeprecated] Actually stack pointer was restored at the end of the inline assembly so there is no reason to add it to the clobber list. Also use $sp insted of $29 to make our intention much more clear. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Jiaxun Yang 提交于
GCC complains about them. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Jiaxun Yang 提交于
Apply optimized functions according to cpuflags. MSA is usually put after MMI as it's generally faster than MMI. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Jiaxun Yang 提交于
Add MMI & MSA runtime detection for MIPS. Basically there are two code pathes. For systems that natively support CPUCFG instruction or kernel emulated that instruction, we'll sense this feature from HWCAP and report the flags according to values grab from CPUCFG. For systems that have no CPUCFG (or not export it in HWCAP), we'll parse /proc/cpuinfo instead. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Jiaxun Yang 提交于
That helper grab from kernel code can allow us to inline newer instructions (not implemented by the assembler) in a elegant manner. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Jiaxun Yang 提交于
To enable runtime detection for MIPS, we need to refine ffbuild part to support buildding these feature together. Firstly, we fixed configure, let it probe native ability of toolchain to decide wether a feature can to be enabled, also clearly marked the conflictions between loongson2 & loongson3 and Release 6 & rest. Secondly, we compile MMI and MSA C sources with their own flags to ensure their flags won't pollute the whole program and generate illegal code. Signed-off-by: NJiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: NShiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-
由 Gautam Ramakrishnan 提交于
This patch sets a flag when the processing of the main header is complete. Signed-off-by: NMichael Niedermayer <michael@niedermayer.cc>
-