summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Release 1.6.41.6.41.6Tim-Philipp Müller2016-04-146-64/+119
|
* libav: Update to n2.8.6Sebastian Dröge2016-02-151-0/+0
|
* Release 1.6.31.6.3Sebastian Dröge2016-01-206-51/+103
|
* avviddec: remove realvideo slice_offset handlingVineeth TM2016-01-182-37/+0
| | | | | | | | Handling slice_offset in avviddec is resulting in invalid memory read. Since rv decoders anyways handle slice_offset, removing the same to fix memory mishandlings https://bugzilla.gnome.org/show_bug.cgi?id=758726
* avcodecmap: Add special mapping for mono channel layoutsSebastian Dröge2016-01-181-0/+12
| | | | | | | | In ffmpeg this is the same as FRONT_CENTER, but we distinguish between FRONT_CENTER and MONO in GStreamer. Add an explicit mapping for this special case in the translations functions. https://bugzilla.gnome.org/show_bug.cgi?id=759846
* libav: Update to ffmpeg n2.8.5Sebastian Dröge2016-01-161-0/+0
|
* libav: Update to ffmpeg n2.8.4Sebastian Dröge2015-12-211-0/+0
|
* Release 1.6.21.6.2Sebastian Dröge2015-12-146-33/+121
|
* libav: Update to n2.8.3Sebastian Dröge2015-12-011-0/+0
|
* avviddec: Make sure to use a buffer pool with the correct width/height ↵Sebastian Dröge2015-12-011-1/+13
| | | | | | | | | | | | | | | | | configured on it for pushing buffers downstream If downstream does not provide a (usable) pool, we would use our internal pool. But the internal pool might be configured with a different width/height because of padding, which then will cause problems if we push buffers from it directly downstream. Instead create a new pool if the width/height is different. This prevents crashes with vaapisink and d3dvideosink for example. Based on the debugging results and discussions with Nicolas Dufresne <nicolas.dufresne@collabora.com> https://bugzilla.gnome.org/show_bug.cgi?id=758344
* avviddec: Fix structure memory leakVineeth T M2015-11-231-1/+1
| | | | | | | gst_structure_copy already takes a reference for config_copy. No need to take another reference while setting it to buffer pool https://bugzilla.gnome.org/show_bug.cgi?id=758512
* libav: Update to n2.8.2Sebastian Dröge2015-11-121-0/+0
|
* avviddec: Don't fallback on allocation failureNicolas Dufresne2015-11-091-22/+30
| | | | | | | Allocation should keep working, falling back causes the stride to change which is not supported in direct rendering. https://bugzilla.gnome.org/show_bug.cgi?id=756028
* avvidenc: Fix frame memory leakVineeth TM2015-11-031-0/+4
| | | | | | The frame being passed to handle_frame should be unref'ed in all cases https://bugzilla.gnome.org/show_bug.cgi?id=757453
* avdemux: Fix string memory leaksVineeth TM2015-11-031-0/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=757454
* Release 1.6.11.6.1Sebastian Dröge2015-10-306-78/+105
|
* avviddec: Fix bufferpool config double free by taking a copy as neededSebastian Dröge2015-10-161-2/+7
| | | | Also free the config in two code paths where we leaked it before.
* libav: Update to n2.8.1Sebastian Dröge2015-10-141-0/+0
|
* avviddec: only free config when pool doesn't take ownershipLuis de Bethencourt2015-10-131-0/+2
| | | | | | | | | | | | Since gst_buffer_pool_set_config() takes ownership of the config structure, it is only necessary to free the structure before using it when the true branch of if (gst_buffer_pool_config_validate_params) hasn't run. gst_buffer_pool_set_config() always takes ownership of the structure regardless of success or failure. Which means the return, checked with if (!working_pool), has no relation to the state of the structure. CID #1320708
* avcodecmap: Don't allocate dummy codec data anymore, it causes crashes nowadaysSebastian Dröge2015-10-051-6/+2
| | | | | | | Multithreaded encoders are going to free this dummy codec data twice, e.g. with this pipeline gst-launch-1.0 videotestsrc num-buffers=40 ! \ videoconvert ! avenc_mjpeg ! fakesink
* avvidenc: Pass the correct user_data to gst_buffer_new_wrapped_full()Sebastian Dröge2015-10-051-1/+1
| | | | | | | Fixes crash with e.g. gst-launch-1.0 videotestsrc num-buffers=40 ! \ videoconvert ! avenc_huffyuv ! fakesink
* Release 1.6.01.6.0Sebastian Dröge2015-09-256-21/+106
|
* Release 1.5.911.5.91Sebastian Dröge2015-09-188-31/+297
|
* avvidec: increase default alignment to 32 bytesTim-Philipp Müller2015-09-151-1/+1
| | | | | | | | Change default alignment from 16 to 32 bytes, which fixes crashes when decoding H.265 using AVX2-based decoder code paths and when using ximagesink/glimagesink. https://bugzilla.gnome.org/show_bug.cgi?id=754120
* avvideodec: ensure required mem alignment fixing avdec_h265 crashes with ↵Tim-Philipp Müller2015-09-151-3/+20
| | | | | | | | | | | | | | | ximagesink/glimagesink Make sure the alignment requirement in GstAllocationParams matches the GstVideoAlignment requirements. This fixes issues with avdec_h265 crashing in the avx2 code path when used with playbin and ximagesink/glimagesink as videosink. The internal video pool would allocate buffers with an alignment of 15 even though GstVideoAlignment specified a stride_align requirement of 31 (which comes from ffmpeg). https://bugzilla.gnome.org/show_bug.cgi?id=754120
* libav: Update to ffmpeg n2.8Sebastian Dröge2015-09-121-0/+0
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=754920
* avvid/audenc: Set some tags in the output for downstream's infoJan Schmidt2015-08-242-0/+34
| | | | | | Add the codec name and bitrate into the output for informational purposes. Bitrate in particular is now used by flvmux to set videodatarate and audiodatarate in the resulting stream
* avviddec: Fix pool reallocation logicNicolas Dufresne2015-08-202-18/+42
| | | | | | | | | | Some check where incorect and also unsafe. The only reliable information in get_buffer2 is the picture width/height really. The side effect is that the width/height of the internal pool endup padded, so when we switch we also need to switch to the a new width/height, hence we save the pool info. https://bugzilla.gnome.org/show_bug.cgi?id=753869
* Release 1.5.901.5.90Sebastian Dröge2015-08-199-81/+5737
|
* aviddec: Re-enable direct renderingNicolas Dufresne2015-08-172-118/+199
| | | | | | | This is achieved by using a tempory internal pool. We can then switch to a downstream pool if the downstream pool buffer have matching strides. https://bugzilla.gnome.org/show_bug.cgi?id=752802
* avvidenc: use template subset check for accept-capsThiago Santos2015-08-171-0/+2
| | | | | It is faster than doing a query that propagates downstream and should be enough
* avaudenc: use pad template caps for accept-capsThiago Santos2015-08-171-0/+2
| | | | | | | use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough
* avaudenc: remove useless getcaps methodThiago Santos2015-08-161-18/+0
| | | | It just calls the exact same function as the default handler
* avvidenc: remove useless getcaps methodThiago Santos2015-08-161-16/+0
| | | | It just calls the exact same function as the default handler
* avauddec: let audiodecoder call the default pad query handlerThiago Santos2015-08-151-23/+2
| | | | Avoids repeating the same handling in many decoders
* avviddec: let videodecoder call the default pad query handlerThiago Santos2015-08-151-22/+2
| | | | Avoids repeating the same handling in many decoders
* libav: Update to n2.7.2Sebastian Dröge2015-08-151-0/+0
|
* avviddec: use template caps intersection for accept-capsThiago Santos2015-08-141-0/+23
| | | | | | | Avoid doing downstream caps queries when accept-caps should just do a shallow caps check on the element itself https://bugzilla.gnome.org/show_bug.cgi?id=753623
* avauddec: use template caps intersection for accept-capsThiago Santos2015-08-141-0/+25
| | | | | | | Avoid doing downstream caps queries when accept-caps should just do a shallow caps check on the element itself https://bugzilla.gnome.org/show_bug.cgi?id=753623
* Map ffmpeg metadata to GStreamer tagsJan Schmidt2015-08-051-71/+135
| | | | | | | | Update to the metadata API ffmpeg has had in place for a long time now, and reenable output of GStreamer tags from the demuxer. https://bugzilla.gnome.org/show_bug.cgi?id=566605
* avviddec: Remove unused force parameterOlivier Crête2015-08-031-6/+6
| | | | This parameter has been always false for a long time.
* avviddec: Use caps-like size in get_buffer2()Olivier Crête2015-08-031-16/+7
| | | | | | | The size in the AVFrame in get_buffer2 don't match the output size, instead they match ffmpeg's memory requirements, so we can't compare them from the values of the output AVFrame. Those are comparable to the values in the passed AVCodecContext.
* avviddec: Reset current_dr on close and when not chosing itOlivier Crête2015-08-031-1/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=753189
* avviddec: Disable direct rendering before a frame has been producesOlivier Crête2015-07-281-1/+6
| | | | | | | | | | | ffmpeg doesn't provide the final's image width & height in the get_buffer2() callback, so it's not possible to create an output state for GstVideoDecoder at this stage. So only try to do direct rendering if the buffer pool has already been negotiated based on the final decoded size. This partially reverts the effects of 2e621f8db https://bugzilla.gnome.org/show_bug.cgi?id=752802
* Revert "For static builds, add the ffmpeg library directories to the linker ↵Sebastian Dröge2015-07-281-8/+2
| | | | | | | | | flags" This reverts commit ac3437153dc6cb3d82cdda0d1f60ffc5600fdf67. Doesn't actually make sense as it will put the (uninstalled) library paths into the installed .la files. How does this all work?
* For static builds, add the ffmpeg library directories to the linker flagsSebastian Dröge2015-07-281-2/+8
|
* avviddec: Get code out of loopOlivier Crête2015-07-271-16/+13
| | | | | Code was executed only on the first iteration, so just pull it out of the loop entirely. This makes it clear it has nothing to do with the loop.
* avviddec: Only create the AVBuffer once the stride is validatedOlivier Crête2015-07-271-5/+2
| | | | | | | If it is created earlier and the stride is invalid, then the frame will be freed and it won't be possible to use it in the fallback path. Not doing this causes a segfault because it will try to use already freed memory.
* avviddec: Re-enable direct renderingOlivier Crête2015-07-271-1/+1
|
* avauddec: Read channels from the channels fieldOlivier Crete2015-07-271-0/+2
| | | | | | | If there is no layout, just read the channel count from the channels field. https://bugzilla.gnome.org/show_bug.cgi?id=752186