Commit graph

1795 commits

Author SHA1 Message Date
Aurélien Zanelli
728444168a av: use GMutex instead of deprecated GStaticMutex
https://bugzilla.gnome.org/show_bug.cgi?id=740822
2014-11-28 00:32:28 +00:00
Edward Hervey
70462960d4 Automatic update of common submodule
From 7bb2bce to ef1ffdc
2014-11-27 17:12:26 +01:00
Nicolas Dufresne
9919c274b9 videodec: Ensure update_pool is initialized
This was probably not causing any issues, but we would randomly
and needlessly update the pool in the query due to uninitialized
variable.
2014-11-16 16:11:53 -05:00
Sebastian Dröge
7b9a53068d Automatic update of common submodule
From 84d06cd to 7bb2bce
2014-10-27 18:00:07 +01:00
Tim-Philipp Müller
441014a3dc Automatic update of common submodule
From a8c8939 to 84d06cd
2014-10-21 13:03:27 +01:00
Stefan Sauer
d6c136c3a8 Automatic update of common submodule
From 36388a1 to a8c8939
2014-10-21 12:59:52 +02:00
Aleix Conchillo Flaqué
24780708be avauddec: drain samples until libav doesn't have more data
We use have_data (that comes from libav), instead of only trying 10
times, to know if there are more samples available. The old code was
machine dependent as different amount of samples could be decoded by
different type of (more powerful) machines, and 10 times was not always
sufficient.

https://bugzilla.gnome.org/show_bug.cgi?id=737144
2014-09-23 19:14:06 +03:00
Sebastian Dröge
1217f5e0a1 libav: Update to v11 2014-09-15 22:50:05 +03:00
IBM Thinklab
25ab0036c0 avviddec: drain frames until libav doesn't have more data
We use have_data (that comes from libav), instead of only trying 10 times,
to know if there are more frames available. The old code was machine
dependant as different amount of frames could be decoded by different
type of (more powerful) machines, and 10 times was not always sufficient.

https://bugzilla.gnome.org/show_bug.cgi?id=736515
2014-09-12 16:26:21 +03:00
Sebastian Dröge
f9db6274c2 libav: Update to v11_beta1 2014-08-27 12:39:49 +03:00
Sebastian Dröge
9efc92a3a1 libav: Minor changes to build properly with v11alpha1 2014-08-12 16:17:38 +03:00
Sebastian Dröge
e972365887 libav: Update to v11alpha1 2014-08-12 16:17:37 +03:00
Jan Schmidt
8c00a359d0 avviddec: After draining frames, flush the libav decoder
Makes sure that there's really nothing stale left in the decoder
after draining.

https://bugzilla.gnome.org/show_bug.cgi?id=734661
2014-08-12 22:48:59 +10:00
Aleix Conchillo Flaqué
1307b31e1c avviddec: Don't lose frames on EOS
have_data is not propagated from gst_ffmpegviddec_video_frame to
gst_ffmpegviddec_frame. have_data is only set to 1 in
gst_ffmpegviddec_frame if a frame pointer is passed. However, this is
not true while draining, which means that have_data from libav will be
ignored.

https://bugzilla.gnome.org/show_bug.cgi?id=734608
2014-08-11 18:06:33 +03:00
Thibault Saunier
dc1e69dbea avauddec: Bump the rank of avdec_aac so it is used by default
https://bugzilla.gnome.org/show_bug.cgi?id=676131
2014-08-06 13:26:37 +02:00
Sebastian Dröge
105b2bbe53 libav: Update to v10.3 2014-08-04 15:07:31 +02:00
Edward Hervey
c57c5f6a8f Makefile: Add usage of build-checks step
Allows building checks without running them
2014-08-01 10:41:28 +02:00
Sebastian Dröge
cbbb7c1e3d Back to development 2014-07-19 18:04:49 +02:00
Sebastian Dröge
91752f4e7c Release 1.4.0 2014-07-19 17:49:04 +02:00
Sebastian Dröge
a9ab5fb092 Release 1.3.91 2014-07-11 11:49:03 +02:00
Sebastian Dröge
79a9865c3f Release 1.3.90 2014-06-28 11:44:41 +02:00
Sebastian Dröge
d1acf1e598 libav: Update to v10.2 2014-06-28 09:59:49 +02:00
Sebastian Dröge
36269ac42e Back to development 2014-06-22 19:36:14 +02:00
Sebastian Dröge
d65233e818 Release 1.3.3 2014-06-22 19:27:47 +02:00
Sebastian Dröge
e42cc96566 avvidenc: Make sure to fixate caps before setting them on the pad
After the recent addition of negotiation support for MPEG4 part 2
profiles via caps it can happen that the generated caps at this
point still contain multiple profiles. For example if downstream
does not care. Just fixate anything here and use those caps.
2014-06-21 18:29:32 +02:00
Wim Taymans
57b1970395 avcodecmap: place supported profiles in mpeg4 caps
Place the supported profiles in the srcpad caps of the mpeg4 encoder.
2014-06-06 16:54:06 +02:00
Wim Taymans
9d0e1ecedc avcodecmap: remove deprecated media types
Remove x-xvid and x-3ivx. The last place where they were used are
in the srcpad caps of the decoder but since the decoder will never
actually output those caps we can safely remove them.
2014-06-06 16:54:06 +02:00
Wim Taymans
df8674f6c3 codecmap: don't expose more deprecated media types
x-xvid is deprecated, we don't want to expose it on the encoder, just
leave it only exposed on the decoder.
2014-06-06 16:54:06 +02:00
Wim Taymans
fd7ba73304 Revert "avcodecmap: do more reverse mapping of MPEG4"
This reverts commit e066785ad0.

x-xvid and x-3ivx are removed, we don't want to expose them again.
2014-06-06 16:54:06 +02:00
Vincent Penquerc'h
10e0606491 avaudenc: add a comment about using -1 in _finish_frame
See https://bugzilla.gnome.org/show_bug.cgi?id=729268
2014-06-06 12:40:57 +01:00
Vincent Penquerc'h
17e2e9acd9 avaudenc: avoid using wrong number of samples
If audio_in is NULL, we'll send a NULL frame to libav, to flush
the codec. In that case, we won't know how many samples the codec
will have used, so we use -1 (for don't know) when letting the
base class know about the buffer.

Coverity 1195177
2014-06-06 12:29:54 +01:00
Sebastian Dröge
406d5ba04a avvidenc: Fix indention and "bracketing" of goto labels
Should fix CID 1219865, which looks like the code analysis
algorithm was just confused.
2014-06-02 09:27:17 +02:00
Wim Taymans
2ef3c94b82 avcodecmap: handle simple and advanced-simple profile in MPEG4
Always enable 4MV flag for MPEG4
Pare the profile property and enable more features for advanced-simple
profile.
video/x-xvid is advanced-simple profile so enable more features.
We now also support encoding of video/x-xvid so add this to the caps.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=651320
2014-05-29 18:24:20 +02:00
Wim Taymans
3dda75f493 avvidenc: do all negotiation before opening the decoder
We first want to complete negotiation before opening the encoder.
Negotiation might configure flags and other things that might be needed
when opening the encoder.
2014-05-29 18:16:42 +02:00
Wim Taymans
e066785ad0 avcodecmap: do more reverse mapping of MPEG4
We previously mapped some caps to MPEG4 and codec_tag so we can use the
codec_tag again to map to the original caps.
2014-05-29 17:00:23 +02:00
Thiago Santos
66588ae60d avdemux: use GstFlowCombiner
To remove replicated code from all demuxers to a single standard way
of aggregating flow returns
2014-05-26 16:04:50 -03:00
Thiago Santos
5872891711 avdemux: remove legacy check from pad-alloc times
The 'no_buffer' error case is from the 0.10 era when a pad_alloc was
made before decoding the data and avdemuxer could check again the
flow returns for a not-linked. This isn't a valid use case anymore in
1.0
2014-05-26 16:02:11 -03:00
Sebastian Dröge
cf4313f77e Back to development 2014-05-21 13:23:36 +02:00
Sebastian Dröge
fda64c4119 Release 1.3.2 2014-05-21 13:06:36 +02:00
Sebastian Dröge
c24fb5f924 Automatic update of common submodule
From 211fa5f to 1f5d3c3
2014-05-21 10:53:31 +02:00
Gavin Hurlbut
38fc56e207 avvidenc: Add thread-count parameter for libav encoders
As some libav encoders (such as MPEG2) use a thread_count parameter to control
how many threads to use, and since it was always being set to 0 (which uses
the default), suboptimal threading can sometimes be chosen.  This extends the
libav encoders to allow for a max-threads parameter which is passed into
the internal structure to control this knob if applicable to the encoder.

https://bugzilla.gnome.org/show_bug.cgi?id=726612
2014-05-19 15:07:02 +01:00
Mathieu Duponchelle
7bb4f93de9 gstavviddec: Sanitize and fix qos handling.
gst_video_decoder_get_max_decding_time doesn't return a GstClockTime
but a GstClockTimeDiff, and thus one needs to compare it against
G_MAXINT_64.

The returning of a boolean and the extra subsequent code in _video_frame
was uselessly complicated.

The previous behaviour led to artefacts when the decoder tried to
hurry up.

https://bugzilla.gnome.org/show_bug.cgi?id=730075
2014-05-16 13:51:50 +02:00
Sebastian Dröge
78b64cbd29 Update to libav 10.1 2014-05-14 10:20:03 +02:00
Nicolas Dufresne
62a4d065ed videodec: Don't use non-growable pool
As we don't know how many output buffers we need to operate, we need to
avoid pool that can't grow. Otherwise the pipeline may stall, waiting
for buffers. For now, we require it to be able to grow to at least
32 buffers, which I think is a fair amount of buffers for decoders.

https://bugzilla.gnome.org/show_bug.cgi?id=726299
2014-05-08 15:33:39 -04:00
Sebastian Dröge
2262b9aa35 Back to development 2014-05-03 20:48:40 +02:00
Sebastian Dröge
253ebde03b Release 1.3.1 2014-05-03 18:34:52 +02:00
Sebastian Dröge
2694a2f485 Automatic update of common submodule
From bcb1518 to 211fa5f
2014-05-03 10:17:23 +02:00
Vincent Penquerc'h
4f1fd2687d libav: avoid dividing by zero on insane fps/par
While there, fix mixup in num/den with par (copied from fps,
apparently, and fps inverts fps to time base).

Coverity 1139696
2014-04-30 18:18:50 +01:00
Vincent Penquerc'h
3529de1784 avvidenc: guard against division by zero
and other nonsensical time base values while we're at it.

Coverity 1139699
2014-04-30 18:18:50 +01:00
Sebastian Dröge
6d92f18d1b avaudenc: Fix leak of AVBufferRef
AVPacket contains AVBufferRef which may leak unless unreffed properly.

https://bugzilla.gnome.org/show_bug.cgi?id=726814
2014-04-29 09:13:44 +02:00