Sebastian Dröge [Wed, 15 Dec 2010 19:51:12 +0000 (20:51 +0100)]
dvbsuboverlay: Use g_atomic_int_get() for reading the max_page_timeout field
Sebastian Dröge [Wed, 15 Dec 2010 19:49:57 +0000 (20:49 +0100)]
mpegtsdemux: Mark array static const and use G_N_ELEMENTS instead of sizeof
Janne Grunau [Wed, 15 Dec 2010 13:39:56 +0000 (14:39 +0100)]
mpegtsdemux: add DESC_DVB_SUBTITLING descriptor for language parsing
Janne Grunau [Wed, 15 Dec 2010 13:23:58 +0000 (14:23 +0100)]
mpegtsdemux: enable gather_pes only for DVB subtitle private streams
Janne Grunau [Tue, 14 Dec 2010 13:34:56 +0000 (14:34 +0100)]
dvbsuboverlay: use atomic instructions to set/get enable property
Janne Grunau [Tue, 14 Dec 2010 13:28:45 +0000 (14:28 +0100)]
dvbsuboverlay: add property to limit page_time_out to a setable maximum
Janne Grunau [Tue, 14 Dec 2010 10:11:08 +0000 (11:11 +0100)]
dvbsuboverlay: implement display definition segment subtitle windows
simplifies subtitle scaling in blit_i420()
Janne Grunau [Sat, 11 Dec 2010 16:25:29 +0000 (17:25 +0100)]
dvbsuboverlay: scale subtitles according to the display size
Display size is either transmitted in the display definition segment or
implicitly defined to 720x576. The subtitle window information also present in
the display definition segment is not yet used.
Janne Grunau [Sat, 11 Dec 2010 16:10:25 +0000 (17:10 +0100)]
dvbsuboverlay: implement display definition segment parsing
Janne Grunau [Fri, 10 Dec 2010 11:27:54 +0000 (12:27 +0100)]
dvbsuboverlay: fix luma stride for scaled subtitles (display width != width)
Edward Hervey [Wed, 15 Dec 2010 15:48:15 +0000 (16:48 +0100)]
rsvgoverlay: Don't set uint on an int property
Stefan Kost [Wed, 15 Dec 2010 12:56:19 +0000 (14:56 +0200)]
Automatic update of common submodule
From
20742ae to
169462a
David Schleef [Wed, 15 Dec 2010 03:03:09 +0000 (19:03 -0800)]
element-maker: improve generation of several classes
Better creation of pads, test and fix many other classes. Most
classes work now, although might not create functional elements.
David Schleef [Tue, 14 Dec 2010 07:32:30 +0000 (23:32 -0800)]
y4mdec: Add y4mdec
Feel the y4m love. It seeks. It works in pitivi.
Francis Rammeloo [Mon, 13 Dec 2010 23:15:05 +0000 (23:15 +0000)]
gdiscreencapsrc: fix memory leak
Structure members of ICONINFO struct filled by GetIconInfo() must
be deleted when no longer needed according to the API reference.
https://bugzilla.gnome.org/show_bug.cgi?id=611428
Mark Nauwelaerts [Mon, 13 Dec 2010 15:23:37 +0000 (16:23 +0100)]
jpegparse: avoid leaking tag event
Mark Nauwelaerts [Mon, 13 Dec 2010 14:17:29 +0000 (15:17 +0100)]
ac3parse: relax bsid checking
... to the widest possible spec interpretation.
Fixes #637062.
Stefan Kost [Mon, 13 Dec 2010 14:23:45 +0000 (16:23 +0200)]
Automatic update of common submodule
From
011bcc8 to
20742ae
Matthew Ife [Sun, 12 Dec 2010 23:34:02 +0000 (23:34 +0000)]
rfbsrc: fail more gracefully if source gets disconnected or geometry changes
Don't get caught in an infinite loop if the source gets disconnected and also
support gracefully failing upon detecting the frame geometry has increased
(rather than segfaulting).
https://bugzilla.gnome.org/show_bug.cgi?id=635397
Mark Nauwelaerts [Sun, 12 Dec 2010 21:13:13 +0000 (22:13 +0100)]
jpegparse: avoid leaking converted comment string
Sebastian Dröge [Sun, 12 Dec 2010 11:01:38 +0000 (12:01 +0100)]
ssim: Set classification to Filter/Analyzer/Video instead of Filter/Converter/Video
Fixes bug #636109.
Jan Schmidt [Sat, 11 Dec 2010 15:24:00 +0000 (02:24 +1100)]
gaudieffects: Avoid divide by 0 in burn element
Jan Schmidt [Sat, 11 Dec 2010 15:16:49 +0000 (02:16 +1100)]
resindvd: Defer pushing tag updates until streaming.
Push tag/title info updates in the streaming thread, avoiding
spurious losses of the downstream events when flushing.
See: https://bugzilla.gnome.org/show_bug.cgi?id=594222
Jan Schmidt [Tue, 16 Nov 2010 06:18:33 +0000 (17:18 +1100)]
resindvd: Attempt to use glib language setting for DVD menus/audio
Jan Schmidt [Tue, 16 Nov 2010 06:09:06 +0000 (17:09 +1100)]
resindvd: Fix silly typo in button state tracking.
Ole André Vadla Ravnås [Thu, 9 Dec 2010 23:58:58 +0000 (00:58 +0100)]
applemedia: only enqueue buffers in the VideoToolbox callbacks
These callbacks may fire from any thread, hence we should only enqueue
buffers and let the streaming thread take care of the rest as soon as
the blocking encode or decode operation has finished.
Ole André Vadla Ravnås [Fri, 19 Nov 2010 14:53:55 +0000 (15:53 +0100)]
applemedia: bring back Leopard compatibility
At least as far as miovideosrc is concerned. Turns out that CoreVideo's
CVPixelBufferGetIOSurface is not present in Leopard's version of CoreVideo.
We solve this by making it possible for symbols to be marked as optional.
Christian Berentsen [Mon, 29 Nov 2010 12:47:11 +0000 (13:47 +0100)]
winks: fix framerate fraction range mapping
Min and max may be slightly different but compress to the same fraction.
Wim Taymans [Thu, 9 Dec 2010 17:06:38 +0000 (18:06 +0100)]
jasperdec: don't fail hard on decoding error
don't post an error and return GST_FLOW_ERROR on a simple decoding error. We can
just resume and continue decoding the next image.
Alessandro Decina [Thu, 9 Dec 2010 10:54:17 +0000 (11:54 +0100)]
qtkitvideosrc: reset the queue condition to NO_FRAMES in unlockStop.
Fixes a segfault in create: when going PLAYING -> PAUSED -> PLAYING.
Alessandro Decina [Thu, 9 Dec 2010 10:04:19 +0000 (11:04 +0100)]
qtkitvideosrc: run the mainRunLoop for a while if not running.
QTCaptureSession::addInput and QTCaptureSession::addOutput call
NSObject::performSelectorOnMainThread internally so they need the mainRunLoop to
run at least for a while to complete.
Thiago Santos [Tue, 7 Dec 2010 22:40:28 +0000 (19:40 -0300)]
basecamerasrc: Remove ghostpads
Remove ghost pads from basecamerasrc. Different implementations
of camera sources might not use ghostpads and use default pads.
Thiago Santos [Tue, 7 Dec 2010 22:12:40 +0000 (19:12 -0300)]
basecamerasrc: Removing ununsed methods
Remove one unused method _finish_image_capture()
Thiago Santos [Mon, 6 Dec 2010 14:05:17 +0000 (11:05 -0300)]
camerabin2: Only run tests if experimental is enabled
Only run camerabin2 tests and build examples if experimental
plugins are enabled
Thiago Santos [Mon, 6 Dec 2010 13:06:37 +0000 (10:06 -0300)]
camerabin2: Cleanup
Removing commented code
Thiago Santos [Sun, 5 Dec 2010 14:18:09 +0000 (11:18 -0300)]
basecamerasrc: Move start/stop capture signals to basecamerasrc
Move start/stop signals and ready-for-capture to basecamerasrc
as this should be present on all camera sources
Thiago Santos [Sat, 4 Dec 2010 13:15:34 +0000 (10:15 -0300)]
basecamerasrc: Add mode property
Move mode property from v4l2camerasrc to basecamerasrc, as all
camera sources should handle it.
Thiago Santos [Sat, 4 Dec 2010 03:27:17 +0000 (00:27 -0300)]
camerabin2: Reset all elements on video recording branch before capture
We need to reset the elements from the video recording branch, including
the queue and capsfilter in order to clear the eos state and activate
the pads.
This makes it possible to record multiple videos with camerabin2 in a
sequence, otherwise the source would get a unexpected return and
push EOS, stopping the whole pipeline.
Thiago Santos [Fri, 3 Dec 2010 15:13:07 +0000 (12:13 -0300)]
camerabin2: Fix tests capture location creation
Fixes capture location creation to use multifilesink location
like strings. E.g. using capture_%d instead of capture_0 to let
camerabin2 handle the %d replacing
Thiago Santos [Fri, 3 Dec 2010 15:12:32 +0000 (12:12 -0300)]
camerabin2: More debug logs
Sprinkle some more debugging logs
Thiago Santos [Fri, 3 Dec 2010 15:11:59 +0000 (12:11 -0300)]
examples: camerabin2: Print more info
Add some printing for error/eos cases.
Thiago Santos [Thu, 2 Dec 2010 06:44:37 +0000 (03:44 -0300)]
camerabin2: Various fixes
As video recording bin's state is locked, we should always
remember of setting it to NULL when camerabin2 goes to NULL
Be more careful when using elements that might not
have been created yet
And do not set location property recursively on videorecordingbin
Thiago Santos [Thu, 2 Dec 2010 06:08:52 +0000 (03:08 -0300)]
camerabin2: Adding tests for camerabin2
Adds some basic tests for camerabin2
Thiago Santos [Thu, 2 Dec 2010 05:21:49 +0000 (02:21 -0300)]
tests: camerabin2: adds tests for elements
Adds basic tests for both imagecapturebin and for
videorecordingbin elements
Thiago Santos [Thu, 2 Dec 2010 04:33:19 +0000 (01:33 -0300)]
viewfinderbin: Improve elements creation
Be more careful with cleanup of elements. Also add some logs and
improve docs a little.
Thiago Santos [Thu, 2 Dec 2010 03:19:05 +0000 (00:19 -0300)]
camerabin2: remove unused code
General cleanup, removing unused bits
Thiago Santos [Tue, 30 Nov 2010 23:13:27 +0000 (20:13 -0300)]
camerabin2: adds location property
Adds a location property to enable applications to select
the captured files names. Locations are handled just like
multifilesink ones
Also disables -Wformat-nonliteral to allow to use non-literals
on g_strdup_printf on camerabin and generate a sequence of
locations for captures.
Thiago Santos [Tue, 30 Nov 2010 23:15:47 +0000 (20:15 -0300)]
camerabin2: Fix set/get property function names
Add more consistency to the function names by using
gst_camera_bin as the other functions.
Thiago Santos [Tue, 30 Nov 2010 21:19:20 +0000 (18:19 -0300)]
camerabin2: Handle vidbin state change individually
Keep vidbin state locked to avoid it going to playing without
being used and leaving an empty file created.
Check the docs on the code for details on the handling.
Thiago Santos [Tue, 30 Nov 2010 14:40:18 +0000 (11:40 -0300)]
camerabin2: Keep it under --enable-experimental
camerabin2 is still under heavy development, activate it only if
the --enable-experimental flag is on.
Also add a note to the docs.
Thiago Santos [Tue, 30 Nov 2010 14:06:33 +0000 (11:06 -0300)]
v4l2camerasrc: Add ready-for-capture property
Adds property that informs if v4l2camerasrc is available
for starting a new capture.
It is useful for applications to know (via deep-notify) when the
property changes and a new capture is possible. Note, however, that
starting a new capture from the notify callback will cause a deadlock.
Thiago Santos [Tue, 30 Nov 2010 12:28:50 +0000 (09:28 -0300)]
camerabin2: Update v4l2camerasrc to use start/stop signals
Removes the old logic for v4l2camerasrc that used the mode
property switching to start/stop captures to make it identical
to camerabin2 behavior and to allow the future addition of
pausing a video recording.
This also removes the MODE_PREVIEW as it became useless.
Thiago Santos [Mon, 29 Nov 2010 21:53:34 +0000 (18:53 -0300)]
camerabin2: Cleanup capturing flag
Cleanup capturing flag when the source switches back to the
viewfinder mode
Thiago Santos [Mon, 29 Nov 2010 21:24:35 +0000 (18:24 -0300)]
v4l2camerasrc: Remove unnecessary padding
Thiago Santos [Mon, 29 Nov 2010 18:49:26 +0000 (15:49 -0300)]
v4l2camerasrc: Implement video capture
Implements video capture on v4l2camerasrc by using the mode property,
when mode is set to video, the pad probe pushes a new segment
and starts pushing buffers on the pad, when it the property is
sent back to preview, the pad probe pushes an EOS and stops
pushing buffers.
This is controlled by a Recording State variable, that is protected
by the GST_OBJECT_LOCK. I don't think locking for every buffer is
nice, so we could find an alternative lockless way here.
Thiago Santos [Mon, 29 Nov 2010 15:57:21 +0000 (12:57 -0300)]
v4l2camerasrc: Fix image capture
Once a image is captured, v4l2camerasrc should return to the
preview mode and stop capturing.
Thiago Santos [Mon, 29 Nov 2010 14:31:26 +0000 (11:31 -0300)]
camerabin2: Keep mode definition at -enum file
Use 'mode' enum definition from gstcamerabin-enum file to avoid
conflicts between v4l2camerasrc and gstcamerabin2 modes.
For now there is a MODE_PREVIEW there that is only used on the
camerasrc, not sure if we are keeping it at the future, but for
now this works.
Thiago Santos [Mon, 29 Nov 2010 13:46:38 +0000 (10:46 -0300)]
v4l2camerasrc: Adds mode property
Adds mode property to v4l2camerasrc
Thiago Santos [Mon, 29 Nov 2010 13:45:30 +0000 (10:45 -0300)]
camerabin2: Adding debug categories
Adding debug categories to v4l2camerasrc and camerabin2, also
removing generic category from camerabingeneral.
Thiago Santos [Sat, 27 Nov 2010 02:55:12 +0000 (23:55 -0300)]
examples: Adds camerabin2 example
Adds gtk camerabin2 example app
Thiago Santos [Fri, 26 Nov 2010 20:24:58 +0000 (17:24 -0300)]
camerabin2: Adding basic property and signals
Adds mode property to camerabin2, allowing users to
select between video and stills capture. Also adds
start/stop capture actions to trigger and stop
capturing
Thiago Santos [Fri, 26 Nov 2010 18:55:39 +0000 (15:55 -0300)]
camerabin2: Set filesink's async to FALSE
In order to preroll, camerabin2 should have its filesinks in
the imagecapturebin and videorecordingbin with async=FALSE.
Thiago Santos [Fri, 26 Nov 2010 17:51:30 +0000 (14:51 -0300)]
camerabin2: Adding basic elements
Instantiating and linking basic elements on camerabin2
so it at least shows the viewfinder when running.
Thiago Santos [Fri, 26 Nov 2010 13:14:46 +0000 (10:14 -0300)]
camerabin2: Adds a stub element for camerabin2
Adds camerabin2 element, it is now a pile of stubs.
Thiago Santos [Fri, 26 Nov 2010 01:05:39 +0000 (22:05 -0300)]
camerabin2: v4l2camerasrc: Remove platform specific code
Remove platform specific code
Thiago Santos [Fri, 26 Nov 2010 00:49:47 +0000 (21:49 -0300)]
camerabin2: Removing uneeded properties
Removing uneeded and unregistered properties.
Thiago Santos [Thu, 25 Nov 2010 23:55:36 +0000 (20:55 -0300)]
camerabin2: v4l2camerasrc: Fix property warning
Avoid setting a property that doesn't exist.
Thiago Santos [Thu, 25 Nov 2010 23:53:04 +0000 (20:53 -0300)]
camerabin2: v4l2camerasrc: Remove unused variable
Removed unused leftover variable
Thiago Santos [Thu, 25 Nov 2010 17:57:13 +0000 (14:57 -0300)]
camerabin2: Adds video recording bin
Adds an bin that is responsible for encoding and saving video
streams to files.
For now it is simply a ffmpegcolorspace ! theoraenc ! oggmux !
filesink bin.
Still uncapable of recording audio.
Thiago Santos [Thu, 25 Nov 2010 16:00:50 +0000 (13:00 -0300)]
camerabin2: Adding v4l2camerasrc from robclark's branch
Adds 3-pad v4l2 camera source from Rob Clark's camerabin
branch on http://gitorious.org/robclark-gstreamer/gst-plugins-bad
Thiago Santos [Wed, 24 Nov 2010 23:31:33 +0000 (20:31 -0300)]
camerabin2: Adds new imagecapturebin
Adds an bin that is responsible for image captures.
It is a simple ffmpegcolorspace ! jpegenc ! jifmux ! multifilesink
for now.
Thiago Santos [Wed, 24 Nov 2010 23:15:38 +0000 (20:15 -0300)]
camerabin2: Move plugin init to a separate file
Moves plugin init to gstplugin.c to allow multiple
elements to register themselves.
Thiago Santos [Wed, 24 Nov 2010 20:28:57 +0000 (17:28 -0300)]
camerabin2: viewfinderbin: Adds viewfinderbin element
Adds viewfinder bin element, one of the modules of camerabin2
that is responsible for displaying the video from the camera.
For now it is only a bin with ffmpegcolorspace ! videoscale !
autovideosink
Alessandro Decina [Wed, 8 Dec 2010 18:36:48 +0000 (19:36 +0100)]
dvbsuboverlay: fix compiler warnings on OSX.
Stefan Kost [Wed, 24 Nov 2010 10:22:01 +0000 (12:22 +0200)]
output-selector-test: don't hardcode videosinks and use more colorspace conv.
Use autovideosink instead of hardcoded sinks. Use an additional colorspace
converter between videotestsrc and timeoverlay.
Tim-Philipp Müller [Wed, 8 Dec 2010 15:18:32 +0000 (15:18 +0000)]
configure: require released versions of core/base instead of old git
Mark Nauwelaerts [Tue, 7 Dec 2010 14:44:00 +0000 (15:44 +0100)]
mpeg4videoparse: re-use cleanup() in finalize()
... and also favor finalize() rather than dispose().
Arun Raghavan [Thu, 18 Nov 2010 08:09:23 +0000 (13:39 +0530)]
mpeg4videoparse: Set srcpad caps before forwarding newsegment
This holds all newsegement and most other events till there is enough
data to set srcpad caps, so that the downstream link is properly
negotiated before data starts flowing.
https://bugzilla.gnome.org/show_bug.cgi?id=635204
Arun Raghavan [Thu, 18 Nov 2010 17:59:51 +0000 (23:29 +0530)]
mpeg4videoparse: Use sinkpad caps as base for srcpad caps
This way, we don't lose additional fields that come from upstream (like
profile/level for now).
https://bugzilla.gnome.org/show_bug.cgi?id=635202
Mark Nauwelaerts [Tue, 7 Dec 2010 14:20:29 +0000 (15:20 +0100)]
mpeg4videoparse: minor fix to error handling
We weren't handling unparseable codec_data in some cases.
https://bugzilla.gnome.org/show_bug.cgi?id=635202
Sebastian Dröge [Tue, 7 Dec 2010 16:17:44 +0000 (17:17 +0100)]
dvbsuboverlay: Implement nearest neighbour scaling for the subpictures
This becomes necessary when SDTV subtitles are used for HDTV videos.
Mark Nauwelaerts [Tue, 7 Dec 2010 13:55:28 +0000 (14:55 +0100)]
h264parse: align code with comment
Mark Nauwelaerts [Tue, 7 Dec 2010 13:55:15 +0000 (14:55 +0100)]
h264parse: re-use reset() in finalize()
Arun Raghavan [Wed, 17 Nov 2010 13:46:12 +0000 (19:16 +0530)]
h264parse: Set srcpad caps before forwarding newsegment
This holds all newsegement and most other events till there is enough
data to set srcpad caps, so that the downstream link is properly
negotiated before data starts flowing.
https://bugzilla.gnome.org/show_bug.cgi?id=635205
Mark Nauwelaerts [Mon, 6 Dec 2010 18:00:28 +0000 (19:00 +0100)]
jpegparse: try to convert comment tag to UTF-8
Mark Nauwelaerts [Mon, 6 Dec 2010 17:19:20 +0000 (18:19 +0100)]
jpegparse: discard incomplete image
... as determined when finding SOI next image before an EOI.
Mark Nauwelaerts [Mon, 6 Dec 2010 17:18:11 +0000 (18:18 +0100)]
jpegparse: avoid infinite loop when resyncing
Arun Raghavan [Mon, 6 Dec 2010 17:18:09 +0000 (22:48 +0530)]
audioparse: Allow implicit channel map for 1-/2-channel audio
This makes sure we don't set an empty channel map array for 1-/2-channel
audio, causing an assert later on.
Sebastian Dröge [Mon, 6 Dec 2010 16:08:55 +0000 (17:08 +0100)]
dvbsuboverlay: Revert some parts of last commit that shouldn't be committed
Sebastian Dröge [Mon, 6 Dec 2010 16:05:28 +0000 (17:05 +0100)]
dvbsuboverlay: Really choose the latest possible subpictures
And not the first subpictures that are still valid according to the
page timeout.
Sebastian Dröge [Mon, 6 Dec 2010 15:44:11 +0000 (16:44 +0100)]
dvbsuboverlay: Refactor blending function and take average of all chroma values
Sebastian Dröge [Fri, 3 Dec 2010 16:35:36 +0000 (17:35 +0100)]
dvbsuboverlay: Improve selection of current to be displayed subpictures
Drop all subpictures that are too old anyway and clear the currently
displayed subpictures if num_rects==0 happens.
Sebastian Dröge [Fri, 3 Dec 2010 15:21:15 +0000 (16:21 +0100)]
dvbsuboverlay: Implement clipping of video buffers
Also don't clip subpicture buffers, they have no duration and
clipping them doesn't make much sense here.
Sebastian Dröge [Fri, 3 Dec 2010 15:08:13 +0000 (16:08 +0100)]
dvbsuboverlay: Clean up locking some more
Sebastian Dröge [Fri, 3 Dec 2010 15:05:56 +0000 (16:05 +0100)]
dvbsuboverlay: Flush subtitles and all internal state when needed
Sebastian Dröge [Fri, 3 Dec 2010 14:52:21 +0000 (15:52 +0100)]
dvbsuboverlay: Set the global library log function exactly once
And don't use one of the possibly many renderer instances, this is only
calling for crashes.
Sebastian Dröge [Fri, 3 Dec 2010 14:46:40 +0000 (15:46 +0100)]
dvbsuboverlay: Remove lots of commented out and unused code and clean up locking
Mart Raudsepp [Wed, 1 Dec 2010 07:59:14 +0000 (09:59 +0200)]
dvbsuboverlay: Fix more of the blending, so it looks quite good now
* libdvbsub gives us alpha channel already, not transparency level, so
don't do another "alpha = 255 - alpha", this is done by libdvbsub.
* Fix alpha channel handling in interpolation - assrender had an additional
1bpp alpha bitmap as a possible mask, we don't. So don't use the palette
index array as alpha values; bug from quick code porting long ago to
changing pixel colors (assrender has a single pixel color for whole
regions or something, unlike dvbsub, which has indexed colors).
* Don't forget to reassign our YUV and other local pixel color variables
after shifting to work on the bottom part of a 2x2 subsample block, or
it's obviously very blocky.
Remaining issues in blending:
* Should probably be interpolating or doing something else useful with the
resulting U and V channels, so that most of the source pixel UV values would
actually be actually cared about, except for just one out of possibly four.
* Don't convert AYUV to ARGB in libdvbsub, and then back from ARGB to AYUV in
dvbsuboverlay for no reason
* Re-factor the whole thing to something more like textoverlay blending
* Related to that, perhaps cache the current spu in a good format for quick
blending on each frame, after which the more often called blending parts
might become more straightforward
Mart Raudsepp [Wed, 1 Dec 2010 05:26:03 +0000 (07:26 +0200)]
dvbsuboverlay: Fix blending bug regarding color channel addressing.
libdvbsub gives us ARGB ordered pixels right now, not RGBA.
Mart Raudsepp [Wed, 1 Dec 2010 05:20:07 +0000 (07:20 +0200)]
dvbsuboverlay: Do blending calls when appropriate
This gives us actually shown subtitles, however with bugs in the
current blitting code, resulting in very transparent subtitles.