- 23 Aug, 2019 2 commits
-
-
Michael Niedermayer authored
Fixes: 3e+47 is outside the range of representable values of type 'int' Fixes: 16057/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5691111307214848 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
leozhang authored
Reviewed-by:
Carl Eugen Hoyos <ceffmpeg@gmail.com> Signed-off-by:
leozhang <leozhang@qiyi.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 22 Aug, 2019 3 commits
-
-
Marton Balint authored
The return value was unintentionally lost after 00a2652d. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Michael Niedermayer authored
Fixes: memleak Fixes: 16277/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5696629440512000 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegReviewed-by:
James Almer <jamrial@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Michael Niedermayer authored
Fixes: out of array access Fixes: 16277/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5696629440512000 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegReviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 21 Aug, 2019 3 commits
-
-
Steven Liu authored
simplified code for get dirname string in hls_delete_old_segments Signed-off-by:
Steven Liu <lq@chinaffmpeg.org>
-
Steven Liu authored
Signed-off-by:
Steven Liu <lq@chinaffmpeg.org>
-
Steven Liu authored
Signed-off-by:
Steven Liu <lq@chinaffmpeg.org>
-
- 20 Aug, 2019 4 commits
-
-
Steven Liu authored
and remove redundant empty line
-
Steven Liu authored
-
Jun Zhao authored
free the old_filname to avoid memory leak in error handle path. Reviewed-by:
Steven Liu <lq@onvideo.cn> Signed-off-by:
Jun Zhao <barryjzhao@tencent.com>
-
Limin Wang authored
Reviewed-by:
Steven Liu <lq@onvideo.cn> Signed-off-by:
Limin Wang <lance.lmwang@gmail.com>
-
- 18 Aug, 2019 2 commits
-
-
Steven Liu authored
write mpegts or fmp4 context into buffer, and flush the buffer into output file when split fragment. merge two format split workflow into one workflow Signed-off-by:
Steven Liu <lq@chinaffmpeg.org>
-
Limin Wang authored
Reviewed-by:
Steven Liu <lq@onvideo.cn> Signed-off-by:
Limin Wang <lance.lmwang@gmail.com>
-
- 17 Aug, 2019 4 commits
-
-
Marton Balint authored
We do this by switching to AVBPrint. v2: Also set IO context error flag in case of ENOMEM. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
An example where the preivously added API can be useful. Also fixes ticket #6390. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
These functions can be used to print a variable number of strings consecutively to the IO context. Unlike av_bprintf, no temporary buffer is necessary. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Andreas Rheinhardt authored
matroska_reset_status (a function that is used during seeking (among other things)) used an int for the return value of avio_seek which returns an int64_t. Checking the return value then indicated an error even though the seek was successfull for targets in the range of 2GB-4GB, 6GB-8GB, ... This error implied that the status hasn't been reset and in particular, the old level was still considered to be in force, so that ebml_parse returned errors because the newly parsed elements were of course not contained in the previously active and still wrongly considered active master element any more. Addresses ticket #8084. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by:
James Almer <jamrial@gmail.com>
-
- 15 Aug, 2019 2 commits
-
-
tomajsjiang authored
fix error like "offset 0x1f85: partial file", the root cause is when read the mp4 file from http, and the moov in the end of the mp4 file, reconfig the buffer will drop some data. Signed-off-by:
Jun Zhao <barryjzhao@tencent.com> Signed-off-by:
Zhongxing Jiang <tomajsjiang@tencent.com>
-
tomajsjiang authored
Add new API ffio_realloc_buf for AVIO buffer realloc. Signed-off-by:
Zhongxing Jiang <tomajsjiang@tencent.com>
-
- 14 Aug, 2019 8 commits
-
-
Andreas Rheinhardt authored
ff_write_chained essentially duplicated the functionality of av_packet_rescale_ts. This has been changed. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Andreas Rheinhardt authored
There is no reason for these functions to modify the given packets at all. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Marton Balint authored
Deprecated since 2014. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
PCR generation was based on counting packets for both CBR and VBR streams. Couting packets might have worked for CBR streams (when muxrate was specified) but it only took into account the packets of a service (or the packets of the PCR stream lately), so even that was problematic for multi program streams. The new code works on actual timestamps for both CBR and VBR streams. For VBR streams the behaviour of the old code is simulated by selecting a PCR interval which is the highest multiple of the frame duration but still less than 100 ms. It should be trivial to add support for setting the PCR interval for VBR streams as well in a later patch. The accuracy of PCR packets for CBR streams was greatly improved by preemtively sending them at PCR intervals even if sending the payload of another stream is in progress. This may fix these tickets: - #5750 - #7524 Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
Maybe we should use service ID instead of increasing numbers? Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
Signed-off-by:
Marton Balint <cus@passwd.hu>
-
Marton Balint authored
The MPEG-TS muxer had a serious bug related to the use of multiple programs: in that case, the PCR pid selection was incomplete for all services except one. This patch solves this problem and selects a stream to become PCR for each service, preferably the video stream. This patch also moves pcr calculation attributes to MpegTSWriteStream from MpegTSService. PCR is a per-stream and not per-service thing, so it was misleading to refer to it as something that is per-service. Also remove *service from MpegTSWriteStream because a stream can belong to multiple services so it was misleading to select one for each stream. You can check the result with this example command: ./ffmpeg -loglevel verbose -y -f lavfi -i \ "testsrc=s=64x64:d=10,split=2[out0][tmp1];[tmp1]vflip[out1];sine=d=10,asetnsamples=1152[out2]" \ -flags +bitexact -fflags +bitexact -sws_flags +accurate_rnd+bitexact \ -codec:v libx264 -codec:a mp2 -pix_fmt yuv420p \ -map '0:v:0' \ -map '0:v:1' \ -map '0:a:0' \ -program st=0:st=2 -program st=1:st=2 -program st=2 -program st=0 -f mpegts out.ts You should now see this: [mpegts @ 0x37505c0] service 1 using PCR in pid=256 [mpegts @ 0x37505c0] service 2 using PCR in pid=257 [mpegts @ 0x37505c0] service 3 using PCR in pid=258 [mpegts @ 0x37505c0] service 4 using PCR in pid=256 Fixes ticket #8039. v2: a video is stream is preferred if there are no programs, just like before the patch. Signed-off-by:
Marton Balint <cus@passwd.hu>
-
- 13 Aug, 2019 3 commits
-
-
Andreas Rheinhardt authored
Up until now, when performing a SEEK_END seek, the subfile protocol ignored the desired position (relative to EOF) and used the current absolute offset in the input file instead. And when performing a SEEK_CUR seek, the current position has been ignored. Signed-off-by:
Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-
Nicolas George authored
-
Nicolas George authored
-
- 11 Aug, 2019 2 commits
-
-
Michael Niedermayer authored
Not found by the fuzzer Reviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Michael Niedermayer authored
Fixes: Timeout (Infinite -> Finite) Fixes: 16010/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5638616102993920 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegReviewed-by:
Paul B Mahol <onemda@gmail.com> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 10 Aug, 2019 2 commits
-
-
Carl Eugen Hoyos authored
-
Carl Eugen Hoyos authored
Spotted-by: James Almer
-
- 09 Aug, 2019 1 commit
-
-
Olivier Maignial authored
=== PROBLEM === I was trying to record h264 + aac streams from an RTSP server to mp4 file. using this command line: ffmpeg -v verbose -y -i "rtsp://<ip>/my_resources" -codec copy -bsf:a aac_adtstoasc test.mp4 FFmpeg then fail to record audio and output this logs: [rtsp @ 0xcda1f0] The profile-level-id field size is invalid (40) [rtsp @ 0xcda1f0] Error parsing AU headers ... [rtsp @ 0xcda1f0] Could not find codec parameters for stream 1 (Audio: aac, 48000 Hz, 1 channels): unspecified sample format In SDP provided by my RTSP server I had this fmtp line: a=fmtp:98 streamType=5; profile-level-id=40; mode=AAC-hbr; config=1188; sizeLength=13; indexLength=3; indexDeltaLength=3; In FFmpeg code, I found a check introduced by commit 24130234. It disallows values greater than 32 for fmtp line parameters. RFC-4566 (SDP: Session Description Protocol) do not give any limit of size on interger parameters given in an fmtp line. However, In RFC-6416 (RTP Payload Format for MPEG-4 Audio/Visual Streams) give examples of "profile-level-id" values for AAC, up to 55. === FIX === As each parameter may have its own min and max values I propose to introduce a range for each parameter. For this patch I used RFC-3640 and ISO/IEC 14496-1 as reference for validity ranges. This patch fix my problem and I now can record my RTSP AAC stream to mp4. It has passed the full fate tests suite sucessfully. Signed-off-by:
Olivier Maignial <olivier.maignial@smile.fr> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
- 08 Aug, 2019 1 commit
-
-
Jun Zhao authored
Add http_seekable option for HTTP partial requests, when The EXT-X-BYTERANGE tag indicates that a Media Segment is a sub-range of the resource identified by its URI, we can use HTTP partial requests to get the Media Segment. Reviewed-by:
Steven Liu <lq@chinaffmpeg.org> Signed-off-by:
Jun Zhao <barryjzhao@tencent.com>
-
- 06 Aug, 2019 1 commit
-
-
Michael Niedermayer authored
Reverted at the request of the Author due to potential regression with SMPTE 2110-20 This reverts commit 9051092e.
-
- 05 Aug, 2019 2 commits
-
-
Jacob Siddall authored
The previous calculation code did not account for the fact that the copy_offset for the start of the frame array is at index 0, yet the scan line number from the rfc4175 RTP header starts at 1. This caused 2 issues to appear: - The first scan line was being copied into the array where the second scan line should be. This caused the resulting video to have a green line at the top of it. - Since the packet containing the last scan line would fail the calculation, the packet with the RTP marker would not be processed which caused a log message saying "Missed previous RTP marker" to be outputted for each frame. Signed-off-by:
Jacob Siddall <kobe@live.com.au> Signed-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-
Michael Niedermayer authored
Fixes: memleak Fixes: 16140/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5684008052064256 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by:
Michael Niedermayer <michael@niedermayer.cc>
-