| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
This also does the following changes:
(1) pull the bufferpool code out into gstv4l2bufferpool.c, and make a
bit more generic so it can be used both for v4l2src and v4l2sink
(2) move some of the device probing/configuration/caps stuff into
gstv4l2object.c so it does not have to be duplicated between
v4l2src and v4l2sink
Fixes bug #590280.
|
| |
|
| |
|
|
|
|
|
|
| |
Whenever we see a gap, we flush the temporary packets (but not the adapter). If we
had some data temporarily stored it will be outputted (the sound will sound a bit
garbled... but that's how it sounds on MacOSX :)
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Reverse-engineered by comparing:
* A rtp hinted file provided by DarwinStreamingServer
* The output procued by DSS for that same file
Also used various streaming sources available on the internet to fine-tune
the code.
The header/codec_data extraction methods are from FFMpeg (LGPL).
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Request pads are removed by the element instance in PAUSED->READY
so we need to re-request pads for every run and link them again.
Last fix for bug #590447.
|
|
|
|
| |
Partially fixes bug #590447.
|
|
|
|
|
|
|
| |
Reset the have_video/have_audio flags and make sure to
properly release the request pads.
Partially fixes bug #590447.
|
| |
|
|
|
|
|
|
|
|
| |
Use some of the SDP attributes when they are present to specify the output
dimension and framerate. This allows us to receive jpeg frames larger than
2040 width/height.
Fixes #564437
|
| |
|
|
|
|
|
|
|
| |
Put the SDP attributes on the caps too so that they can be used by
depayloaders.
See #564437
|
|
|
|
|
|
| |
When creating a new probe, pass the server instead of the device string.
fixes #590401
|
|
|
|
| |
Someone might compile this code with -DG_DISABLE_ASSERT some day.
|
|
|
|
|
|
| |
Otherwise that code will just be expanded to nothing when compiled
-DG_DISABLE_ASSERT (PS: why is mainloop_start() called in the init
function and not when changing state to READY?)
|
|
|
|
|
|
|
|
|
|
| |
For some reason flac doesn't call our metadata callback when we operate
in push mode with unframed input, but that's where we set up the
newsegment event (since that's where we'd get the duration from the
stream info header), so we didn't send a newsegment event at all in this
case. Hack around this by storing a generic newsegment event for now
which will be used if we don't replace it with a better one that
includes the duration.
|
|
|
|
|
| |
Remove some callback indirections which are no longer needed because
there's only one decoder object type now. Also remove unused variable.
|
|
|
|
|
|
| |
gst_adapter_peek() will merge buffers as needed, which we can avoid
here since we're doing a memcpy anyway and then flush the copied
data from the adapter right away.
|
| |
|
|
|
|
| |
Basic unit test for flvmux. Fails miserably, hence disabled for now.
|
|
|
|
|
| |
In particular, test re-use of flvdemux in both pull and push mode
(see #583030).
|
|
|
|
|
|
|
|
|
| |
sizeof("foo") includes the string's NUL-terminator in the size returned,
but we're writing strings here with an explicit size at the beginning
and no NUL-terminator. In most cases using sizeof("foo") as length in
memcpy is not harmful, but it is where the string goes right at the
end of our buffer to write, since we don't allocate space for that
NUL terminator.
|
|
|
|
|
| |
This is due to a quality API change in libsoup 2.7. SOUP_METHOD_* are now
integers and not strings... they could have changed the names.
|
|
|
|
|
| |
libjpeg headers pull some windows system inlcudes (on windows) that contain a
define for DEFAULT_QUALITY.
|
| |
|
|
|
|
| |
Fixes bug #578052 again.
|
|
|
|
| |
Based on documentation found on http://wiki.multimedia.cx/
|
|
|
|
|
|
|
| |
configured_sink/source_usec in the timing_info is only since 0.9.11 so
conditionally compile this information.
fixes #590038
|
|
|
|
|
|
|
|
|
| |
Keep track of the paused state of the source and leave the read function when
paused.
don't wait for a latency update when the delay is not yet known but simply
return 0 instead of blocking.
Keep track of the corked state of the stream.
Fix the state changes.
|
| |
|
|
|
|
|
|
| |
Add some more debug info
Avoid some type casts
Report the real latency to the application.
|
|
|
|
|
|
| |
Otherwise, any non 0xff byte at end of data would be mistaken for
a tag byte, and in case of a frame_len 0 tag subsequently lead to an
infinite loop.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
when we get an invalid stream index from pulse because we were just starting,
avoid using it for getting and setting the volume.
Fixes #589365
|
|
|
|
|
|
| |
These filters use information from previous frames to
generate the current frame and a caps change will make
the effect start from the beginning again.
|
| |
|
|
|
|
| |
We have to specify do_fancy_downsampling = FALSE in the encoder with did not exist before.
|
|
|
|
| |
From fedaaee to 94f95e3
|
|
|
|
| |
Fixes bug #589423.
|
|
|
|
| |
Fixes #589459.
|
|
|
|
|
|
| |
Also add some more query types to the answer of the query type function.
Fixes bug #589424.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When seeking in a local flac file (ie. operating pull-based), the decoder
would often just error out after the loop function sees a DECODER_ABORTED
status. This, however, is the read callback's way of telling our loop
function that pull_range failed and streaming should stop, in this case
because of the flush-start event that the seek handler pushed upstream
from the seeking thread. Handle this slightly better by storing the last
flow return from pull_range, so the loop function can evaluate it properly
when it encounters a DECODER_ABORTED and take the right action.
Fixes #578612.
|
|
|
|
|
| |
Fix newlines in variable decls. Change two debugs to become warnings as they
indicate that things will not work.
|
|
|
|
|
|
| |
Remove some disabled code in encoder. Try #if 0'ed code and add comments about
why it is disabled. Move idct-method enum to jpeg.c and use in both encoder and
decoder. Add idct-method property to encoder.
|