summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* qtdemux: support seeking of CENC encrypted streams1.6Alex Ashley2016-04-211-4/+4
| | | | | | | | | | | | | | | | | | | When playing a stream that has been protected by DASH CENC, playback will fail if a seek is performed. Qtdemux produces the error "stream is protected using cenc, but no cenc protection system information has been found" and playback stops. The problem is that gst_qtdemux_reset() gets called as part of the FLUSH during a seek. This function frees the protection_system_ids array. When gst_qtdemux_configure_protected_caps() is called after the seek has completed, the protection_system_ids array is empty and qtdemux is unable to create the correct output caps for the protected stream. This commit changes it to only free the protection_system_ids on hard resets. https://bugzilla.gnome.org/show_bug.cgi?id=761787
* Revert "matroskademux: send custom event with DVD subtitles frame size"Jan Schmidt2016-04-161-24/+1
| | | | | | This reverts commit 1c65828968f4b0c7c344bf46606af3404698d444. Didn't mean to push this patch to 1.6
* Revert "pulsesink: uncork if needed upon commit"Jan Schmidt2016-04-161-6/+0
| | | | | | | | | | | | | | | This reverts commit 0dd46accf6d282ff07065852bd91c85c78af3394. With some audiosinks, starting the ringbuffer on the first commit causes audio glitches at startup by starting to output segments from the ringbuffer before it has been filled / fully prerolled. This doesn't usually happen with pulsesink because we map the pulseaudio ringbuffer directly, but we should keep things consistent with other sinks with regards to startup latency, plus it gives more headway to avoid glitching, should the initial 2nd segment take more than 10ms to generate. https://bugzilla.gnome.org/show_bug.cgi?id=657076
* matroskademux: send custom event with DVD subtitles frame sizeArnaud Vrac2016-04-161-1/+24
| | | | | | | | The event is named application/x-gst-dvd-frame-size instead of application/x-gst-dvd, otherwise the clut event might be overwritten by this one since both are sticky. https://bugzilla.gnome.org/show_bug.cgi?id=685282
* Update RELEASE with more bug details after releaseTim-Philipp Müller2016-04-141-0/+17
|
* Release 1.6.41.6.4Tim-Philipp Müller2016-04-1473-138/+635
|
* rtpmux: Forward sticky events on buffer lists too, not only on buffersPaolo Pettinato2016-04-131-0/+13
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=764933
* v4l2object: fix capture with bayer formats other than bggrAlban Bedel2016-04-071-1/+11
| | | | | | | | gst_v4l2_object_get_caps_info() always return V4L2_PIX_FMT_SBGGR8 for all bayer formats. This is obviously broken if the device use another ordering. Fix this by properly reading the format parameter. https://bugzilla.gnome.org/show_bug.cgi?id=763318
* v4l2: fix colorimetry for NV12Josep Torra2016-04-071-4/+13
| | | | | | | | Replicate V4L2_MAP_QUANTIZATION_DEFAULT macro behavior. At #v4l it was described that documentation might be wrong and that we should trust this macro instead. https://bugzilla.gnome.org/show_bug.cgi?id=762529
* v4l2: Re-add colorimetry field for RGB formatsNicolas Dufresne2016-04-071-25/+20
| | | | | | | | This time, check if it's an RGB format and sets the transformation matrix to identity. The rest of the colorimetry information is meaningfull and shall be kept. https://bugzilla.gnome.org/show_bug.cgi?id=759624
* v4l2: fix sRGB colorspace definitionWim Taymans2016-04-071-1/+0
| | | | | V4l2 can also use the sRGB colorspace for YUV formats and thus needs a default matrix.
* udpsrc: Add "loop" property for enabling/disabling multicast loopbackSebastian Dröge2016-04-062-1/+17
| | | | | | On POSIX, IP_MULTICAST_LOOP is a setting for the sender socket. On Windows it is a setting for the receiver socket. As such we will need it on udpsrc too to allow filtering out our own multicast packets.
* v4l2: Don't leak v4l2 objects and props on probe errorsNirbheek Chauhan2016-04-061-4/+5
|
* rtpjpegdepay: Don't send invalid frames downstream after packet loss or a ↵Nirbheek Chauhan2016-04-061-0/+13
| | | | | | | | | | | | | | | DISCONT After clearing the adapter due to a DISCONT, as might happen when some packet(s) have been lost, the depayloader was pushing data into the adapter (which had no header due to the clear), creating a headerless frame out of it, and sending it downstream. The downstream decoder would then usually ignore it; unless there were lots of DISCONTs from the jitterbuffer in which case the decoder would reach its max_errors limit and throw an element error. Now we just discard that data. It is probaby not worth trying to salvage this data because non-progressive jpeg does not degrade gracefully and makes the video unwatchable even with low packet loss such as 3-5%.
* rtpjpegpay: Allow different quantization tables for components 2 and 3Sebastian Dröge2016-04-061-15/+0
| | | | | | | | RFC 2435 mentions in section 4.1 that U/V use table number 1, but this seems just like an example. Some encoders are not following that and there seems to be no reason to reject their streams. https://bugzilla.gnome.org/show_bug.cgi?id=761345
* splitmuxsink: only try to create internal sink if it doesn't existThiago Santos2016-04-062-30/+61
| | | | | | | | This allows splitmuxsink to be reused after being put to NULL. Test included https://bugzilla.gnome.org/show_bug.cgi?id=762893
* udpsrc: Fix multicast group joining with provided sockets on WindowsSebastian Dröge2016-04-061-4/+33
| | | | | | | | | | | On Windows the socket will be bound to ANY instead of the multicast group, as binding to a multicast group does not work. Which would mean that we override src->addr to become ANY and won't automatically join a multicast group anymore on Windows. On Linux we would automatically join a multicast group, keep it consistent. https://bugzilla.gnome.org/show_bug.cgi?id=763093
* rtspsrc: avoid potentially overflowing expressionJihae Yi2016-04-061-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=757569
* dirctsoundsink: Setting volume should not unmuteThomas Roos2016-04-061-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=755106
* dirctsoundsink: Fix volume reset on unmuteThomas Roos2016-04-061-1/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=755106
* rgvolume: make tag list writable before modifying itTim-Philipp Müller2016-04-062-6/+11
| | | | | | | | | | | Making the event itself writable is not enough, it won't make the actual taglist in the event writable as well. Instead, just make a copy of the taglist and then create a new tag event from that if required, replacing the old one. Before we would inadvertently modify taglists upstream elements might still be holding on to. Add unit test for this as well. https://bugzilla.gnome.org/show_bug.cgi?id=762793
* rtspsrc: Properly error out if binding the UDP sockets failsSebastian Dröge2016-04-061-3/+14
| | | | udpsrc is not returning us a socket in that case.
* qtdemux: don't push encrypted buffer without cenc metadataPhilippe Normand2016-04-061-0/+6
| | | | | | | | | | When the cenc metadata is stored outside of the moof box and the stream is exposed it is possible that the cenc metadata hasn't been processed yet while the first buffer is being pushed. When this happens the buffer can't possibly be decrypted downstream so don't push it. https://bugzilla.gnome.org/show_bug.cgi?id=762516
* qtdemux: read saio aux_info_type as a FOURCCPhilippe Normand2016-04-061-1/+5
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=756897
* gst: Handle gst_pad_get_current_caps() returning NULL gracefullySebastian Dröge2016-04-064-3/+15
|
* gst: Don't assume that get_current_caps() returns non-NULL caps after ↵Dave Craig2016-04-066-24/+33
| | | | | | | | | | has_current_caps() Remove calls to gst_pad_has_current_caps() which then go on to call gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just use gst_pad_get_current_caps() and check for NULL. https://bugzilla.gnome.org/show_bug.cgi?id=759539
* aacparse: Handle gst_pad_get_current_caps() returning NULL gracefullyDave Craig2016-04-061-0/+4
| | | | | | This can happen when the pipeline is currently shutting down. https://bugzilla.gnome.org/show_bug.cgi?id=759539
* matroska-demux: Don't handle seek until readyLinus Svensson2016-04-061-0/+6
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=762542
* matroska-demux: Unref seek eventLinus Svensson2016-04-061-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=762542
* multifilesink: close file on write error with next-file mode is set to bufferAurélien Zanelli2016-04-061-1/+3
| | | | | | | | | | If we have an error during fwrite call, file stays open and thus next incoming buffer will trigger an assert when trying to opening a new file. This happens if we do not restart element, file is closed at stop, and if application handles the returned GST_FLOW_ERROR to keep bin alive. https://bugzilla.gnome.org/show_bug.cgi?id=762434
* avidemux: Fix buffer memory leakVineeth TM2016-04-061-0/+2
| | | | | | buffer being mapped is not being unmapped in some cases https://bugzilla.gnome.org/show_bug.cgi?id=762420
* rtpmanager: Don't warn for duplicate/reordered packetsStian Selnes2016-04-061-2/+2
| | | | | | This is a normal scenario and should not be a warning. https://bugzilla.gnome.org/show_bug.cgi?id=762208
* qtdemux: workaround for files with wrong color_table_id valueMatej Knopp2016-04-061-0/+8
| | | | | | Instead of erroring out, just use the default color table. https://bugzilla.gnome.org/show_bug.cgi?id=761637
* flvmux: plug leak(s) in error-scenarioHavard Graff2016-04-061-6/+22
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=762210
* flvdemux: fix eos event leakHavard Graff2016-04-061-2/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=762209
* qtdemux: plug leaks in cenc aux info parsingPhilippe Normand2016-04-061-0/+2
|
* tests: fix spurious souphttpsrc test timoutsTim-Philipp Müller2016-04-061-1/+2
| | | | | | | | Set GSETTINGS_BACKEND=memory, apparently there's something about fork() and the dconf backend (or whatever else that drags in or activates) that messes up locking and causes timeouts due to deadlocks in g_mutex_lock(), since everything works fine with CK_FORK=no as well.
* matroskademux: Unmap wavpack header buffer after creating itSebastian Dröge2016-04-061-0/+1
| | | | | | | Otherwise it will be mapped writable all the time and we can't read from it anywhere. https://bugzilla.gnome.org/show_bug.cgi?id=762239
* avidemux: Fix string memory leakVineeth TM2016-04-061-2/+1
| | | | | | codec_name is not being freed in all conditions leading to memory leak https://bugzilla.gnome.org/show_bug.cgi?id=762117
* jpegdec: Don't pass the same data over and overNicolas Dufresne2016-04-061-12/+6
| | | | | | | | | We already pass the entire frame to the decoder. If the decoder ask for more data, don't pass the same data again as this leads to infinit loop. Instead, simply fail the fill function to signal the problem with that frame. It will then be skipped properly. https://bugzilla.gnome.org/show_bug.cgi?id=761670
* rtpjpegpay: Skip APP and JPG markers and print warnings for unknown markersSebastian Dröge2016-04-061-2/+17
| | | | | | For APP/JPG markers the size is following and we have to skip that. This is not really a problem unless the marker contains e.g. a preview JPEG or something else that we might interprete as another marker.
* Revert "flacparse: push tags in pre_push_frame"Sebastian Dröge2016-03-151-6/+0
| | | | | | | | | | This reverts commit 4065fcb80a49924b70f0c8fc159dec0ff47943a1. flacparse should not push tags by itself, the base class is going to do that while properly merging in upstream tags. It just didn't because of a bug in the base class, which was hidden by this commit. https://bugzilla.gnome.org/show_bug.cgi?id=763553
* flacparse: push tags in pre_push_frameLuis de Bethencourt2016-03-021-0/+6
| | | | | | | Push a tag event before pre-roll if we have tags. This issue breaks tag reading via GstDiscoverer: https://bugzilla.gnome.org/show_bug.cgi?id=762660
* goom: Use goom_set_resolution() instead of recreating the goom instance when ↵Sebastian Dröge2016-02-271-0/+1
| | | | | | the resolution changes https://bugzilla.gnome.org/show_bug.cgi?id=762765
* Release 1.6.31.6.3Sebastian Dröge2016-01-2076-124/+384
|
* Update .po filesSebastian Dröge2016-01-2041-41/+41
|
* vp8enc: Ensure that we always have valid frame user data before using itSebastian Dröge2016-01-201-1/+10
| | | | Otherwise we're going to dereference NULL pointers.
* vpxdec: Unref frame in all code paths of handle_frame()Sebastian Dröge2016-01-202-8/+16
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=760666
* vpxenc: Unref frame on ERRORThibault Saunier2016-01-202-0/+2
| | | | | | | | All code paths for handle_frame() must somehow take ownership of the frame, be it by actually unreffing, forwarding the frame elsewhere or storing it for later. http://bugzilla.gnome.org/show_bug.cgi?id=760666
* vp9enc: Return FLOW_ERROR when an error accuresSebastian Dröge2016-01-201-1/+1
| | | | | | FALSE would mean FLOW_OK https://bugzilla.gnome.org/show_bug.cgi?id=760666