Sebastian Dröge
cb9e40ff4c
avaudenc: Properly handle planar audio formats with more than AV_NUM_DATA_POINTERS channels
2012-12-12 13:04:54 +00:00
Sebastian Dröge
1bec18edce
avauddec: Properly handle planar audio formats with more than AV_NUM_DATA_POINTERS channels
2012-12-12 13:04:38 +00:00
Christiaan Welvaart
338b147374
avprotocol: Port from the URL protocol handler to saner public API
2012-12-12 12:10:27 +00:00
Wim Taymans
4c46f11d5f
libav: fix palette support again
2012-12-12 10:12:22 +01:00
Sebastian Dröge
736bda7350
avcodecmap: Take framerate restrictions into account for encoders
2012-12-11 18:56:24 +00:00
Sebastian Dröge
86361bf6df
avvidenc: Simplify color formats in the raw video caps
2012-12-11 18:48:34 +00:00
Sebastian Dröge
fbe1221d70
avaudenc: Reorder audio channels if necessary and add proper support for channel layouts
2012-12-11 18:07:34 +00:00
Sebastian Dröge
64a2a8bdae
avcodecmap: Take channel layout constraints into account if possible
2012-12-11 17:25:41 +00:00
Sebastian Dröge
b9d0c7110f
avcodecmap: Take generic samplerate limitations into account
2012-12-11 16:54:09 +00:00
Sebastian Dröge
90e1c0c21d
avcodecmap: Simplify raw audio caps
2012-12-11 16:46:43 +00:00
Sebastian Dröge
9945ae7adc
avauddec: Close context when it was opened
2012-12-11 15:14:10 +00:00
Sebastian Dröge
06de84c747
avviddec: Fix memory leak if we already allocated an output buffer for the frame
2012-12-11 10:34:42 +00:00
Wim Taymans
76b8b8c67f
Revert "avviddec: Fix memory leaks and assertions in error cases if we can't allocate a frame"
...
This reverts commit 47647e1cac
.
Breaks playback when direct rendering is disabled.
The reason is that we set the opaque vaue to NULL and then try to use the NULL
value when we decoded a frame.
2012-12-11 10:24:08 +01:00
Rasmus Rohde
4fc452344a
Fix incorrect use of object in log statement. We are given a pointer to the object and should not try to take the address of it.
2012-12-10 15:35:16 +01:00
Руслан Ижбулатов
b7471c1f5b
avutils: Add missing includes for Windows
...
Fixes #689751
2012-12-06 10:45:58 +01:00
Sebastian Dröge
cab519f370
avaudenc: Add support for planar audio formats
2012-12-05 19:28:33 +01:00
Sebastian Dröge
2d7ebf9514
av: Correctly populate the codec context with the defaults
2012-12-05 19:25:37 +01:00
Sebastian Dröge
d840211412
av: Use av_codec_is_{en,de}coder() API instead of private struct fields
2012-12-05 10:52:34 +01:00
Sebastian Dröge
aa4a238506
avauddec: release_buffer is not supposed to be used for audio
...
And calling it causes crashes in some situations.
2012-12-04 22:09:05 +01:00
Sebastian Dröge
e092f3d411
avauddec: Add support for planar audio formats
2012-12-04 20:45:28 +01:00
Sebastian Dröge
47647e1cac
avviddec: Fix memory leaks and assertions in error cases if we can't allocate a frame
2012-12-04 20:44:58 +01:00
Sebastian Dröge
f5c112990f
av: Port remaining simple bits
2012-12-04 18:36:56 +01:00
Sebastian Dröge
0f206124b6
av: Remove palette support for now
...
It was never ported to the way how paletted color formats work
in 1.0 anyway and the API changed in libav upstream.
2012-12-04 18:36:37 +01:00
Sebastian Dröge
169825a28e
av: Update for some constant changes
2012-12-04 18:36:37 +01:00
Sebastian Dröge
06ed3e4060
av: Port to new avio protocol handler
2012-12-04 18:36:37 +01:00
Luca Barbato
5f03a7d869
av: update to use AVOption variants.
2012-12-04 18:36:30 +01:00
Tim-Philipp Müller
5a823a5fbf
avaudenc: log error string as well in debug output
2012-12-02 12:31:43 +00:00
Tim-Philipp Müller
a3d930afbe
avaudenc: use sample rate as ticks per second fallback
...
The 25/1 value presumably came from the video encoder class.
2012-12-01 23:21:41 +00:00
Tim-Philipp Müller
819d4d2a04
avaudenc: fix output timestamping
...
We need to pass the number of samples encode in the output buffer
to gst_audio_encoder_finish_frame(), not the number of frames.
Fixes output timestamps being way too small, and transcoding
problems.
https://bugzilla.gnome.org/show_bug.cgi?id=689398
2012-12-01 23:05:23 +00:00
Sebastian Dröge
4132a73f0e
avvidenc: Implement reset vfunc
2012-11-20 11:56:57 +01:00
Sebastian Dröge
d3f8c5f0cc
avvidenc: Don't send any frames downstream when draining unless requested to do so
2012-11-20 11:53:52 +01:00
Sebastian Dröge
5ffd21f1ee
avaudenc: Implement draining
2012-11-20 11:51:13 +01:00
Sebastian Dröge
e281493f29
avaudenc: Implement flush vfunc properly
2012-11-20 11:45:34 +01:00
Sebastian Dröge
9456fb86c7
avauddec: Port to non-deprecated avcodec_decode_audio4() API
...
Fixes bug #666435 .
2012-11-20 11:40:10 +01:00
Sebastian Dröge
f4acd40767
avaudenc: Some minor cleanup
2012-11-20 10:55:55 +01:00
Sebastian Dröge
3ffbb6ff94
avaudenc: Use non-deprecated avcodec_encode_audio2() API
...
This also allows us to always get an output buffer of the required size
instead of risking that it is too small.
2012-11-20 10:53:01 +01:00
Sebastian Dröge
7a29cffc50
avaudenc: Port to audio encoder base class
2012-11-20 10:36:29 +01:00
Sebastian Dröge
970f40b935
avvidenc: Use gst_caps_truncate()
2012-11-20 10:35:01 +01:00
Sebastian Dröge
6895df72d6
av: Use PROP_ instead of ARG_
2012-11-20 10:31:49 +01:00
Sebastian Dröge
0e13c75aea
avcodecmap: Y41B is YUV411P, not YUV410P
2012-11-19 14:11:52 +01:00
Sebastian Dröge
ef408ada57
avauddec: Port to audio base classes
2012-11-19 14:11:52 +01:00
Sebastian Dröge
c784ec9fa5
av: Put declarations in header files and rename audio codec files
2012-11-19 10:30:37 +01:00
Tim-Philipp Müller
37ce97a6e0
gst_adapter_prev_timestamp -> gst_adapter_prev_pts
2012-11-14 12:45:56 +00:00
Sebastian Dröge
67e11c7ad9
avcodecmap: Add mappings for the GBR color formats
2012-11-10 22:23:23 +01:00
Tim-Philipp Müller
d0ef33d463
Fix FSF address
2012-11-04 00:22:16 +00:00
Sebastian Dröge
c9125dd6f0
avcodecmap: Remove redundant function to map PixelFormat to GstVideoFormat
...
And merge everything into a single one.
2012-10-29 14:12:03 +01:00
Sebastian Dröge
7eec659460
avdec: Use gst_audio_buffer_clip() instead of manual clipping
2012-10-25 14:07:21 +02:00
Tim-Philipp Müller
451a6c2ecf
avvidenc: also skip non-video encoders
...
Doesn't actually make any difference at the moment, but
seems the right thing to do.
https://bugzilla.gnome.org/show_bug.cgi?id=685113
2012-09-30 16:25:29 +01:00
Alban Browaeys
f1071cc1b1
avviddec: exclude non-video decoders
...
Otherwise audio decoders "ignored", ie blacklisted, end up
registered by avviddec as video decoders.
https://bugzilla.gnome.org/show_bug.cgi?id=685113
2012-09-30 16:24:18 +01:00
Tim-Philipp Müller
07cec6d216
avdemux: fix not-negotiated errors
...
Drop caps event received on the sink pad, instead of
putting it in the list of cached events to be sent
downstream later. We don't want to send our container
caps downstream to our decoders, that'll give us
nasty not-negotiated errors.
https://bugzilla.gnome.org/show_bug.cgi?id=680464
2012-09-28 16:53:49 +01:00
Sebastian Dröge
f0d700d5ca
avviddec: Correctly handle 0-sized buffers without crashing
...
Might e.g. be valid for Theora.
2012-09-27 12:20:30 +02:00
Tim-Philipp Müller
787bd57ea1
avviddec: don't try to set invalid latency
...
Avoids warnings when we don't know the latency.
2012-09-25 18:29:08 +01:00
Wim Taymans
aafffb7665
avviddec: improve debug
2012-09-14 13:25:03 +02:00
Nicolas Dufresne
3ca45b8c45
viddec: Set latency base on the number of bframes
2012-09-13 15:48:26 +02:00
Nicolas Dufresne
1f74496b8a
viddec: Cleanup unused has_b_frames flag
2012-09-13 15:48:22 +02:00
Edward Hervey
0f9cc8dac6
libav: Switch to non-deprecated symbols
...
This symbols/enums will all be deprecated in the next releases
2012-09-13 15:23:26 +02:00
Stefan Sauer
70471f230f
collectpads: remove gst_collect_pads_add_pad_full
...
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:15:24 +02:00
Michael Smith
01bb84a5eb
libav: add decode support for prores
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683840
2012-09-12 10:29:24 +02:00
Mark Nauwelaerts
c5589bb8f9
avdemux: port to the new GLib thread API
2012-09-12 10:25:21 +02:00
Mark Nauwelaerts
b9e32291a9
avdemux: only activate in pull mode if upstream is seekable
2012-09-11 17:52:57 +02:00
Wim Taymans
1e5bfa5215
avviddec: add support for codecs that use reget_buffer
...
Add support for codec that use reget_buffer. In this mode, it reuses the picture
and we need to attach the corresponding input frame to it or else we get the
timestamps wrong.
2012-09-11 13:53:23 +02:00
Edward Hervey
90a8b3fb9f
ext: ffmpeg/gstffmpeg*.[ch] => libav/gstav*.[ch]
2012-09-10 17:53:54 +02:00
Edward Hervey
f4532d9135
remove postproc element
...
libpostproc is gone from upstream libav.
2012-09-10 17:18:30 +02:00
Edward Hervey
0e40eb11bc
configure.ac: Import top-level include directory
...
And fixup all includes
2012-09-10 17:08:00 +02:00
Edward Hervey
9f8e46d3d2
avdemux: Really ignore demuxers we want to ignore
2012-09-10 11:17:11 +02:00
Tim-Philipp Müller
22f67f7b9e
viddec: blacklist *crystalhd* decoder wrappers
...
There are gstreamer crystalhd elements as well,
so shouldn't be a big loss.
https://bugzilla.gnome.org/show_bug.cgi?id=683435
2012-09-07 17:56:43 +01:00
Sjoerd Simons
ed1ea6f097
ffmpegenc: Don't try to set caps to NULL
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682736
2012-08-30 20:03:10 +02:00
Wim Taymans
4b62101f44
viddec: use the right pointers
...
Use the plane pointers and strides.
Improve some debug
2012-08-10 17:03:26 +02:00
Sebastian Dröge
fe0a8d005d
avviddec: Properly align and pad buffers for libav
...
https://bugzilla.gnome.org/show_bug.cgi?id=680796
2012-08-08 16:02:32 +02:00
Sebastian Dröge
3a4a139a28
av: Use */x-gst-av instead of */x-gst-ff for unknown caps
2012-08-07 10:19:16 +02:00
Sebastian Dröge
0764e9600c
avdemux: Remove unused variable
2012-08-06 14:35:07 +02:00
Sebastian Dröge
1af5b5601d
avdemux: Add stream-id to stream-start events
2012-08-06 14:05:28 +02:00
Edward Hervey
9b45987ef5
ffmpegviddec: Return NOT_NEGOTIATED when not configured
2012-08-06 11:55:31 +02:00
Tim-Philipp Müller
241419b46d
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:19:29 +01:00
Sebastian Dröge
3d2d1beb77
tag: Update for taglist/tag event API changes
2012-07-28 00:36:40 +02:00
Wim Taymans
3c47f584e2
avdec: require alignment=au for h264
...
Because we don't use a parser anymore we need to make sure that we feed the
decoder with full frames. For h264, require that we are aligned on access
units.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680540
2012-07-25 11:55:21 +02:00
Tim-Philipp Müller
2d458ca951
audio encoders: use context default bitrate if no bitrate has been set
...
Fixes 'bitrate too low: got 0, need 24000 or higher'
error when doing audiotstsrc ! avenc_wmav1 ! fakesink
https://bugzilla.gnome.org/show_bug.cgi?id=680487
https://bugzilla.gnome.org/show_bug.cgi?id=680487
2012-07-23 23:29:26 +01:00
Mark Nauwelaerts
0489f5eb78
ffmpeg: avoid assertion failure on duplicate frame allocation
2012-07-23 15:02:11 +02:00
Robert Swain
1638344081
ffmpegviddec: Correctly flag interlaced state
...
If the context interlaced state is indicated, the picture interlaced
state can be used to correctly indicate GST_VIDEO_BUFFER_FLAG_INTERLACED
on output buffers.
2012-07-23 11:37:57 +02:00
Sebastian Dröge
899fd3d76e
ffvidenc: Allocate output buffers with the base class functions
2012-07-23 10:40:14 +02:00
Sebastian Dröge
941f4c331b
ffmpegviddec: Update for video base classes API changes
2012-07-23 10:35:38 +02:00
Edward Hervey
c77db02d6e
viddec: Call gst_video_decoder_negotiate()
2012-07-18 18:30:53 +02:00
Tim-Philipp Müller
4e784f0d0e
avdeinterlace: fix up output caps for new field as well
...
And presumably our output is always progressive and not
interlaced any more?
2012-07-17 12:35:03 +01:00
Tim-Philipp Müller
ad04636c6e
avdeinterlace: detect interlaced input properly
...
It's not a boolean field any more, and called "interlaced-mode" now.
2012-07-17 12:31:52 +01:00
Edward Hervey
93ef1b687e
demux: Push STREAM_START when needed
2012-07-13 14:01:44 +02:00
Wim Taymans
a3b0ae22d7
avdec: ignore AAC errors instead of erroring out
...
Also ignore decode errors for AAC and carry on decoding like we do for all
other formats.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679639
2012-07-10 16:10:14 +02:00
Wim Taymans
0e1d6c0011
avcodecmap: only restrict caps on encoders
...
We only want to restrict the channels/rate and width/height on the encoder pads.
For decoders can't assume that the input caps contain channels/rate or
width/height so we need to accept everything.
2012-07-10 15:47:01 +02:00
Wim Taymans
dc7bf19858
update for query api changes
2012-07-06 11:50:57 +02:00
Wim Taymans
f8475ad22a
update for query api changes
2012-07-06 11:27:33 +02:00
Wim Taymans
3ae9eb158c
update for allocation query changes
2012-07-06 11:05:19 +02:00
Tim-Philipp Müller
ab7b7cbff3
cfg: remove some deprecated properties: statsfile, mb-qmin, mb-qmax
...
Use multipass-cache-file, qmin, qmax instead.
2012-07-06 09:49:57 +01:00
Sebastian Dröge
06d24b47b6
avdemux: Implement segment-done event
2012-07-05 13:21:33 +02:00
Wim Taymans
cdcaa584a4
avdec: handle_frame should always unref the input frame
...
Unref the input frame in all cases. Previously it was only unreffed when the
frame was used for output.
When we produce an output frame, take an extra ref because the frame is now
freed elsewhere.
2012-07-03 17:13:00 +02:00
Wim Taymans
c9878e9f86
avdec: small cleanup
2012-07-03 17:13:00 +02:00
Wim Taymans
41ad632275
avdec: avoid some refs
...
We can let the ffmpeg structure take ownership of the buffer.
2012-07-03 17:13:00 +02:00
Руслан Ижбулатов
3ff6f53f24
ffvidenc: Fix a format string to avoid warnings
...
istffmpegvidenc.c:412:3: error: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'gint' [-Werror=format]
2012-07-03 08:38:28 +02:00
Sebastian Dröge
7b8ffe6169
ffaudenc: Fix format string compiler warning
...
gstffmpegenc.c:266:3: error: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'gint'
2012-07-02 15:51:17 +02:00
Wim Taymans
103f8f9395
avdec: don't wait for keyframe
...
Don't wait for a keyframe but try to decode as soon as possible. In most cases,
the demuxer will send a keyframe first and things will work fine, in other
cases, like RTP, we try to decode ASAP to provide quick feedback. Some formats
also have no keyframes (h264 with intra refresh).
2012-06-28 09:33:28 +02:00
Wim Taymans
932bd7f79e
avenc: don't leak frames
2012-06-26 12:36:56 +02:00
Wim Taymans
eb52e46b07
avdemux: update for task api change
2012-06-20 10:36:25 +02:00