Stéphane Cerveau
762e3c31b5
flac: allow per feature registration
...
Split plugin into features including
dynamic types which can be indiviually
registered during a static build.
More details here:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/876 >
2021-03-29 12:45:21 +02:00
Sebastian Dröge
c194390ce9
flacenc: Pass audio info from set_format() to query_total_samples() explicitly
...
This fixes writing of the seek table header.
gst_audio_encoder_get_audio_info() will still return old/unset audio
info until set_format() has actually returned, which then results in
query_total_samples() to always return 0.
Thanks to Jacob Kauffmann for debugging this and finding the main cause.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/756
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/661 >
2020-07-03 06:55:38 +00:00
Mathieu Duponchelle
f63299ff2f
plugins: uddate gst_type_mark_as_plugin_api() calls
2020-06-06 00:42:25 +02:00
Mathieu Duponchelle
37c619f995
plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types
2020-06-03 22:44:09 -04:00
Mathieu Duponchelle
3429ddde38
docstrings: port ulinks to markdown links
2019-08-23 18:56:01 +02:00
Thibault Saunier
0a6a62aa76
docs: Port all docstring to gtk-doc markdown
2019-05-13 10:24:40 -04:00
Julian Bouzas
2ebdd70c21
flac: report latency in flacenc and flacdec
...
The FLAC specification states that the data is processed in blocks, regardless of the number of channels. Thus, The latency can be calculated using the blocksize and rate. For example a 1 second block sampled at 44.1KHz has a blocksize of 44100
2019-03-25 15:14:32 +01:00
Tim-Philipp Müller
7717d08835
flacenc: fix other icon counter check
...
It's never going to be 0 if we first increment and then check.
2017-01-14 15:27:37 +00:00
Tim-Philipp Müller
bc6a9327f4
flacenc: also set PICTURE tag width and height if available
2017-01-14 15:05:36 +00:00
Tim-Philipp Müller
23fb9ead5d
flacenc: fix encoder init error with some GST_TAG_PREVIEW_IMAGEs
...
The encoder fails to initialise when we try to set GST_TAG_PREVIEW_IMAGEs
sent to use by qtdemux from iTunes-generated m4a files. We should
not just blindly translate the PREVIEW tag to file icon image types,
but check if the specific conditions required are met (i.e. image
type 1 must be a 32x32 PNG icon, and what we're getting is 500x500).
https://bugzilla.gnome.org/show_bug.cgi?id=776962
2017-01-14 14:58:52 +00:00
Vineeth TM
1071309870
good: use new gst_element_class_add_static_pad_template()
...
https://bugzilla.gnome.org/show_bug.cgi?id=763076
2016-03-24 14:32:20 +02:00
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