Commit graph

7635 commits

Author SHA1 Message Date
Thiago Santos
d423b9f63e qtdemux: parse tkhd transformation matrix and add tags if appropriate
Handle the transformation matrix cases where there are only simple rotations
(90, 180 or 270 degrees) and use a tag for those cases. This is a common scenario
when recording with mobile devices

https://bugzilla.gnome.org/show_bug.cgi?id=679522
2014-05-24 15:38:54 -04:00
Thiago Santos
f0b99d96a9 qtdemux: add tag mappings for _swr, _mak and _mod tags
swr -> Application name
mak -> device manufacturer
mod -> device model
2014-05-23 03:15:42 -03:00
Sebastian Dröge
1cdd3765d6 goom: Use fabs() instead of abs() to calculate the floating point absolute value
tentacle3d.c:268:7: error: using integer absolute value function 'abs' when
      argument is of floating point type [-Werror,-Wabsolute-value]
  if (abs (tmp - fx_data->rot) > abs (tmp - (fx_data->rot + 2.0 * G_PI))) {
      ^
2014-05-19 11:24:06 +02:00
Sebastian Dröge
97fb3655df debugutils: Properly calculate the difference with unsigned types
tests.c:161:16: error: taking the absolute value of unsigned type
      'unsigned long' has no effect [-Werror,-Wabsolute-value]
    t->diff += labs (GST_BUFFER_TIMESTAMP (buffer) - t->expected);
2014-05-19 11:21:36 +02:00
Aleix Conchillo Flaqué
782d65cab1 rtspsrc: always use a random ssrc for the internal session
Use a random SSRC different than 0 for the internal session SSRC.

https://bugzilla.gnome.org/show_bug.cgi?id=730212
2014-05-16 16:58:44 +02:00
Wim Taymans
d004eda79d rtpsession: update last_activity when sending RTP
Also update last_activity when doing something with the internal
source to make sure don't timeout early.

See https://bugzilla.gnome.org/show_bug.cgi?id=730217
2014-05-16 16:55:17 +02:00
Aleix Conchillo Flaqué
a62b280873 rtpbin: update rtp encoder/decoder docs
Use %u in RTP encoder/decoder pads to match other rtpbin pads.

https://bugzilla.gnome.org/show_bug.cgi?id=730146
2014-05-15 15:48:21 +02:00
George Kiagiadakis
7e2138794f rtpsession: remove unused if branch
1) sources that have sent BYE in the past cannot be senders, since
they would have timed out to being receivers in the meantime...
2) sources that have sent BYE are now being removed earlier inside
this function
2014-05-14 16:01:50 +02:00
George Kiagiadakis
85d4c031d4 rtpsession: cleanup sources that have sent BYE 2014-05-14 16:01:50 +02:00
George Kiagiadakis
7d7840cc4a rtpsession: unify nested if clauses 2014-05-14 16:01:50 +02:00
George Kiagiadakis
0e6a31411b rtpsession: timeout internal sources that are inactive for a long time and send BYE 2014-05-14 16:01:50 +02:00
Aleix Conchillo Flaqué
bcd469ff31 rtpjitterbuffer: don't stop looping if event found in the queue
If we are inserting a packet into the jitter queue we need to keep
looping through the items until the right position is found. Currently,
the code stops as soon as an event is found in the queue.

Regarding events, we should only move packets before an event if there
is another packet before the event that has a larger seqnum.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=730078
2014-05-14 10:23:28 +02:00
Adrien SCH
8ac30d4c26 matroskamux: fix the memory leak of language attribute
https://bugzilla.gnome.org/show_bug.cgi?id=728418
2014-05-13 19:55:21 -03:00
Edward Hervey
420661bd95 qtdemux: Fix leak of palette_data in error cases
CID #1212151
2014-05-12 16:56:35 +02:00
Edward Hervey
112d948b7e qtmux: Free node_header in error cases
CID #1212134
2014-05-12 16:53:32 +02:00
Edward Hervey
6c4882996f flvdemux: Don't use WARNING for not-linked flow return
Pollutes debug logs for no reason. It's only an error if all pads
return not-linked
2014-05-12 13:46:01 +02:00
Edward Hervey
c09b14c931 flvdemux: Skip unknown tags in push-mode
We add a new mode (SKIP) in push-mode to skip tags that we don't known about

Partially fixes https://bugzilla.gnome.org/show_bug.cgi?id=670712
2014-05-12 13:45:06 +02:00
Wim Taymans
b2e1598e4a rtpjitterbuffer: increment accepted packets after loss
When we detect a lost packet, expect packets with higher
seqnum on the input.

Also update the unit test.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729524
2014-05-09 18:10:32 +02:00
Jason Litzinger
9068e1bb8e Add new test case. 2014-05-09 18:10:32 +02:00
Eric Trousset
bd51aa7aa8 qtdemux: don't respond to a position query in BYTE format with a TIME position
https://bugzilla.gnome.org/show_bug.cgi?id=729553
2014-05-09 16:12:45 +01:00
Tim-Philipp Müller
9872c19491 matroskademux: don't leak doctype string in error code path
CID 1212145.
2014-05-09 14:22:42 +01:00
Tim-Philipp Müller
615f6e55c1 flacparse: skip PICTURE headers without any image data
Fixes warning if the image length is 0.
2014-05-07 00:58:15 +01:00
Guillaume Desmottes
d089f99a39 rtp/README: update pipelines to work with 1.0
- Use gst-libav encoders/decoders instead of gst-ffmpeg
- gstrtpjitterbuffer -> rtpjitterbuffer
- gst-launch-0.10 -> gst-launch-1.0
- Add 'videoconvert' element
- xvimagesink -> autovideosink

https://bugzilla.gnome.org/show_bug.cgi?id=729247
2014-05-05 20:23:56 -04:00
Vincent Penquerc'h
ec38c62563 matroska: rejig test to avoid undefined shift behavior
Coverity 1195121, 1195120
2014-05-05 14:44:57 +01:00
Vincent Penquerc'h
9589c43516 matroskamux: ensure we don't dereference a NULL pointer
while working out the codec ID.

Coverity 1195148
2014-05-05 14:32:06 +01:00
Olivier Crête
b2a52035bf rtprtxreceive: Wait until timeout to clear association requests
If two streams request a retranmission for the same SSRC, ignore the second
one if the first oen is less than one second old, otherwise time out the first
one and ignore the second.
2014-05-04 22:36:59 -04:00
Olivier Crête
0742a5a257 rtpmux: Always let upstream chose the ssrc if it wishes 2014-05-04 19:11:03 -04:00
Mark Nauwelaerts
6c584bc833 rtpjitterbuffer: avoid stall by corrupted seqnum accounting 2014-05-04 13:38:26 +02:00
Olivier Crête
2e54d38dd0 rtpsession: Keep local conflicting addresses in the session
As we now replace the local RTPSource on a conflict, it's no longer possible
to keep local conflicts in the RTPSource, so they instead need to be kept
in the RTPSession.

Also fix the rtpcollision test to generate multiple collisions instead of
one by change the address, as otherwise we detected that it was a single one.
2014-05-03 18:30:20 -04:00
Sebastian Dröge
1d4404d883 Release 1.3.1 2014-05-03 18:02:23 +02:00
Sebastian Dröge
859c751a5d imagefreeze: Set segment position to the stop position of the buffer 2014-05-02 17:14:29 +02:00
Sebastian Dröge
4282d75597 imagefreeze: Properly report errors before stopping the srcpad task 2014-05-02 17:14:29 +02:00
Sebastian Dröge
4933394d35 imagefreeze: Error out if we have no caps yet 2014-05-02 17:14:29 +02:00
Vincent Penquerc'h
218294b9f3 wavparse: avoid dividing by a 0 blockalign
This can be 0. In that case, do not try to cut off the last few
bytes from the last buffer.

Coverity 1146971
2014-05-02 14:49:27 +01:00
Vincent Penquerc'h
590e20cbc9 matroskamux: do not use uinitialized clut on error
If we're missing part of the clut, do not try to use it. It seems
very likely the break was meant to break out of the switch rather
than from the loop.

Coverity 1139878
2014-05-02 14:25:01 +01:00
Vincent Penquerc'h
d917c94037 flxdec: fix integer overflow
Coverity 1139859
2014-05-02 14:18:08 +01:00
Vincent Penquerc'h
60ba2d7aee rtpqdmdepay: remove pointless check
Besides, the pointer was dereferenced earlier anyway.

Coverity 1139853
2014-05-02 14:09:02 +01:00
Vincent Penquerc'h
a846e84349 rtspsrc: remove duplicate test
item was dereference previously.

While there, reorder some test for faster early out.

Coverity 1139844
2014-05-02 14:06:25 +01:00
Vincent Penquerc'h
5c22bcf6e9 matroska: blindly fix writing variable length negative values
Spotted while fixing something else in the area.

Nothing calls this with a negative value.
2014-05-02 13:33:02 +01:00
Vincent Penquerc'h
5b9fa4e63a matroska: do not lose the top bits when writing a > 32 bit value
Coverity 1139806
2014-05-02 13:29:33 +01:00
Vincent Penquerc'h
10663decd9 videoflip: add missing break in switch
Coverity 1139755
2014-05-02 12:10:26 +01:00
Vincent Penquerc'h
a0bc24558e matroska: do not try to call gst_pad_query_default on a NULL pad
gst_matroska_parse_query can be called explicitely with a NULL pad.
If we reach this point with a NULL pad, fail the query.

Coverity 1139715
2014-05-02 11:39:39 +01:00
Vincent Penquerc'h
3915884017 matroska: do not return GST_FLOW_OK if we did not get a buffer
Coverity 1139714 (which will likely come back in another guise,
as the _read_init call can have a failing _map)
2014-05-02 11:28:01 +01:00
Vincent Penquerc'h
f5a9f5e221 matroska: catch failure to map buffer
Avoids dereferencing NULL.

Coverity 1139712
2014-05-02 11:20:33 +01:00
Vincent Penquerc'h
94720fd3a1 avimux: refuse caps with invalid framerate
Coverity 1139701
2014-05-02 10:53:00 +01:00
Vincent Penquerc'h
1be86ebb2a qtmux: handle 0 size packets without dividing by 0
Coverity 1139691
2014-05-02 10:21:09 +01:00
Vincent Penquerc'h
b692539b55 qtdemux: guard against invalid frame size to avoid division by 0
Coverity 1139690
2014-05-02 09:49:32 +01:00
Vincent Penquerc'h
436c8c11a0 qtdemux: trivial typo fix 2014-05-02 09:49:17 +01:00
Vincent Penquerc'h
0253db6d36 mpegaudioparse: remove dead code
A stricer check is already done earlier, and integer overflows
do not seem possible here.

Coverity 1139675
2014-04-30 17:48:53 +01:00
Vincent Penquerc'h
a55b8e9c00 rtpvrawpay: guard against pathological "no space" condition
Even if one woul hope one pixel can fit in a MTU, ensure we do not
overwrite a buffer if this is not the case.

Spotted while looking at Coverity 1208786
2014-04-30 14:50:44 +01:00