diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix new file mode 100644 index 00000000000..02f1cf89a5f --- /dev/null +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc +, faac, faad2, libass, libkate, libmms +, libmodplug, mpeg2dec, mpg123 +, openjpeg, libopus, librsvg +, timidity, libvdpau, wayland +, libwebp, xvidcore +}: + +stdenv.mkDerivation rec { + name = "gst-plugins-bad-1.2.1"; + + meta = { + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.gpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz"; + sha256 = "f33e7c81fcb742fe50b73ad87ef8a4baa7d6b59c5002a10bf63c8dee22404929"; + }; + + nativeBuildInputs = [ pkgconfig python ]; + + buildInputs = [ + gst-plugins-base orc + faac faad2 libass libkate libmms + libmodplug mpeg2dec mpg123 + openjpeg libopus librsvg + timidity libvdpau wayland + libwebp xvidcore + ]; +} diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix new file mode 100644 index 00000000000..fa5e7696c1a --- /dev/null +++ b/pkgs/development/libraries/gstreamer/base/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, pkgconfig, python, gstreamer, gobjectIntrospection +, orc, alsaLib, libXv, pango, libtheora +, cdparanoia, libvisual +}: + +stdenv.mkDerivation rec { + name = "gst-plugins-base-1.2.1"; + + meta = { + description = "Base plugins and helper libraries"; + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.lgpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz"; + sha256 = "de2444a5c150d4e4b680364d7c0414cd8b015d95b305ff65d65a17683379532f"; + }; + + nativeBuildInputs = [ + pkgconfig python gobjectIntrospection + ]; + + buildInputs = [ + orc alsaLib libXv pango libtheora + cdparanoia libvisual + ]; + + propagatedBuildInputs = [ gstreamer ]; +} diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix new file mode 100644 index 00000000000..6c33b91d6ee --- /dev/null +++ b/pkgs/development/libraries/gstreamer/core/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, pkgconfig, perl, bison, flex, python, gobjectIntrospection +, glib +}: + +stdenv.mkDerivation rec { + name = "gstreamer-1.2.1"; + + meta = { + description = "Open source multimedia framework"; + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.lgpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gstreamer/${name}.tar.xz"; + sha256 = "a4523d2471bca6cd0059a32e3b042f50faa4dadc6439852af8b43ca3f17d1fc9"; + }; + + nativeBuildInputs = [ + pkgconfig perl bison flex python gobjectIntrospection + ]; + + propagatedBuildInputs = [ glib ]; +} diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix new file mode 100644 index 00000000000..1d02e6459ab --- /dev/null +++ b/pkgs/development/libraries/gstreamer/default.nix @@ -0,0 +1,15 @@ +{ callPackage }: + +rec { + gstreamer = callPackage ./core { }; + + gst-plugins-base = callPackage ./base { inherit gstreamer; }; + + gst-plugins-good = callPackage ./good { inherit gst-plugins-base; }; + + gst-plugins-bad = callPackage ./bad { inherit gst-plugins-base; }; + + gst-plugins-ugly = callPackage ./ugly { inherit gst-plugins-base; }; + + gst-libav = callPackage ./libav { inherit gst-plugins-base; }; +} diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix new file mode 100644 index 00000000000..75af280b0af --- /dev/null +++ b/pkgs/development/libraries/gstreamer/good/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchurl, pkgconfig, python +, gst-plugins-base, orc, bzip2 +, libv4l, libdv, libavc1394, libiec61883 +, libvpx, speex, flac, taglib +, cairo, gdk_pixbuf, aalib, libcaca +, libsoup, pulseaudio +}: + +stdenv.mkDerivation rec { + name = "gst-plugins-good-1.2.1"; + + meta = { + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.gpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz"; + sha256 = "660fa02dbe01086fcf702d87acc0ba5dde2559d6a11ecf438874afe504c50517"; + }; + + nativeBuildInputs = [ pkgconfig python ]; + + buildInputs = [ + gst-plugins-base orc bzip2 + libv4l libdv libavc1394 libiec61883 + libvpx speex flac taglib + cairo gdk_pixbuf aalib libcaca + libsoup pulseaudio + ]; +} diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix new file mode 100644 index 00000000000..72556d96802 --- /dev/null +++ b/pkgs/development/libraries/gstreamer/libav/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, python, yasm +, gst-plugins-base, bzip2 +}: + +stdenv.mkDerivation rec { + name = "gst-libav-1.2.1"; + + meta = { + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.lgpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gst-libav/${name}.tar.xz"; + sha256 = "fd152b7aec56ae76ad58b9759913a8bfe1792bdf64f260d0acaba75b75076676"; + }; + + nativeBuildInputs = [ pkgconfig python yasm ]; + + buildInputs = [ + gst-plugins-base bzip2 + ]; +} diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix new file mode 100644 index 00000000000..60bf519a76c --- /dev/null +++ b/pkgs/development/libraries/gstreamer/ugly/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, pkgconfig, python +, gst-plugins-base, orc +, a52dec, libcdio, libdvdread +, lame, libmad, libmpeg2, x264 +}: + +stdenv.mkDerivation rec { + name = "gst-plugins-ugly-1.2.1"; + + meta = { + homepage = "http://gstreamer.freedesktop.org"; + license = stdenv.lib.licenses.lgpl2Plus; + platforms = stdenv.lib.platforms.linux; + }; + + src = fetchurl { + url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz"; + sha256 = "35ae5d45de54827604e24f57f54ab30a5ab2245b4c4120977273eb11d19c2395"; + }; + + nativeBuildInputs = [ pkgconfig python ]; + + buildInputs = [ + gst-plugins-base orc + a52dec libcdio libdvdread + lame libmad libmpeg2 x264 + ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 51deb230dc0..81fd038ff46 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4399,6 +4399,8 @@ let mpfr = callPackage ../development/libraries/mpfr { }; mpfr_3_1_2 = callPackage ../development/libraries/mpfr/3.1.2.nix { }; + gst_all_1 = callPackage ../development/libraries/gstreamer { }; + gst_all = { inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer; gstPluginsBase = pkgs.gst_plugins_base;