Dave Craig
211c8492b3
gst: Don't assume that get_current_caps() returns non-NULL caps after 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
2016-02-23 18:11:42 +02:00
Tim-Philipp Müller
6c09710292
flacenc: avoid potential string overflow
...
We don't necessarily have full control over the input tags, so
it's possible that the ISRC tag contains a longer string than
expected, in which case we'd write over the end of the static-size
13 byte buffer that is FLAC__StreamMetadata_CueSheet_Track::isrc.
Make sure to only copy the ISRC if it's not too long, and make
sure the buffer we write to is always NUL-terminated by using
g_strlcpy().
CID 1324931.
2015-09-28 20:25:22 +01:00
Thiago Santos
13d49d9b3e
flacenc: actually return true for accept-caps query handling
2015-08-17 14:33:35 -03:00
Thiago Santos
0899529222
flacenc: remove single entry if from loop
...
Iterate from the 2nd channel on and create the 1 channel struct
outside to make loop structure simpler and only slightly faster.
2015-08-16 14:30:57 -03:00
Thiago Santos
a00546e078
flacenc: implement proper accept-caps
...
Should just compare with what can be immediatelly accepted by
the element. flacenc can't renegotiate so if it has a caps already
it should only accept if it is that caps otherwise just use the
template caps
2015-08-16 14:30:57 -03:00
Thiago Santos
3553493d96
flacenc: improve sink pad template caps
...
Removes the need for custom caps query handling and makes it more
correct from the beginning on the template. It is a bit uglier
to read because there is 1 entry per channel but makes code easier
to maintain.
2015-08-16 14:30:57 -03:00
Vincent Penquerc'h
b18d8b085a
flacenc: update output segment stop time to match clipped samples
...
This will let oggmux generate a granpos on the last page that properly
represents the clipped samples at the end of the stream.
2014-10-30 14:30:30 +00:00
Tim-Philipp Müller
85501e6c2a
flacenc: order format in template caps by preference
...
To minimise risk of bad fixation, though audioconvert
at least should be smart enough to avoid it.
2014-02-04 21:26:56 +01:00
Rafał Mużyło
ac4df5e2c5
gst: Don't use endianness-specific S8 audio format
...
It does not exist.
https://bugzilla.gnome.org/show_bug.cgi?id=723331
2014-02-04 13:44:29 +01:00
Sebastian Dröge
de7e1cb6dd
flacenc: Properly set headers via the base class instead of just pushing them downstream
...
Prevents buffers from being send before the caps and segment events.
2013-08-16 13:26:50 +02:00
Sebastian Dröge
c12c9e7632
flacenc: Fix handling of image tags
...
The caps should be used to get the mimetype and there is
only an info structure for the GstSample if the image-type
is not NONE.
2013-07-28 18:09:33 +02:00
Sebastian Dröge
2fa5c708f3
flacenc: Don't crash if there is no image tag information
...
https://bugzilla.gnome.org/show_bug.cgi?id=705018
2013-07-28 18:04:32 +02:00
Stefan Sauer
ddedf6b797
flac: add more logging
2013-04-17 20:29:02 +02:00
Stefan Sauer
ce06005f2a
flacenc: remove old since comments and update logging
...
Don't pretend that we have a timestamp on a buffer when we never set one.
2013-04-03 20:30:09 +02:00
Tim-Philipp Müller
83f9cfb928
flacenc: add more example pipelines
2013-03-23 13:11:02 +00:00
Tim-Philipp Müller
230cf41cc9
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Tim-Philipp Müller
4bb52bbadf
docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert
2012-08-27 21:20:30 +01:00
Anton Belka
59186f970d
flacenc: allow a TOC with single alternative top-level entry
...
Allow a TOC that has a single alternative top-level entry
with multiple sequence sub-entries
https://bugzilla.gnome.org/show_bug.cgi?id=540891
2012-08-10 14:24:28 +02:00
Anton Belka
fa86bf26df
flacenc: add TOC support
...
Add TOC as embedded cuesheets in flac files.
https://bugzilla.gnome.org/show_bug.cgi?id=54089
2012-08-07 18:04:41 +02:00
Tim-Philipp Müller
c074bfd0b9
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:10:16 +01:00
Mark Nauwelaerts
2e8260a787
flacenc: obtain image type from the sample info
2012-07-27 11:26:18 +02:00
Mark Nauwelaerts
e31bfd6ddb
flacenc: remove extraneous _unref
...
... since we did not obtain a buffer ref from the GstSample.
2012-07-27 11:25:49 +02:00
Robert Swain
7c94509243
flacenc: Update to use GstSample tag setting API
2012-07-27 10:14:23 +02:00
Mark Nauwelaerts
0f18a9aaaa
flacenc: only set complete output caps once
...
... so as to avoid downstream complaints about missing streamheaders.
2012-07-25 16:02:39 +02:00
Mark Nauwelaerts
c340deb8b6
flacenc: pass correct parameters to encoder lib
2012-07-25 16:02:38 +02:00
Mark Nauwelaerts
7e6338044c
flacenc: adjust to modified audioencoder getcaps helper API
2012-07-25 16:02:38 +02:00
Wim Taymans
f65495d405
update for audio api change
2012-06-08 10:11:12 +02:00
Tim-Philipp Müller
e09ae5736d
Use new gst_element_class_set_static_metadata()
2012-04-10 00:51:41 +01:00
Sebastian Dröge
b16f5637e8
ext: Update for GstAudioEncoder API changes
2012-03-30 12:18:45 +02:00
Mark Nauwelaerts
12d7acf6f6
flacenc: plug ref leak
2012-03-29 17:21:53 +02:00
Mark Nauwelaerts
03bde3f0d2
flacenc: query downstream for BYTE seeking support
2012-03-28 14:50:03 +02:00
Wim Taymans
c44cd8f55b
Merge branch 'master' into 0.11
...
unport gdkpixbuf
not merged: https://bugzilla.gnome.org/show_bug.cgi?id=654850
Conflicts:
docs/plugins/Makefile.am
docs/plugins/gst-plugins-good-plugins-docs.sgml
docs/plugins/gst-plugins-good-plugins-sections.txt
docs/plugins/gst-plugins-good-plugins.hierarchy
docs/plugins/inspect/plugin-avi.xml
docs/plugins/inspect/plugin-png.xml
ext/flac/gstflacdec.c
ext/flac/gstflacdec.h
ext/libpng/gstpngdec.c
ext/libpng/gstpngenc.c
ext/speex/gstspeexdec.c
gst/audioparsers/gstflacparse.c
gst/flv/gstflvmux.c
gst/rtp/gstrtpdvdepay.c
gst/rtp/gstrtph264depay.c
2012-03-22 11:53:24 +01:00
Wim Taymans
89105970f0
flacenc: fix streamheaders
...
Fix the caps of flacenc, the reference encoder only support 24 bits in
32 bits.
Set streamheader on output caps.
2012-03-13 12:40:37 +01:00
Ross Burton
265a5bfa9b
flacenc: generate seektables every 10 sec by default
...
Since this is what the command line tool does as well, it seems like
a better default.
2012-03-12 15:27:27 +01:00
Wim Taymans
a51ce46d90
flacenc: fix event handling
...
Fix dodgy segment event handling
Chain up to parent event handler
2012-02-27 13:05:33 +01:00
Tim-Philipp Müller
61d3a215a0
Merge commit '38516ad367128d83f9e156529018adb4433cd328' into 0.11
...
Conflicts:
ext/pulse/pulseaudiosink.c
gst/audioparsers/gstmpegaudioparse.c
2012-02-27 00:48:57 +00:00
Tim-Philipp Müller
3e9f191262
flacenc: fix get_caps function some more so that all structures have channel info
...
Set channels and channel-layout on the right structure; that is, the
structure we are going to append to the caps we are building, and not
the structure we are using as a template for all the structures. Fixes
first structure of the returned caps not having any channel info set
on it.
2012-02-22 17:39:16 +00:00
Tim-Philipp Müller
f0b076212f
flacenc: microoptimisation: avoid unnecessary list and string copies
2012-02-22 17:09:25 +00:00
Tim-Philipp Müller
9ce663f04d
flacenc: audio caps have a *list* of formats, not an array of formats
...
A list of things in caps is something where one is picked in the
course of negotiation. An array is always something that only makes
sense as a whole in that order.
2012-02-22 17:03:42 +00:00
Mark Nauwelaerts
38516ad367
flacenc: remove post-port bogus _unref
2012-02-22 18:03:11 +01:00
Tim-Philipp Müller
b7e96ebe37
flacenc: remove bogus pad locking that causes deadlocks
...
It's not clear why the pad object lock is taken here. But
gst_pad_{has,get}_current_caps() will try to take the lock
as well and deadlock, since it's not recursive.
2012-02-22 17:00:19 +00:00
Tim-Philipp Müller
9c5c33790a
flacenc: set right number of channels on caps in get_caps function
2012-02-22 16:59:42 +00:00
Wim Taymans
225e98d623
Merge branch 'master' into 0.11
...
Conflicts:
ext/flac/gstflacenc.c
ext/jack/gstjackaudioclient.c
ext/jack/gstjackaudiosink.c
ext/jack/gstjackaudiosrc.c
ext/pulse/plugin.c
ext/shout2/gstshout2.c
gst/matroska/matroska-mux.c
gst/rtp/gstrtph264pay.c
2012-02-10 16:23:14 +01:00
Vincent Penquerc'h
5ff31d446e
flacenc: fix event leak when there is no peer on the src pad
2012-02-03 14:53:31 +00:00
Sebastian Dröge
161229a384
flac: Use new audio encoder/decoder base class API for srcpad caps
2012-02-01 16:27:47 +01:00
Wim Taymans
bb2bd604e0
update for HEADER flag
2012-01-30 17:16:51 +01:00
Wim Taymans
b4630dd3e0
more memory API porting
2012-01-25 12:30:29 +01:00
Tim-Philipp Müller
8580dd86c9
eqMerge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/jack/gstjackaudiosink.c
ext/jack/gstjackaudiosrc.c
gst/matroska/matroska-mux.c
gst/matroska/matroska-read-common.c
gst/rtpmanager/gstrtpssrcdemux.c
2012-01-12 23:48:50 +00:00
Vincent Penquerc'h
483514528a
flacenc: do not drop the first data buffer on the floor (and leak it either)
2012-01-12 10:30:56 +00:00
Sebastian Dröge
a22a566c0b
flac: Port to the new raw audio caps
2012-01-06 09:40:55 +01:00