mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-13 11:34:10 +00:00
Moved 'x264enc' from -bad to -ugly
This commit is contained in:
parent
0823e9fa14
commit
5e176f4b0c
9 changed files with 102 additions and 3 deletions
25
configure.ac
25
configure.ac
|
@ -377,6 +377,29 @@ AG_GST_CHECK_FEATURE(TWOLAME, [twolame], twolame, [
|
|||
AC_SUBST(TWOLAME_LIBS)
|
||||
])
|
||||
|
||||
dnl *** x264 (MPEG-4 part 10/h.264/AVC encoder) ***
|
||||
translit(dnm, m, l) AM_CONDITIONAL(USE_X264, true)
|
||||
AG_GST_CHECK_FEATURE(X264, [x264 plug-in], x264, [
|
||||
AG_GST_CHECK_LIBHEADER(X264, x264, x264_nal_encode, -lm, x264.h,
|
||||
AC_MSG_CHECKING([for uptodate x264 API version])
|
||||
dnl _stdint not yet generated, so no compiling
|
||||
AC_TRY_CPP([
|
||||
#include <x264.h>
|
||||
#if X264_BUILD < 55
|
||||
#error "x264 build too old"
|
||||
#endif
|
||||
], [
|
||||
AC_MSG_RESULT(yes)
|
||||
X264_LIBS="$LDFLAGS -lx264 -lm"
|
||||
X264_CFLAGS="$CFLAGS"
|
||||
AC_SUBST(X264_LIBS)
|
||||
AC_SUBST(X264_CFLAGS)
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
HAVE_X264=no
|
||||
]))
|
||||
])
|
||||
|
||||
else
|
||||
|
||||
dnl not building plugins with external dependencies,
|
||||
|
@ -393,6 +416,7 @@ AM_CONDITIONAL(USE_MAD, false)
|
|||
AM_CONDITIONAL(USE_MPEG2DEC, false)
|
||||
AM_CONDITIONAL(USE_SIDPLAY, false)
|
||||
AM_CONDITIONAL(USE_TWOLAME, false)
|
||||
AM_CONDITIONAL(USE_X264, false)
|
||||
|
||||
fi dnl of EXT plugins
|
||||
|
||||
|
@ -479,6 +503,7 @@ ext/mad/Makefile
|
|||
ext/mpeg2dec/Makefile
|
||||
ext/sidplay/Makefile
|
||||
ext/twolame/Makefile
|
||||
ext/x264/Makefile
|
||||
docs/Makefile
|
||||
docs/plugins/Makefile
|
||||
docs/version.entities
|
||||
|
|
|
@ -93,6 +93,7 @@ EXTRA_HFILES = \
|
|||
$(top_srcdir)/ext/mad/gstmad.h \
|
||||
$(top_srcdir)/ext/sidplay/gstsiddec.h \
|
||||
$(top_srcdir)/ext/twolame/gsttwolame.h \
|
||||
$(top_srcdir)/ext/x264/gstx264enc.h \
|
||||
$(top_srcdir)/gst/asfdemux/gstrtspwms.h \
|
||||
$(top_srcdir)/gst/mpegaudioparse/gstxingmux.h \
|
||||
$(top_srcdir)/gst/realmedia/rademux.h \
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
<xi:include href="xml/element-siddec.xml" />
|
||||
<xi:include href="xml/element-twolame.xml" />
|
||||
<xi:include href="xml/element-synaesthesia.xml" />
|
||||
<xi:include href="xml/element-x264enc.xml" />
|
||||
<xi:include href="xml/element-xingmux.xml" />
|
||||
</chapter>
|
||||
|
||||
|
@ -56,5 +57,6 @@
|
|||
<xi:include href="xml/plugin-siddec.xml" />
|
||||
<xi:include href="xml/plugin-synaesthesia.xml" />
|
||||
<xi:include href="xml/plugin-twolame.xml" />
|
||||
<xi:include href="xml/plugin-x264.xml" />
|
||||
</chapter>
|
||||
</book>
|
||||
|
|
|
@ -219,6 +219,20 @@ GST_TYPE_TWO_LAME
|
|||
gst_two_lame_get_type
|
||||
</SECTION>
|
||||
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-x264enc</FILE>
|
||||
<TITLE>x264enc</TITLE>
|
||||
GstX264Enc
|
||||
<SUBSECTION Standard>
|
||||
GstX264EncClass
|
||||
GST_X264_ENC
|
||||
GST_X264_ENC_CLASS
|
||||
GST_IS_X264_ENC
|
||||
GST_IS_X264_ENC_CLASS
|
||||
GST_TYPE_X264_ENC
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<FILE>element-xingmux</FILE>
|
||||
<TITLE>xingmux</TITLE>
|
||||
|
|
34
docs/plugins/inspect/plugin-x264.xml
Normal file
34
docs/plugins/inspect/plugin-x264.xml
Normal file
|
@ -0,0 +1,34 @@
|
|||
<plugin>
|
||||
<name>x264</name>
|
||||
<description>libx264-based H264 plugins</description>
|
||||
<filename>../../ext/x264/.libs/libgstx264.so</filename>
|
||||
<basename>libgstx264.so</basename>
|
||||
<version>0.10.11.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins git/prerelease</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>x264enc</name>
|
||||
<longname>x264enc</longname>
|
||||
<class>Codec/Encoder/Video</class>
|
||||
<description>H264 Encoder</description>
|
||||
<author>Josef Zlomek <josef.zlomek@itonis.tv>, Mark Nauwelaerts <mnauw@users.sf.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw-yuv, format=(fourcc)I420, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h264, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin>
|
|
@ -58,6 +58,12 @@ else
|
|||
TWOLAME_DIR =
|
||||
endif
|
||||
|
||||
if USE_X264
|
||||
X264_DIR=x264
|
||||
else
|
||||
X264_DIR=
|
||||
endif
|
||||
|
||||
SUBDIRS = \
|
||||
$(A52DEC_DIR) \
|
||||
$(AMRNB_DIR) \
|
||||
|
@ -68,7 +74,8 @@ SUBDIRS = \
|
|||
$(MAD_DIR) \
|
||||
$(MPEG2DEC_DIR) \
|
||||
$(SIDPLAY_DIR) \
|
||||
$(TWOLAME_DIR)
|
||||
$(TWOLAME_DIR) \
|
||||
$(X264_DIR)
|
||||
|
||||
DIST_SUBDIRS = \
|
||||
a52dec \
|
||||
|
@ -80,4 +87,5 @@ DIST_SUBDIRS = \
|
|||
mad \
|
||||
mpeg2dec \
|
||||
sidplay \
|
||||
twolame
|
||||
twolame \
|
||||
x264
|
||||
|
|
|
@ -36,6 +36,8 @@ BuildRequires: gcc-c++
|
|||
@USE_DVDREAD_TRUE@Provides: gstreamer-dvdread = %{version}-%{release}
|
||||
@USE_MPEG2DEC_TRUE@Provides: gstreamer-mpeg2dec = %{version}-%{release}
|
||||
|
||||
@USE_X264_TRUE@Requires: x264
|
||||
|
||||
%description
|
||||
GStreamer is a streaming media framework, based on graphs of elements which
|
||||
operate on media data.
|
||||
|
@ -111,8 +113,13 @@ rm -rf $RPM_BUILD_ROOT
|
|||
@USE_MPEG2DEC_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstmpeg2dec.so
|
||||
@USE_TWOLAME_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgsttwolame.so
|
||||
%doc %{_datadir}/gtk-doc/html/gst-plugins-ugly-plugins-%{majorminor}/*
|
||||
@USE_X264_TRUE@%{_datadir}/gstreamer-%{majorminor}/presets/GstX264Enc.prs
|
||||
@USE_X264_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstx264.so
|
||||
|
||||
%changelog
|
||||
* Fri Jun 5 2009 Jan Schmidt <thaytan at mad dot scientist dot com>
|
||||
- Move x264enc plugin from -bad
|
||||
|
||||
* Fri Dec 15 2006 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- further cleanup
|
||||
- add .doap file
|
||||
|
|
|
@ -36,11 +36,18 @@ else
|
|||
MPEG2DEC =
|
||||
endif
|
||||
|
||||
if USE_X264
|
||||
check_x264enc=elements/x264enc
|
||||
else
|
||||
check_x264enc=
|
||||
endif
|
||||
|
||||
check_PROGRAMS = \
|
||||
generic/states \
|
||||
$(AMRNB) \
|
||||
$(LAME) \
|
||||
$(MPEG2DEC) \
|
||||
$(check_x264enc) \
|
||||
elements/xingmux
|
||||
|
||||
# these tests don't even pass
|
||||
|
@ -52,7 +59,7 @@ AM_CFLAGS = $(GST_OBJ_CFLAGS) $(GST_CHECK_CFLAGS) $(CHECK_CFLAGS)
|
|||
LDADD = $(GST_OBJ_LIBS) $(GST_CHECK_LIBS) $(CHECK_LIBS)
|
||||
|
||||
# valgrind testing
|
||||
VALGRIND_TESTS_DISABLE =
|
||||
VALGRIND_TESTS_DISABLE = elements/x264enc
|
||||
|
||||
SUPPRESSIONS = $(top_srcdir)/common/gst.supp $(srcdir)/gst-plugins-ugly.supp
|
||||
|
||||
|
|
1
tests/check/elements/.gitignore
vendored
1
tests/check/elements/.gitignore
vendored
|
@ -1,4 +1,5 @@
|
|||
amrnbenc
|
||||
mpeg2dec
|
||||
x264enc
|
||||
xingmux
|
||||
.dirstamp
|
||||
|
|
Loading…
Reference in a new issue