Awesome
gstreamer-libde265
Powered by libde265
Deprecated
The libde265 plugin has been integrated in upstream GStreamer: https://gstreamer.freedesktop.org/documentation/de265/index.html
Using code from this repository therefore should no longer be necessary.
Building
If you got gstreamer-libde265 from the git repository, you will first
need to run the included autogen.sh
script to generate the configure
script.
Compile for gstreamer0.10:
$ ./configure --enable-gstreamer0.10
$ make
Compile for gstreamer1.0:
$ ./configure
$ make
Dependencies
Various libraries are required to build gstreamer-libde265:
libde265-dev
(>= 0.7),libz-dev
libbz2-dev
libgstreamer0.10-dev
(only for gstreamer0.10)libgstreamer-plugins-base0.10-dev
(only for gstreamer0.10)libgstreamer-plugins-bad0.10-dev
(only for gstreamer0.10)libgstreamer1.0-dev
(only for gstreamer1.0)libgstreamer-plugins-base1.0-dev
(only for gstreamer1.0)libgstreamer-plugins-good1.0-dev
(only for gstreamer1.0)libgstreamer-plugins-bad1.0-dev
(only for gstreamer1.0)
Prebuilt packages for old versions of Ubuntu are available at https://launchpad.net/~strukturag/+archive/libde265
Please note that the PPA is no longer maintained since the plugin is part of upstream GStreamer.
Running
To test, make sure the libde265.so.0
is in your LD_LIBRARY_PATH
and
execute:
$ gst-launch-0.10 \
--gst-plugin-path=/path/to/gstreamer-libde265/src/.libs/ \
playbin uri=file:///path/to/sample-hevc.mkv
You can also playback raw H.265/HEVC bitstreams by switching the decoder to raw-mode and passing the desired framerate:
$ gst-launch-0.10 \
--gst-plugin-path=/path/to/gstreamer-libde265/src/.libs/ \
filesrc location=/path/to/sample-bitstream.hevc \
! libde265dec mode=raw framerate=25/1 ! xvimagesink
The examples
folder contains a sample raw bitstream player which can
be used instead of passing the various options to gst-launch
(assuming
you have all necessary plugins in the GStreamer plugin path):
$ ./playhevc --fps=25 /path/to/sample-bitstream.hevc
Other commandline switches are available from
$ ./playhevc --help-all
Performance
Decoder performance was measured using the timehevc
tool from the examples
folder. The tool plays a Matroska movie to the GStreamer fakesink and measures
the average framerate.
Resolution | avg. fps | CPU usage |
---|---|---|
720p | 298 fps | 36 % |
1080p | 161 fps | 43 % |
4K | 40 fps | 55 % |
Environment:
- Intel(R) Core(TM) i7-2700K CPU @ 3.50GHz (4 physical CPU cores)
- Ubuntu 12.04, 64bit
- GStreamer 0.10.36
- libde265 0.7
Copyright (c) 2014 struktur AG