Olivier Crête
17aca8a8c2
avviddec: Enable subframe decoding for H.264
...
Enable sending NAL units to the decoder without having to first
group them in a frame (an AU).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/66 >
2021-07-08 18:39:28 +02:00
Jade Macho
1b81e05ab9
Hook up audio/x-xma: xmaversion: [1,2] to AV_CODEC_ID_XMA[1,2]
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/124 >
2021-03-15 20:35:35 +01:00
Sebastian Dröge
dcea8baa14
avcodecmap: Don't try converting channel layouts with more than 64 channels
...
We only support up to 64 channels in GStreamer with a specific layout so
it's safe to assume a NONE layout in this case.
Also the arrays of channel positions are allocated everywhere with 64
elements so don't try setting more than 64 to NONE as that will cause
stack corruptions and similar memory safety issues.
Thanks to Natalie Silvanovich for reporting this issue.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-libav/-/issues/92
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/120 >
2021-03-15 18:56:06 +02:00
Jan Schmidt
d3c4740fb6
codec map: Add a mapping for the OKI ADPCM variant.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/111 >
2020-12-14 11:09:35 +02:00
Olivier Crête
c77e13b9b3
avcodecmap: Enable 24 bit WMA Lossless decoding
...
This now works with not so recent ffmpeg.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/88 >
2020-09-09 15:25:41 -04:00
Sebastian Dröge
6a9b42557e
Update for gst_video_transfer_function_*() function renaming
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/89 >
2020-09-07 12:15:17 +03:00
Sebastian Dröge
f7371f8691
avcodecmap: Add support for SpeedHQ video codec
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/79 >
2020-06-26 16:11:18 +03:00
Sebastian Dröge
74bb89eb89
avcodecmap: Remove unused GstFFMpegCompliance type
2020-05-31 10:03:17 +03:00
Mathieu Duponchelle
797c7e1bdf
avcodecmap: use framerate instead of time_base when decoding
...
Documentation for AVCodecContext::time_base:
> decoding: the use of this field for decoding is deprecated.
> Use framerate instead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/74 >
2020-05-27 16:29:27 +02:00
Sebastian Dröge
63555e5cc7
avcodecmap: Add some more comments about the assumptions in the ffmpeg code about H264/H265/AAC
2020-01-24 16:14:28 +02:00
Sebastian Dröge
34b1eb117f
avdemux: Only set stream-format for H264/H265/AAC when we have a context
...
Otherwise we don't know yet whether we'll have extradata/codec_data, so
can't decide on the stream-format yet.
2020-01-24 11:05:53 +00:00
Haihao Xiang
4f51000920
avivf_mux: support VP9 and AV1
...
Besides vp8, ff_ivf_muxer supports VP9 and AV1
2020-01-24 10:15:44 +00:00
Sebastian Dröge
c057fef347
avcodecmap: Set AAC/H264/H265 stream-format for demuxer/encoder situations if no codec_data is provided
...
This fixes output of the above formats from demuxers.
2020-01-24 08:50:53 +00:00
Seungha Yang
40f5953828
avviddec,avcodemap: Use new helper function for map color space information
...
... between GStreamer and FFmpeg. Note that FFmpeg follows ISO/IEC 23001-8
defined color{matrix,transfer,primaries} values.
2019-09-24 23:52:11 +09:00
Seungha Yang
2b50a0ce93
avcodecmap,avviddec: Map bt2020-10, PQ and HLG transfer functions
...
Map more transfer functions between Gstreamer and ffmpeg
2019-05-24 20:44:12 +09:00
Arun Raghavan
597578ca41
codecmap: Add caps for aptX and aptX-HD
2019-05-24 09:51:44 +00:00
Edward Hervey
9d41d2747b
codecmap: Add mapping for Voxware metasound
...
Allows actually decoding such streams :)
2018-11-08 16:33:57 +01:00
Georg Ottinger
962d2a78fe
avmux: Place pva case after generic case
...
In the function gst_ffmpeg_formatid_get_codecids() in the if / else if
construct the special case !strcmp (format_name, "pva") should be
handled before the generic case (plugin->audio_codec !=
AV_CODEC_ID_NONE) || (plugin->video_codec != AV_CODEC_ID_NONE)
This patch fixes the ordering.
I stumbled accorss this issue while adding a new format to
gst_ffmpeg_formatid_get_codecids()
https://bugzilla.gnome.org/show_bug.cgi?id=796738
2018-07-26 16:22:30 -04:00
George Kiagiadakis
4596249496
avauddec: add support for decoding in non-interleaved layout
...
This removes the internal interleave loop and always negotiates
the native output layout of the libav decoder. Users can use
audioconvert to interleave if necessary.
Special care has been taken to leave the encoder unaffected by
the changes in avcodecmap, since GstAudioEncoder doesn't support
the non-interleaved layout yet.
https://bugzilla.gnome.org/show_bug.cgi?id=705977
2018-07-23 16:16:10 +03:00
Mathieu Duponchelle
1e4529ced2
Refactor avcfg / avvidenc
...
We were previously installing hardcoded properties for all
video encoders, refactor to instead use FFmpeg's AVOption API.
avvidenc still exposes a few properties related to the pass
mechanism: while the AVOption API allows specifying both passes
as flags at the same time, this is not practical in GStreamer's
context, where passes need to be run separately using a stats file.
https://bugzilla.gnome.org/show_bug.cgi?id=792900
2018-07-13 00:53:26 +02:00
Nicolas Dufresne
aa724e2f14
Use AV_ namespace for all CODEC_ macro
...
The remaining use of CODEC_ are codec flags that has been moved into the
new codec private properties or have been deperated. Will be fixed in
later patches.
https://bugzilla.gnome.org/show_bug.cgi?id=792900
2018-07-13 00:53:26 +02:00
Nicolas Dufresne
7b3e41e20b
Use AV_ namespace for INPUT_BUFFER_PADDING_SIZE
...
https://bugzilla.gnome.org/show_bug.cgi?id=792900
2018-07-13 00:53:26 +02:00
Mathieu Duponchelle
a68dbb9c82
Expose support for DSD
...
DSD is usually wrapped in DSF, for which we now also expose the
demuxer.
https://bugzilla.gnome.org/show_bug.cgi?id=721186
2018-05-06 12:49:47 +02:00
Mathieu Duponchelle
d5b0305241
Enable gif format, and make it so avdemux_gif and avdec_gif can autoplug
...
https://bugzilla.gnome.org/show_bug.cgi?id=784684
2018-02-12 08:27:53 +01:00
Jan Alexander Steffens (heftig)
a771795005
avdemux: Whitelist the demuxers required for GC/Wii/WiiU ADPCM streams
...
Required to play .brstm (GameCube/Wii) and .bfstm (Wii U) files. Needs
at least avdec_adpcm_thp too, but that one is already accessible.
https://bugzilla.gnome.org/show_bug.cgi?id=789139
2017-10-19 16:50:38 +02:00
Mathieu Duponchelle
2bb0dc16d6
gstavcodecmap: Do not require a channel-mask
...
.. for mono or stereo input.
https://bugzilla.gnome.org/show_bug.cgi?id=786401
2017-08-17 14:49:12 +02:00
Arun Raghavan
2e25f166fc
avvidenc: Classify image encoders with "Image" instead of "Video"
...
This allows gst_video_convert_sample*() to work with codecs for which we
have libav encoders (such as BMP).
https://bugzilla.gnome.org/show_bug.cgi?id=780317
2017-03-21 09:49:45 +05:30
Sebastian Dröge
fecf973bc9
avcodecmap: Add mappings for I420/I422/Y444_12LE/BE and GBRA
...
https://bugzilla.gnome.org/show_bug.cgi?id=780100
2017-03-16 17:22:51 +02:00
Emeric Grange
d666041a51
avcodecmap: Add GBR_12LE/BE and GBRA_12LE/BE pixel format mapping for CineForm decoder
2017-03-16 16:10:23 +02:00
Sebastian Dröge
887e45e6cc
avcodecmap: Add mapping for CineForm HD / CFHD codec
...
https://bugzilla.gnome.org/show_bug.cgi?id=780024
2017-03-14 18:02:23 +02:00
Sebastian Dröge
cfd7503959
avcodecmap: Add mapping for Flash Screen2 codec
2016-12-04 23:39:00 +02:00
Edward Hervey
9258b8ba53
avcodecmap: Add support for packed 32bit RGBx variants
...
We can support those, so just add the mapping
2016-11-24 17:15:14 +01:00
Sebastian Dröge
ac4a47bacb
av: Enable IVF demuxer (and muxer)
...
It works and is a quite unimportant format, we should get rid of our
parser to reduce the amount of code to maintain.
2016-11-16 17:06:54 +02:00
Sebastian Dröge
2c38c99a86
avcodecmap: It's interlace-mode, not interlaced-mode
2016-11-04 16:22:07 +02:00
Sebastian Dröge
7f39f69c7c
avcodecmap: Add variant to the ProRes caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-11-01 20:42:52 +02:00
Sebastian Dröge
d2e65754b3
avcodecmap: Configure field order in the context if we can
...
https://bugzilla.gnome.org/show_bug.cgi?id=771376
2016-11-01 20:42:52 +02:00
Sebastian Dröge
fb9fea0223
avvidenc: Set colorimetry information in the context if known
...
https://bugzilla.gnome.org/show_bug.cgi?id=750882
2016-11-01 20:42:52 +02:00
Tim-Philipp Müller
efe5797041
avcodecmap: Add mapping for Opus audio decoder
...
Make avdec_opus work.
https://bugzilla.gnome.org/show_bug.cgi?id=773672
2016-11-01 19:05:37 +02:00
Sebastian Dröge
8443af343e
av: Cast AVContext::bit_rate to a guint before passing to varargs functions
...
We expect it to be a int or uint, however it changed the type to a
int64_t in later versions of ffmpeg. As such it would be passed as a 64
bit value to varargs functions, while the consumer of the arguments
assumes only 32 bits. This causes crashes.
https://bugzilla.gnome.org/show_bug.cgi?id=771092
2016-09-14 11:20:48 +02:00
Tim-Philipp Müller
e5ceb287d3
libav: fix confusing 'insane framerate' debug log message
...
Usually means no framerate / variable framerate. Also the
fraction arguments were swapped.
2016-08-20 10:54:07 +01:00
Sebastian Dröge
445a301844
avcodecmap: Add mapping for G729 caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=766333
2016-05-13 10:27:38 +03:00
Sebastian Dröge
34fe6af6da
avcodecmap: Only set the bitrate if we actually got it from the caps
...
Otherwise we set a random value from the stack as bitrate. The default (0)
is a better choice and doesn't upset valgrind.
2016-03-11 15:44:16 +02:00
Sebastian Dröge
46fb2e9f11
libav: Bitrate field changed from int to int64_t, fix compiler warnings
...
Cast it to a gint64 for now though, as otherwise we will fail compilation
with ffmpeg 2.8.
https://bugzilla.gnome.org/show_bug.cgi?id=757498
2016-01-16 17:23:37 +02:00
Andreas Cadhalpun
6235a04ef3
libav: Remove usage of deprecated API
...
https://bugzilla.gnome.org/show_bug.cgi?id=757498
2016-01-16 16:47:40 +02:00
Sebastian Dröge
8e466b73d8
avcodecmap: Add special mapping for mono channel layouts
...
In ffmpeg this is the same as FRONT_CENTER, but we distinguish between
FRONT_CENTER and MONO in GStreamer. Add an explicit mapping for this special
case in the translations functions.
https://bugzilla.gnome.org/show_bug.cgi?id=759846
2015-12-24 13:10:55 +01:00
Thiago Santos
1356ff84b3
avcodecmap: add jpeg2000 decoder mapping
...
Map the 3 possible jpeg2000 caps to JPEG2000 codec id
2015-10-11 05:27:57 -03:00
Sebastian Dröge
eedefc9f6b
avcodecmap: Don't allocate dummy codec data anymore, it causes crashes nowadays
...
Multithreaded encoders are going to free this dummy codec data twice, e.g.
with this pipeline
gst-launch-1.0 videotestsrc num-buffers=40 ! \
videoconvert ! avenc_mjpeg ! fakesink
2015-10-03 18:25:35 +01:00
James Smith
f92bf2618c
Add support for musepack (mpc) sv8 audio
...
https://bugzilla.gnome.org/show_bug.cgi?id=732682
2015-07-22 09:44:27 +01:00
Wim Taymans
8da0a61dc0
codecmap: add vp9 mapping
2015-06-26 17:30:25 +02:00
Nicolas Dufresne
a33a1bf6e4
avcodec: Check against codec format list
...
There exist few formats (deprecated though) used by mjpeg decoder
and encoder that maps to the same GStreamer format. To properly
pick the right format, also lookup each Codec list before accepting
the format. This fixes error when trying to use mjpeg encoder.
Note that this may results in faded colors. In fact, these special
format are meant to specify that this is full range YUV. Colorimetry
in gst-libav is not yet implemented, hence is ignored in general. So
I think it's fine to first fix the issue before addressing the missing
feature.
https://bugzilla.gnome.org/show_bug.cgi?id=750398
2015-06-11 10:23:33 -04:00