summaryrefslogtreecommitdiff
path: root/gst
AgeCommit message (Collapse)AuthorFilesLines
2015-10-20decodebin: return the possibly new chain in analyze_new_padMatthew Waters1-7/+15
In the case of analyzing a demuxer chain, analyze_new_pad may create a new GstDecodeChain. This was not propagated to the calling function which as of [d50b713f decodebin: set the decode pad target before setting elements to PAUSED] is now required to be able to expose the correct pad. https://bugzilla.gnome.org/show_bug.cgi?id=742924
2015-10-20playsink: relink text_pad in case of reconfigurationRajat Verma1-5/+5
In case of reconfiguration, text_pad should be re-connected with stream synchronizer sink pad. Otherwise we'll leave an unlinked pad around if there always was a streamsynchronizer text pad. https://bugzilla.gnome.org/show_bug.cgi?id=756804
2015-10-19decodebin/playbin/playsink/subtitleoverlay: Post async-done on state change ↵Sebastian Dröge4-1/+8
failures https://bugzilla.gnome.org/show_bug.cgi?id=756611
2015-10-19playsink: Immediately error out if state change failsSebastian Dröge1-1/+3
Otherwise we chain up to the parent class' change_state function and might override the failure with SUCCESS. https://bugzilla.gnome.org/show_bug.cgi?id=756611
2015-10-19playbin/uridecodebin: Always post async-done immediately if we're a live ↵Sebastian Dröge2-2/+7
pipeline Not only if the base class told us, but also if one of our own elements did. https://bugzilla.gnome.org/show_bug.cgi?id=756611
2015-10-19decodebin: set the decode pad target before setting elements to PAUSEDMatthew Waters1-66/+23
Otherwise caps and context queries will disappear into nothing and therefore fail. With autoplug-query now actually working, users (such as playbin) can proxy these queries to the selected video sink and be able to select an more appropriate configuration. https://bugzilla.gnome.org/show_bug.cgi?id=731204
2015-10-15playsink: Fix volume element leakVineeth TM1-0/+6
In case sink implements a streamvolume interface, volume element is being got from the sink. But this is transfer full. So the memory should be freed before setting it to NULL. This was resulting in major memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=755867
2015-10-02videorate: remove unnecessary break statementVineeth T M1-2/+0
Trivial patch to remove unncessary break statement used after goto statement. https://bugzilla.gnome.org/show_bug.cgi?id=754054
2015-10-02encodebin: Fix special caseMathieu Duponchelle1-0/+8
Allows to run such a command line : gst-launch-1.0 uridecodebin uri=file:///home/meh/Music/sthg.mp4 ! \ encodebin profile-string="audio/x-wav|1" ! filesink location=sthg.wav Previously the code failed because wavenc is considered as a muxer. We still want encodebin to audio/x-wav as an AudioEncodingProfile, so this simple fix allows that. Ability to mux raw streams in containers such as matroskamux is a different issue. https://bugzilla.gnome.org/show_bug.cgi?id=751470
2015-10-02decodebin: free hidden groups at time of switching groupsRajat Verma1-1/+1
hidden groups should be freed at time of switching groups to avoid memory use from balloning up. https://bugzilla.gnome.org/show_bug.cgi?id=755770
2015-10-02videotestsrc: Don't fixate framerate if downstream didn't provide oneJan Schmidt1-1/+5
intersection with a downstream that accepts any video/x-raw caps with no further detail won't create a framerate field. If it's not in the caps, don't fixate it, just set it to 30/1
2015-10-01typefinding: minor clean-upTim-Philipp Müller1-4/+4
Remove unnecessary brackets from IS_MPEGTS_HEADER macro.
2015-10-01typefinding: mpeg-ts detection improvementPankaj Darak1-2/+7
Allow AFC to be 0 for null pid packets. https://bugzilla.gnome.org/show_bug.cgi?id=726117
2015-09-30subparse: detect closing tags even if there's a space after the slashTim-Philipp Müller1-5/+14
</ i> should be handled like </i> https://bugzilla.gnome.org/show_bug.cgi?id=755875
2015-09-17audiosink, multisocketsink: Fix error leak during failuresVineeth T M1-0/+1
https://bugzilla.gnome.org/show_bug.cgi?id=755143
2015-09-16uridecodebin: Use the correct caps name for MS Smooth Streaming manifestsSebastian Dröge1-1/+1
Thanks to John Chang <r97922153@gmail.com> for reporting. https://bugzilla.gnome.org/show_bug.cgi?id=755098
2015-09-11playback: Add POINTER_TO_ULONG() macro for consistencySebastian Dröge1-5/+6
2015-09-11playback: fix build error for 64bit Windows build by MinGWKouhei Sutou1-2/+4
Casting to gpointer from gulong generates the following warning with 64bit Windows target MinGW: gstplaybin2.c: In function 'pad_added_cb': gstplaybin2.c:3476:7: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] (gpointer) group_id_probe_handler); ^ cc1: all warnings being treated as errors We should cast to guintptr from gulong before we cast to gpointer. https://bugzilla.gnome.org/show_bug.cgi?id=754755
2015-09-03videoscale: fix gamma-decode optionWim Taymans1-1/+2
We need to use the enum to configure the option now.
2015-08-28playsinkconvertbin: implement accept-caps handlerThiago Santos1-0/+47
The default one will just go through the internal elements which might just be identity when it is in passthrough which will lead to the query being handled by the downstream sink, ignoring all that playsinkconvertbin could actually handle and convert. https://bugzilla.gnome.org/show_bug.cgi?id=754235
2015-08-19subparse: use g_clear_error instead of g_error_freeEunhae Choi1-6/+6
To avoid invalid pointer accees the err pointer should be set to NULL. By using g_clear_error() it calls free and clear the pointer. https://bugzilla.gnome.org/show_bug.cgi?id=753817
2015-08-18Revert "decodebin: Handle the preroll multi-queue size"Sebastian Dröge1-38/+6
This reverts commit 5c8ef0ea05123506dfc35c70c8b165bca7435dad.
2015-08-18Revert "decodebin: Store extra_buffer_required per group, not globally"Sebastian Dröge1-31/+26
This reverts commit 1ea81114ea6bd48b581f19002018680933aa7a12.
2015-08-18Revert "decodebin: If extra buffers are going to be required, we're still ↵Sebastian Dröge1-11/+10
prerolling" This reverts commit a3b24f0241bd55a005a072ba8ddcd53e0fdbf827.
2015-08-18decodebin: If extra buffers are going to be required, we're still prerollingSebastian Dröge1-10/+11
2015-08-18decodebin: Store extra_buffer_required per group, not globallySebastian Dröge1-26/+31
It's only relevant for each group, and by storing it in the group we have locking and everything else like for the other buffering-related variables. Locking looks a bit fishy still, but it was like that for a long time already so shouldn't be worse than before.
2015-08-18decodebin: Handle the preroll multi-queue sizeMyoungsun Lee1-6/+38
Overview: There are some of interleaved streams which has long-term location of audio data. It mean the audio data is located far away more than multiqueue size. In this case, because of multiqueue overrun, the pipeline is stopped. To prevent hanging-like state, the decodebin needs to handle the queue size. Caused: The multiqueue size is not enough, the pipeline will stay being stalled status and decodebin cannot complete to build decode chain. In this issue file, decodebin did not receive no_more_pads signal or audio data yet. Steps to Reproduce: play the high-resolution(4K file) files or some streaming media(push mode). Actual Results: There is no audio or subtitle. We can see only video or infinite loading. Resolution: Decodebin detect this problem, and add extra buffer size to multiqueue. The multiqueue is larger than before, the next data can be pushed the downstream element. Additional Information: The max-preroll extra buffer size is set 8MB. We can use total pre-roll buffer 10MB. Only first overrun callback can handle multiqueue size. https://bugzilla.gnome.org/show_bug.cgi?id=733235
2015-08-18typefindfunctions: Add typefinder for TTML+XMLSebastian Dröge1-0/+15
Used in DASH among other things, as SMPTE Timed Text.
2015-08-16decodebin: Fix list iterationEdward Hervey1-1/+1
We were using the wrong variable ... CID #1316477
2015-08-15decodebin2: Handle flushing with multiple decode groupsEdward Hervey1-0/+116
When an upstream element wants to flush downstream, we need to take all chains/groups into consideration. To that effect, when a FLUSH_START event is seen, after having it sent downstream we mark all those chains/groups as "drained" (as if they had seen a EOS event on the endpads). When a FLUSH_STOP event is received, we check if we need to switch groups. This is done by checking if there are next groups. If so, we will switch over to the latest next_group. The actual switch will be done when that group is blocked. https://bugzilla.gnome.org/show_bug.cgi?id=606382
2015-08-15decodebin2: Forward event/queries for unlinked groupsEdward Hervey1-0/+80
When upstream events/queries reach sinkpads of unlinked groups (i.e. no longer linked to the upstream demuxer), this patch attempts to find the linked group and forward it upstream of that group. This is done by adding upstream event/query probes on new group sinkpads and then: * Checking if the pad is linked or not (has a peer or not) * If there is a peer, just let the event/query follow through normally * If there is no peer, we find a pad to which to proxy it and return GST_PROBE_HANDLED if it succeeded (allowing the event/query to be properly returned to the initial called) Note that this is definitely not thread-safe for the time being https://bugzilla.gnome.org/show_bug.cgi?id=606382
2015-08-15typefind: Make the H.264 typefind a tiny bit more lenient.Jan Schmidt1-2/+6
When we see prefix NALs before a Subset SPS has been spotted, it might just be because the stream was truncated at the start, so don't count those as either 'bad' or 'good' packets.
2015-08-14playsinkconvertbin: remove accept-caps handlingThiago Santos1-23/+0
Just let the internal element of the bin do it instead of forcing a caps query to do it.
2015-08-13videorate: fixate the pixel-aspect-ratioThiago Santos1-0/+4
If the pixel-aspect-ratio is not fixed, try to get it as close to 1/1 as possible https://bugzilla.gnome.org/show_bug.cgi?id=748635
2015-08-10videorate: add support for bayer formatsJoan Pau Beltran1-2/+4
Since the videorate element just duplicates or drops frames to achieve the desired framerate, it can accept video/x-bayer media (in any format), which are not present in the current caps. Just add "video/x-bayer(ANY);" to the caps of the static pad template (fixing line style to pass the indent commit hook). https://bugzilla.gnome.org/show_bug.cgi?id=753483
2015-08-05decodebin: fix deadend_details string leakVineeth TM1-1/+2
deadend_details need not be returned when the pad is not a deadend. Hence checking if res value is TRUE and clearing the string instead of passing it on https://bugzilla.gnome.org/show_bug.cgi?id=753088
2015-08-04videotestsrc: Don't set DTS on bufferNicolas Dufresne1-4/+4
DTS is for encoded data and have no meaning for raw. It better to not set it, as it's confusing. https://bugzilla.gnome.org/show_bug.cgi?id=752791
2015-07-22typefind: Treat *.umx (Unreal Music Package) as audio/x-modVille Skyttä1-1/+7
https://bugzilla.gnome.org//show_bug.cgi?id=752436
2015-07-16typefindfunctions: add DASH MPD typefinderTim-Philipp Müller1-0/+17
Moved from dashdemux plugin in -bad.
2015-07-16Update mailing list address from sourceforge to freedesktopTim-Philipp Müller2-2/+2
2015-07-15video: improve loggingWim Taymans2-3/+2
Add logging categories for most video objects. Remove some useless debug lines in video-info and videotestsrc. Add a performance debug line in the video scaler.
2015-07-14socketsrc: add caps propertyWim Taymans2-0/+65
Add caps property that allows the src to easily negotiate a format.
2015-07-14decodebin: only try to expose complete groupsThiago Santos1-2/+6
When switching to a new chain it might be that this new chain is not yet ready to be exposed so check it before exposing. Can happen with mpegts that might delay adding pads or pushing data until it has found the PMT/PAT/PCR and that may take a while depending on the stream. It happened frequently with HLS: http://vevoplaylist-live.hls.adaptive.level3.net/vevo/ch1/appleman.m3u8
2015-07-14decodebin: fix typoThiago Santos1-1/+1
Hided -> hid
2015-07-10playsink: Require the streamvolume interface on the sink when using the ↵Sebastian Dröge1-74/+43
sink's volume/mute properties If the sink has properties named volume and mute, we have no idea about their meaning. The streamvolume interface standardizes the meaning. In the case of osxaudiosink for example, the current volume property has a range of 0.0 to 1.0, but we need 0.0 to 10.0 or similar. Also osxaudiosink has no mute property. As such, the volume element should be used here instead. https://bugzilla.gnome.org/show_bug.cgi?id=752156
2015-07-06typefind: also check moof to recognize video/quicktimeThiago Santos1-0/+1
Helps recognizing fragmented files with the right type
2015-07-03docs: order and canonicalize the -sections.txt fileStefan Sauer2-3/+0
Have all sections in alphabetical order. Also make the macro order consistent. This is a preparation for generating the file. Remove GET_CLASS macro for some elements, since it is not used and the header is not installed.
2015-07-03videoscale: fix debug categoriesStefan Sauer2-6/+3
Use a local category for the default category and fix the import for the performance category.
2015-06-29playbin: remove unnecessary breakdanny song1-1/+0
https://bugzilla.gnome.org/show_bug.cgi?id=751690
2015-06-29audioresample: Also copy metas if their API has no tags attached to itSebastian Dröge1-3/+3
This is the default basetransform behaviour, being more strict than that is not really useful.