aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/video.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/video.scm')
-rw-r--r--gnu/packages/video.scm178
1 files changed, 177 insertions, 1 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 7c3bf6b777..a824d5c5f7 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -17,19 +17,37 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages video)
- #:use-module ((guix licenses) #:select (gpl2+))
+ #:use-module ((guix licenses) #:select (gpl2 gpl2+))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages algebra)
+ #:use-module (gnu packages avahi)
+ #:use-module (gnu packages cdrom)
#:use-module (gnu packages compression)
#:use-module (gnu packages elf)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages gl)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gnupg)
+ #:use-module (gnu packages gnutls)
+ #:use-module (gnu packages libjpeg)
+ #:use-module (gnu packages libpng)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages lua)
+ #:use-module (gnu packages mp3)
#:use-module (gnu packages openssl)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages qt)
+ #:use-module (gnu packages sdl)
+ #:use-module (gnu packages ssh)
+ #:use-module (gnu packages version-control)
#:use-module (gnu packages xiph)
+ #:use-module (gnu packages xml)
+ #:use-module (gnu packages xorg)
#:use-module (gnu packages yasm))
(define-public ffmpeg
@@ -192,3 +210,161 @@
convert and stream audio and video. It includes the libavcodec
audio/video codec library.")
(license gpl2+)))
+
+(define-public vlc
+ (package
+ (name "vlc")
+ (version "2.1.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://download.videolan.org/pub/videolan/vlc/"
+ version "/vlc-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1lymhbb2bns73qivdaqanhggjjhyc9fwfgf5ikhng0a74msnqmiy"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("git" ,git) ; needed for a test
+ ("pkg-config" ,pkg-config)))
+ ;; FIXME: Add optional inputs once available.
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("avahi" ,avahi)
+ ("dbus" ,dbus)
+ ("flac" ,flac)
+ ("ffmpeg" ,ffmpeg)
+ ("fontconfig" ,fontconfig)
+ ("freetype" ,freetype)
+ ("gnutls" ,gnutls)
+ ("libcddb" ,libcddb)
+ ("libgcrypt" ,libgcrypt)
+ ("libkate" ,libkate)
+ ("libmad" ,libmad)
+ ("libogg" ,libogg)
+ ("libpng" ,libpng)
+ ("libsamplerate" ,libsamplerate)
+ ("libssh2" ,libssh2)
+ ("libvorbis" ,libvorbis)
+ ("libtheora" ,libtheora)
+ ("libxext" ,libxext)
+ ("libxinerama" ,libxinerama)
+ ("libxml2" ,libxml2)
+ ("libxpm" ,libxpm)
+ ("lua" ,lua-5.1)
+ ("mesa" ,mesa)
+ ("opus" ,opus)
+ ("perl" ,perl)
+ ("pulseaudio" ,pulseaudio)
+ ("python" ,python-wrapper)
+ ("qt" ,qt-4)
+ ("sdl" ,sdl)
+ ("sdl-image" ,sdl-image)
+ ("speex" ,speex)
+ ("xcb-util-keysyms" ,xcb-util-keysyms)))
+ (arguments
+ `(#:configure-flags
+ `("--disable-a52" ; FIXME: reenable once available
+ "--disable-mmx" ; FIXME: may be enabled on x86_64
+ "--disable-sse" ; 1-4, no separate options available
+ "--disable-neon"
+ "--disable-altivec"
+ ,(string-append "LDFLAGS=-Wl,-rpath -Wl,"
+ (assoc-ref %build-inputs "ffmpeg")
+ "/lib")))) ; needed for the tests
+ (home-page "https://www.videolan.org/")
+ (synopsis "Audio and video framework")
+ (description "VLC is a cross-platform multimedia player and framework
+that plays most multimedia files as well as DVD, Audio CD, VCD, and various
+treaming protocols.")
+ (license gpl2+)))
+
+(define-public mplayer
+ (package
+ (name "mplayer")
+ (version "1.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://www.mplayerhq.hu/MPlayer/releases/MPlayer-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0xlcg7rszrwmw29wqr0plsw5d1rq0hb7vjsq7bmmfsly2z1wg3yf"))))
+ (build-system gnu-build-system)
+ ;; FIXME: Add additional inputs once available.
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("cdparanoia" ,cdparanoia)
+ ("fontconfig" ,fontconfig)
+ ("freetype" ,freetype)
+ ("lame" ,lame)
+ ("libmpg123" ,mpg123) ; audio codec for MP3
+;; ("giflib" ,giflib) ; uses QuantizeBuffer, requires version >= 5
+ ("libjpeg" ,libjpeg)
+ ("libpng" ,libpng)
+ ("libtheora" ,libtheora)
+ ("libvorbis" ,libvorbis)
+ ("libx11" ,libx11)
+ ("libxxf86dga" ,libxxf86dga)
+ ("libxinerama" ,libxinerama)
+ ("libxv" ,libxv)
+ ("mesa" ,mesa)
+ ("perl" ,perl)
+ ("pulseaudio" ,pulseaudio)
+ ("python" ,python-wrapper)
+ ("sdl" ,sdl)
+ ("speex" ,speex)
+ ("yasm" ,yasm)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:tests? #f ; no test target
+ #:phases
+ (alist-replace
+ 'configure
+ ;; configure does not work followed by "SHELL=..." and
+ ;; "CONFIG_SHELL=..."; set environment variables instead
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (libx11 (assoc-ref inputs "libx11")))
+ (substitute* "configure"
+ (("#! /bin/sh") (string-append "#!" (which "bash"))))
+ (setenv "SHELL" (which "bash"))
+ (setenv "CONFIG_SHELL" (which "bash"))
+ (zero? (system*
+ "./configure"
+ (string-append "--extra-cflags=-I"
+ libx11 "/include") ; to detect libx11
+ "--disable-tremor-internal" ; forces external libvorbis
+ (string-append "--prefix=" out)
+ ;; drop special machine instructions not supported
+ ;; on all instances of the target
+ ,@(if (string-prefix? "x86_64"
+ (or (%current-target-system)
+ (%current-system)))
+ '()
+ '("--disable-3dnow"
+ "--disable-3dnowext"
+ "--disable-mmx"
+ "--disable-mmxext"
+ "--disable-sse"
+ "--disable-sse2"))
+ "--disable-ssse3"
+ "--disable-altivec"
+ "--disable-armv5te"
+ "--disable-armv6"
+ "--disable-armv6t2"
+ "--disable-armvfp"
+ "--disable-neon"
+ "--disable-thumb"
+ "--disable-iwmmxt"))))
+ %standard-phases)))
+ (home-page "http://www.mplayerhq.hu/design7/news.html")
+ (synopsis "Audio and video player")
+ (description "MPlayer is a movie player. It plays most MPEG/VOB, AVI,
+Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT,
+NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files. One can watch VideoCD,
+SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
+ (license gpl2)))