gstreamer/gst/encoding
Mathieu Duponchelle 4aa72cea4f smartencoder: clean up and extend accepted formats
* Add support for H265

* Don't overwrite original codec_data / streamheader in the output
  caps, but instead allow them to change and send them to the
  combiner at the right moment: encoder caps, reencoded GOP,
  original caps, original GOP(s), and potentially encoder caps
  and rencoded last GOP.

* For H264 / H265, force usage of a format with inband SPS / PPS
  (avc3 / hev1), this is cleaner than misadvertising avc1, hvc1 and
  some muxers like mp4mux will actually advertise both differently.

  Unfortunately, while mp4 supports updating the codec_data and using
  avc1 with no in-band SPS / PPS updates, it turns out some decoders
  (eg chrome / firefox) don't handle this particularly well and stop
  decoding after the reencoded GOP. We could expose a switch to
  force usage of avc1 / hvc1 nevertheless, but for now stick to
  requiring that the parser output SPS / PPS in-band with
  config-interval=-1 (that has not changed)

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1249>
2021-08-20 14:20:25 +00:00
..
gstencodebasebin.c smartencoder: clean up and extend accepted formats 2021-08-20 14:20:25 +00:00
gstencodebasebin.h encoding: Implement encodebin2 with an ON_REQUEST src pad 2020-11-30 15:44:53 -03:00
gstencodebin.c encoding: allow per feature registration 2021-03-16 17:58:59 +00:00
gstencodebin.h encodebin: Split implementation into a base class 2020-11-30 15:44:53 -03:00
gstencodebin2.c encoding: allow per feature registration 2021-03-16 17:58:59 +00:00
gstencodebin2.h encoding: Implement encodebin2 with an ON_REQUEST src pad 2020-11-30 15:44:53 -03:00
gstencodingelements.c encoding: allow per feature registration 2021-03-16 17:58:59 +00:00
gstencodingelements.h encoding: allow per feature registration 2021-03-16 17:58:59 +00:00
gstsmartencoder.c smartencoder: clean up and extend accepted formats 2021-08-20 14:20:25 +00:00
gstsmartencoder.h smartencoder: clean up and extend accepted formats 2021-08-20 14:20:25 +00:00
gststreamcombiner.c streamsplitter/combiner: Drain encoder before switching branch 2020-07-22 16:01:25 +00:00
gststreamcombiner.h streamsplitter/combiner: Drain encoder before switching branch 2020-07-22 16:01:25 +00:00
gststreamcombinerpad.h encoding: Use G_DECLARE_FINAL_TYPE 2020-03-16 15:47:58 +00:00
gststreamsplitter.c streamsplitter: Forward STREAM_START to all branchs 2020-07-22 16:01:25 +00:00
gststreamsplitter.h encoding: Use G_DECLARE_FINAL_TYPE 2020-03-16 15:47:58 +00:00
meson.build encoding: allow per feature registration 2021-03-16 17:58:59 +00:00
plugin.c encoding: allow per feature registration 2021-03-16 17:58:59 +00:00