Age | Commit message (Collapse) | Author | Files | Lines |
|
error: comparison of constant -1 with expression of type
'GstSrtpCipherType' is always false
|
|
|
|
error: comparison of unsigned expression < 0 is
always false [-Werror,-Wtautological-compare]
|
|
|
|
|
|
error: comparison of constant -1 with expression
of type 'const GstVideoFormat' is always false
|
|
|
|
error: variable 'image_type' is used uninitialized whenever
'if' condition is false [-Werror,-Wsometimes-uninitialized]
|
|
|
|
|
|
|
|
- Length of NIT stream descriptors was not detected correct
- Reserved bits was not set according to EN 300 468, ISO/IEC 13818-1
- Also set output data size if the section was previously packetized
https://bugzilla.gnome.org/show_bug.cgi?id=723892
|
|
To where they're needed
|
|
|
|
we want to stop if one OR the other is NULL.
|
|
|
|
Rewrite of the PAT/PMT section handling to use the mpeg-ts library
|
|
The muxer is now able to include DVB sections in the transport stream.
The si-interval property will determine how often the SI tables are
muxed into the stream.
The section is handled by the mpeg-ts library. Below is a small example
that will include a Netork Information Table with a Network Name
descriptor in the stream.
GstMpegTsNIT *nit;
GstMpegTsDescriptor *descriptor;
GstMpegTsSection *section;
GstElement *mpegtsmux;
gst_mpegts_initialize ();
nit = gst_mpegts_section_nit_new ();
nit->actual_network = TRUE;
descriptor = gst_mpegts_descriptor_from_dvb_network_name ("Network name");
g_ptr_array_add (nit->descriptors, descriptor);
section = gst_mpegts_section_from_nit (nit);
// mpegtsmux should be retrieved from the pipeline
gst_mpegts_section_send_event (section, mpegtsmux);
gst_mpegts_section_unref (section);
|
|
Support for registration descriptor (0x05)
Add function to create a descriptor with custom tag and data
|
|
Descriptor tag is 0x59
|
|
Descriptor tag is 0x56
|
|
|
|
|
|
Add function to create a Network Name DVB descriptor.
|
|
Functions that will enable user to create Network Information Tables.
|
|
The network_id is stored in the subtable extension. Make a field
in the GstMpegTsNIT for better code readability
|
|
Added function that enables the user to send a GstMpegTsSection as
an event to a GstElement. (i.e. mpegtsmux)
|
|
Sections needs to be packetized for use in i.e. mpegtsmux.
These functions handles the generic common parts of a GstMpegTsSection
|
|
|
|
This can be used to create descriptors with appropriate character maps
|
|
Parsing of control codes requires a big endian character map
|
|
To use in conversions from UTF-8 to another character map
|
|
--tag=CC is needed for static build
|
|
The original code (old mpegtsparse) from which this plugin was based on
was dual-licensed. This allowed usage of the code under any of the
licenses (which including LGPL):
"""
* Alternatively, the contents of this file may be used under the terms of
* the GNU Lesser General Public License Version 2 or later (the "LGPL"),
* in which case the provisions of the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of the MPL or the LGPL.
"""
When refactored (leading to the creation of this new plugin), I chose all
new code to be LGPL-only (which was allowed for pre-existing code) by removing
the MPL sections.
The headers were all updated, but not the plugin license field. This commit
fixes this.
|
|
The thread that calls the success/failure callback can be the
same that is adding/removing the element as the IDLE probe can
happen instantly if the pad is not 'busy'.
This required moving some checks for the callback counter around
as well as removing some pad pushes from the main test thread as
they were made useless after the IDLE pad probe was fixed in core
by commit 0324358ebc8122a41ab499a3ef7973b61c3e621b
|
|
In case the test fails the message won't be returned and it
will lead to an assertion that might be misleading to those
debugging the issue.
|
|
In order to be able to change the caps on multiple capsfilters the
source element needs to be stopped, otherwise it will get a few
reconfigure events and might try to renegotiate while the bin
is still transitioning its caps, leading to a not-negotiated failure
and the image capture won't happen because the source will be
unusable.
The solution is to keep the source in paused while the caps are being
changed in the bin, and then bring the element back to playing once
it is done. Unfortunately this increases the image capture latency,
but it should always work.
A possible improvement to reduce the latency is to add another signal
to be called before 'start-capture': 'prepare-capture'. At this step
the camera source should set all caps it needs and get the source
ready for doing the capture as soon as 'start-capture' is called.
This can be done on a future commit
|
|
Probably a left over from 0.10 -> 1.x porting
|
|
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=723134
|
|
Copied from wavparse, helps with CPU usage on high bitrate
files.
|
|
VideoToolbox.h... so disable it on OSX if that header is missing.
https://bugzilla.gnome.org/show_bug.cgi?id=723508
|
|
In particular, this fixes seeking back to the start reading data
out of sync with sample start granularity, yielding swapped channels.
|
|
Tests needed stream start at beginning and segment after the
caps event
|
|
|
|
* stream-start-id is mandatory at the beginning, so add that to the
gdp headers
* caps must be sent before new segment, invert the order from legacy
0.10 code
And fix the tests as a ref is now kept for those buffers that compose
the header
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=723398
|
|
It is not perfect but it allows us to be sure that the mandatory 'framerate'
field is present in the caps.
As soon as some information is found in the stream, that will be
updated.
https://bugzilla.gnome.org/show_bug.cgi?id=723243
|
|
Most of the tests weren't updated after the sticky events order
and stream start. Fix that and refactor those tests check that
are the same to some common functions.
Those functions still don't actually test the content but at
least now they are in a single place and can be improved
without replication
|
|
Even if we don't want to push the caps event, a stream-start must
be present before any data in 1.x
|