Wim Taymans
b3ff9c030f
video-converter: align offsets to subsampling
...
Only apply an offset that is a multiple of the subsampling. To handle
arbitrary offsets in the future, we need to be able to chroma-resample
part of the borders.
2014-10-31 11:23:21 +01:00
Wim Taymans
308d21c71f
video-converter: clamp output lines
2014-10-31 11:23:21 +01:00
Wim Taymans
b2eb5f02fc
video-format: add alignment checks
...
Some of the ORC functions need specific alignment
2014-10-31 11:23:21 +01:00
Wim Taymans
19cd171035
video-scaler: fix offset check
2014-10-31 11:23:21 +01:00
Wim Taymans
5c3c42b95d
video-converter: also chroma up/downsample when scaling
2014-10-31 11:23:21 +01:00
Wim Taymans
6a529cb1dd
video-converter: clamp input lines correctly
2014-10-31 11:23:21 +01:00
Tim-Philipp Müller
ef98393b0d
video-scaler: fix build without orc
...
https://bugzilla.gnome.org/show_bug.cgi?id=739433
2014-10-30 23:53:39 +00:00
Wim Taymans
5cf4aa358d
video-converter: add border color
2014-10-30 17:34:48 +01:00
Wim Taymans
ce2d4d40a1
video-converter: add support for src/dest regions
...
Add support for cropping the source and placing the converted image
into a rectangle in the destination frame.
Add an option to add a border and border color.
2014-10-30 17:34:48 +01:00
Vincent Penquerc'h
20344f6dc9
rtpbuffer: add a const where appropriate
2014-10-30 11:42:02 +00:00
Wim Taymans
49d909dabf
video-scaler: add more ORC functions
...
Add the old ORC functions for nearest and linear. Label them as Low
quality because they are not as accurate but ORC lacks opcodes to
express this for now.
2014-10-30 11:48:00 +01:00
Wim Taymans
ca2bd1cc6b
video-scaler: rename resampler to video-resampler
...
Prefix the resampler with video-. It we would like to reuse the
resampler for audio later, we can copy/move it and deprecate this
one.
2014-10-30 11:48:00 +01:00
Wim Taymans
daf20d5e09
video-scaler: remove color range argument
...
We just need to clip to the format limits, if there is extra headroom in
the range we can use that without problems.
2014-10-29 17:38:33 +01:00
Wim Taymans
21ba193dd6
video-scaler: add ORC optimized versions
...
Add ORC optimized versions of 2 and 4tap vertical scaling. Provide
a high quality 12 bits and a low quality 6 bits version.
2014-10-29 16:26:19 +01:00
Wim Taymans
84176843c1
video-scaler: add precision to make_s16_taps
2014-10-29 16:26:19 +01:00
Wim Taymans
72b30ac5ed
video-converter: copy config fields
...
When setting a new config, copy all the fields into our own config and
not only the ones we know about.
2014-10-29 16:26:19 +01:00
Wim Taymans
28e5ed00de
resampler: make offset/phase/n_taps uint32
...
Make various resizer fields uint32 so that we can use them in ORC
functions later.
2014-10-29 16:26:19 +01:00
Wim Taymans
9591e22fee
video-converter: don't convert too much
...
Always convert the smallest width.
2014-10-29 16:26:10 +01:00
Wim Taymans
fcc7fbd460
resampler: make shift easier to use
2014-10-29 16:26:10 +01:00
Wim Taymans
716b91d86e
resampler: add parameters to cubic filter
...
Improve cubic filter and add parameters. Switch to mitchell filter
by default.
2014-10-29 16:26:10 +01:00
Wim Taymans
32047eaac0
video-scaler: add extra options
2014-10-29 16:26:10 +01:00
Wim Taymans
c409a45d13
video-converter: define some options
2014-10-29 16:26:10 +01:00
Wim Taymans
ad0e0006b2
resampler: add some options
2014-10-29 16:26:10 +01:00
Wim Taymans
b4a5001e3c
resampler: limit max number of taps
...
Don't use more taps than the input size.
2014-10-29 16:26:10 +01:00
Wim Taymans
a81d450b7e
video-converter: add scaling support
...
Add scaling support for the video-converter object
2014-10-29 16:26:10 +01:00
Wim Taymans
199fab4b06
video-scaler: add video scaler helper object
...
Add a video scaler object build on top of the resampler. It has
implementation to deal with interlaced video as well as horizontal and
vertical scaling functions.
2014-10-29 16:26:10 +01:00
Wim Taymans
c9c9e8158d
video: add generic resampler
...
Add an object that can generate a set of resample filter coefficients.
2014-10-29 16:26:10 +01:00
Wim Taymans
549bdd4ece
video-converter: rework the generic converter function
...
Use a LineCache object to track and process lines between unpack,
upsample, convert, downsample and pack stages. This simplifies the
main core processing function a lot and allows for future additions
easily.
Add support for interlaced formats in chroma up and downsampling.
2014-10-29 16:26:10 +01:00
Wim Taymans
71efeaaa6f
video-convert: swap src and dest
...
It is more natural and consistent with other uses.
2014-10-29 16:26:10 +01:00
Wim Taymans
6547985f27
video-chroma: fix typo
2014-10-29 16:26:10 +01:00
Vineeth T M
2847a8108c
video-blend: segfault when xpos >= video size
...
When the xpos is given as greater than or equal to the video size,
we get a segfault, due to improper condition.
Hence adding proper conditions.
https://bugzilla.gnome.org/show_bug.cgi?id=738984
2014-10-27 10:29:15 +00:00
Tim-Philipp Müller
db89f0dca4
rtsp: use generic marshaller
2014-10-24 10:17:47 +01:00
Aleix Conchillo Flaqué
66abee92b0
rtspconnection: call watch notify before freeing any watch resources
...
This gives control to the notify function allowing it to finish other
watch related functionality.
https://bugzilla.gnome.org/show_bug.cgi?id=737752
2014-10-21 10:03:35 +02:00
Sebastian Dröge
6129d1bd18
appsink: Fix gst_app_sink_pull() docs to transfer full for the return value
...
Also we get a GstSample, not a GstBuffer here.
2014-10-20 15:31:29 +02:00
Peter G. Baum
7b211bf6b3
riff-media: allow more channel_masks
...
Allow partial valid channel masks.
Set channel mask to 0 for non-valid channel masks.
https://bugzilla.gnome.org/show_bug.cgi?id=733405
2014-10-14 10:29:56 +02:00
Peter G. Baum
c734fbc139
audio-channels: allow partially valid channel_mask
...
Since WAVEFORMATEXTENSIBLE allows to have more channels than
bits in the channel mask we should allow this, too, to avoid
loss of information.
https://bugzilla.gnome.org/show_bug.cgi?id=733405
2014-10-14 10:29:56 +02:00
Thiago Santos
a0b25a570a
audiodecoder: should post DECODE errors and not ENCODE
...
Fix error code for audio decoder
2014-10-13 22:26:29 -03:00
Luis de Bethencourt
3f5b9c4c8b
videoblend: Avoid assigning a negative value to a guint
...
There are some few but certain conditions where it is possible for the
dest_width to be smaller than x. So we check this before assigning a negative
value to src_width, which is a unsigned and would be promoted to a number that
can segfault videoblend.
https://bugzilla.gnome.org/show_bug.cgi?id=738242
2014-10-11 19:10:46 +01:00
Olivier Crête
57ac7b1800
pbutils: Rename clock-base/seqnum-base to timestamp-offset/seqnum-offset
...
To match how they were renamed elsewhere.
2014-10-10 17:33:00 -04:00
Wim Taymans
e115e5059b
video-chroma: improve 4x downsampling coefficients
2014-10-08 11:36:15 +02:00
Sebastian Dröge
2c4bd2296a
videoconverter: Free the converter config in free()
2014-10-06 10:11:05 +03:00
Sebastian Dröge
7b428a8bcb
videoencoder: Stop storing if we received EOS
...
This was never reset when going from PAUSED->READY and resulted
in encoders being not reusable after EOS. They just rejected any
buffer because they received EOS in their previous life.
The flag wasn't used anywhere except for rejecting buffers after
EOS, and this is now handled by GstPad directly.
2014-10-04 23:09:19 +03:00
Aurélien Zanelli
9297fe9ba0
videoencoder: release frame in finish_frame when no output state is configured
...
Otherwise, frame is leaked.
https://bugzilla.gnome.org/show_bug.cgi?id=737706
2014-10-01 12:53:45 +03:00
Wim Taymans
b5f3e5261a
video-converter: add orc optimized matrix8 function
...
Add an ORC implementation of the matrix8 function.
Regenerate video-orc-dist.[ch]
2014-09-29 17:28:06 +02:00
Arun Raghavan
c47b005197
audio: Fix up a comment in GstAudioBaseSink
...
Rewrote the comment to not be PulseAudio-specific.
2014-09-29 19:46:32 +05:30
Rico Tzschichholz
c9f4ebf495
video: Make sure to link against libm
2014-09-27 19:09:08 +01:00
Arun Raghavan
324ebd19e3
audio: Trivial comment for unhandled MPEG-2 payloading case
...
The spec mentions a version of the MPEG-2 frame with a base frame and
extension frame. I don't have IEC 13818-3 to figure out what that is,
and don't see any references in search results, so it's a FIXME for now.
https://bugzilla.gnome.org/show_bug.cgi?id=736797
2014-09-27 10:40:27 +05:30
Arun Raghavan
2965b796bc
audio: Fixes for MPEG-2 LSF IEC61937 payloading
...
The low sample frequency case for MPEG-2 is <=12kHz (the 32kHz number
applies to MPEG-1).
https://bugzilla.gnome.org/show_bug.cgi?id=736797
2014-09-27 10:40:27 +05:30
Anuj Jaiswal
798ff6e561
audio: correct condition for MPEG case.
...
Signed-off-by: Anuj Jaiswal <anuj.jaiswal@samsung.com>
https://bugzilla.gnome.org/show_bug.cgi?id=736797
2014-09-27 10:40:27 +05:30
Wim Taymans
07d1d7ba38
video: improve YUV -> RGB conversion
...
Reorganize orc instructions to free up some registers.
We can reuse the ORC code to implement the generic AYUV->ARGB matrix.
2014-09-26 18:14:11 +02:00