#:use-module (gnu packages ocr)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages popt)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
(sha256
(base32
"0czccp4fcpf2ykp16xcrzdfmnircz1ynhls334q374xknd5747d2"))
- (patches (map search-patch '("liba52-enable-pic.patch"
- "liba52-set-soname.patch"
- "liba52-use-mtune-not-mcpu.patch"
- "liba52-link-with-libm.patch")))))
+ (patches (search-patches "liba52-enable-pic.patch"
+ "liba52-set-soname.patch"
+ "liba52-use-mtune-not-mcpu.patch"
+ "liba52-link-with-libm.patch"))))
(build-system gnu-build-system)
;; XXX We need to run ./bootstrap because of the build system fixes above.
(native-inputs
(define-public libx264
(package
(name "libx264")
- (version "20150706-2245")
+ (version "20160220-2245")
(source (origin
(method url-fetch)
- (uri (string-append "ftp://ftp.videolan.org/pub/x264/snapshots/"
+ (uri (string-append "http://download.videolan.org/pub/x264/snapshots/"
"x264-snapshot-" version ".tar.bz2"))
(sha256
(base32
- "0v04xq25q66gsk78i4kryy7503ki87jxbhln2c0qpvyy0d47p466"))))
+ "12zyzbiihfhamf7yi4qqaj6k0nisnrydvfr36kxadvmsm7dg4sj3"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(define-public libass
(package
(name "libass")
- (version "0.13.1")
+ (version "0.13.2")
(source (origin
(method url-fetch)
(uri (string-append
version "/libass-" version ".tar.xz"))
(sha256
(base32
- "1rrz6is2blx8jqyydcz71y2f5f948blgx14jzi3an756fqc6p8sa"))))
+ "1kpsw4zw95v4cjvild9wpk73dzavn1khsm3bm32kcz6amnkd166n"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(origin
(method url-fetch)
(uri (string-append
- "http://www.freedesktop.org/software/vaapi/releases/libva/libva-"
+ "https://www.freedesktop.org/software/vaapi/releases/libva/libva-"
version".tar.bz2"))
(sha256
(base32 "0bjfb5s8dk3lql843l91ffxzlq47isqks5sj19cxh7j3nhzw58kz"))))
(define-public ffmpeg
(package
(name "ffmpeg")
- (version "2.8.6")
+ (version "3.0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
- "1yh7dvm7zwdlsspdaq524s5qaggma5md9h95qc4kvb5dmyyyvg15"))))
+ "08sjp4dxgcinmv9ly7nm24swmn2cnbbhvph44ihlplf4n33kr542"))))
(build-system gnu-build-system)
(inputs
`(("fontconfig" ,fontconfig)
("libbluray" ,libbluray)
("libcaca" ,libcaca)
("libcdio-paranoia" ,libcdio-paranoia)
- ("libquvi" ,libquvi)
("libtheora" ,libtheora)
("libvdpau" ,libvdpau)
("libvorbis" ,libvorbis)
("speex" ,speex)
("twolame" ,twolame)
("xvid" ,xvid)
- ("zlib", zlib)))
+ ("zlib" ,zlib)))
(native-inputs
`(("bc" ,bc)
("perl" ,perl)
"--enable-libmp3lame"
"--enable-libopus"
"--enable-libpulse"
- "--enable-libquvi"
"--enable-libsoxr"
"--enable-libspeex"
"--enable-libtheora"
;; Runtime cpu detection is not implemented on
;; MIPS, so we disable some features.
"--disable-mips32r2"
- "--disable-mipsdspr1"
+ "--disable-mipsdsp"
"--disable-mipsdspr2"
"--disable-mipsfpu")
#:phases
(format #t "setting LD_LIBRARY_PATH to ~s~%" path)
(setenv "LD_LIBRARY_PATH" path)
#t))))))
- (home-page "http://www.ffmpeg.org/")
+ (home-page "https://www.ffmpeg.org/")
(synopsis "Audio and video framework")
(description "FFmpeg is a complete, cross-platform solution to record,
convert and stream audio and video. It includes the libavcodec
audio/video codec library.")
(license license:gpl2+)))
+(define-public ffmpeg-2.8
+ (package
+ (inherit ffmpeg)
+ (version "2.8.6")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "1yh7dvm7zwdlsspdaq524s5qaggma5md9h95qc4kvb5dmyyyvg15"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments ffmpeg)
+ ((#:configure-flags flags)
+ `(map (lambda (flag)
+ (if (string=? flag "--disable-mipsdsp")
+ "--disable-mipsdspr1"
+ flag))
+ ,flags))))))
+
(define-public vlc
(package
(name "vlc")
version "/vlc-" version ".tar.xz"))
(sha256
(base32
- "1jqzrzrpw6932lbkf863xk8cfmn4z2ngbxz7w8ggmh4f6xz9sgal"))))
+ "1jqzrzrpw6932lbkf863xk8cfmn4z2ngbxz7w8ggmh4f6xz9sgal"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; There are two occurrences where __DATE__ and __TIME__ are
+ ;; used to capture the build time and show it to the user.
+ '(substitute* (find-files "." "help\\.c(pp)?$")
+ (("__DATE__") "\"2016\"")
+ (("__TIME__") "\"00:00\"")))))
(build-system gnu-build-system)
(native-inputs
`(("git" ,git) ; needed for a test
("avahi" ,avahi)
("dbus" ,dbus)
("flac" ,flac)
- ("ffmpeg" ,ffmpeg)
+ ("ffmpeg" ,ffmpeg-2.8) ;fails to build against ffmpeg 3.0
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("gnutls" ,gnutls)
`("--disable-a52" ; FIXME: reenable once available
,(string-append "LDFLAGS=-Wl,-rpath -Wl,"
(assoc-ref %build-inputs "ffmpeg")
- "/lib")))) ; needed for the tests
+ "/lib")) ;needed for the tests
+
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'regenerate-plugin-cache
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; The 'install-exec-hook' rule in the top-level Makefile.am
+ ;; generates 'lib/vlc/plugins/plugins.dat', a plugin cache, using
+ ;; 'vlc-cache-gen'. This file includes the mtime of the plugins
+ ;; it references. Thus, we first reset the timestamps of all
+ ;; these files, and then regenerate the cache such that the
+ ;; mtimes it includes are always zero instead of being dependent
+ ;; on the build time.
+ (let* ((out (assoc-ref outputs "out"))
+ (pkglibdir (string-append out "/lib/vlc"))
+ (plugindir (string-append pkglibdir "/plugins"))
+ (cachegen (string-append pkglibdir "/vlc-cache-gen")))
+ ;; TODO: Factorize 'reset-timestamps'.
+ (for-each (lambda (file)
+ (let ((s (lstat file)))
+ (unless (eq? (stat:type s) 'symlink)
+ (utime file 0 0 0 0))))
+ (find-files plugindir))
+ (zero? (system* cachegen plugindir))))))))
(home-page "https://www.videolan.org/")
(synopsis "Audio and video framework")
(description "VLC is a cross-platform multimedia player and framework
(define-public mplayer
(package
(name "mplayer")
- (version "1.2.1")
+ (version "1.3.0")
(source (origin
(method url-fetch)
(uri (string-append
- "http://www.mplayerhq.hu/MPlayer/releases/MPlayer-"
+ "https://www.mplayerhq.hu/MPlayer/releases/MPlayer-"
version ".tar.xz"))
(sha256
(base32
- "0prbqnsl6s7fbpp6nc6babx7gzwdrhrhzf0cmp6xz6w9gl4sy6w3"))))
+ "0hwqn04bdknb2ic88xd75smffxx63scvz0zvwvjb56nqj9n89l1s"))))
(build-system gnu-build-system)
;; FIXME: Add additional inputs once available.
(native-inputs
(inputs
`(("alsa-lib" ,alsa-lib)
("cdparanoia" ,cdparanoia)
+ ("ffmpeg" ,ffmpeg)
("fontconfig" ,fontconfig)
- ("ffmpeg", ffmpeg)
("freetype" ,freetype)
- ("lame" ,lame)
- ("libdvdcss", libdvdcss)
- ("libdvdnav", libdvdnav)
- ("libmpg123" ,mpg123) ; audio codec for MP3
;; ("giflib" ,giflib) ; uses QuantizeBuffer, requires version >= 5
+ ("lame" ,lame)
+ ("libass" ,libass)
+ ("libdvdcss" ,libdvdcss)
+ ("libdvdnav" ,libdvdnav)
("libjpeg" ,libjpeg)
+ ("libmpeg2" ,libmpeg2)
+ ("libmpg123" ,mpg123) ; audio codec for MP3
("libpng" ,libpng)
("libtheora" ,libtheora)
+ ("libvdpau" ,libvdpau)
("libvorbis" ,libvorbis)
("libx11" ,libx11)
- ("libxxf86dga" ,libxxf86dga)
+ ("libx264" ,libx264)
("libxinerama" ,libxinerama)
("libxv" ,libxv)
+ ("libxxf86dga" ,libxxf86dga)
("mesa" ,mesa)
+ ("opus" ,opus)
("perl" ,perl)
("pulseaudio" ,pulseaudio)
("python" ,python-wrapper)
(arguments
`(#:tests? #f ; no test target
#:phases
- (alist-replace
- 'configure
+ (modify-phases %standard-phases
+ (replace 'configure
;; configure does not work followed by "SHELL=..." and
;; "CONFIG_SHELL=..."; set environment variables instead
(lambda* (#:key inputs outputs #:allow-other-keys)
"./configure"
(string-append "--extra-cflags=-I"
libx11 "/include") ; to detect libx11
- "--disable-ffmpeg_a" ; disables bundled ffmpeg
+ "--disable-ffmpeg_a" ; disables bundled ffmpeg
(string-append "--prefix=" out)
;; Enable runtime cpu detection where supported,
;; and choose a suitable target.
(or (%current-target-system)
(nix-system->gnu-triplet
(%current-system)))))))
- "--disable-iwmmxt"))))
- %standard-phases)))
- (home-page "http://www.mplayerhq.hu/design7/news.html")
+ "--disable-iwmmxt"))))))))
+ (home-page "https://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,
(define-public mpv
(package
(name "mpv")
- (version "0.15.0")
+ (version "0.17.0")
(source (origin
(method url-fetch)
(uri (string-append
".tar.gz"))
(sha256
(base32
- "1p0b83048g66icpz5n66v3k4ldr1z0rmg5d2rr7kcbspm1xj2cbx"))
+ "0vms3viwqcwl1mrgmf2yy4c69fvv7xpbkyrl693l6zpwynqd4b30"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system waf-build-system)
(native-inputs
#:configure-flags (list "--enable-gpl3" "--enable-zsh-comp")
;; No check function defined.
#:tests? #f))
- (home-page "http://mpv.io/")
+ (home-page "https://mpv.io/")
(synopsis "Audio and video player")
(description "mpv is a general-purpose audio and video player. It is a
fork of mplayer2 and MPlayer. It shares some features with the former
(define-public libvpx
(package
(name "libvpx")
- (version "1.4.0")
+ (version "1.5.0")
(source (origin
(method url-fetch)
(uri (string-append "http://storage.googleapis.com/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "1r0ql5kgy0c8mh5w7iiqvsd7w5njl9f9cclc7m52ln8assrdk0pm"))))
+ "15v7qw0ydyxn08ksb6lxn1l51pxgpwgshdwd3275yrr5hs86fv9h"))))
(build-system gnu-build-system)
(arguments
- `(#:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (setenv "CONFIG_SHELL" (which "bash"))
- (let ((out (assoc-ref outputs "out")))
- (setenv "LDFLAGS"
- (string-append "-Wl,-rpath=" out "/lib"))
- (zero? (system* "./configure"
- "--enable-shared"
- "--as=yasm"
- ;; Limit size to avoid CVE-2015-1258
- "--size-limit=16384x16384"
- (string-append "--prefix=" out)))))
- %standard-phases)
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "CONFIG_SHELL" (which "bash"))
+ (let ((out (assoc-ref outputs "out")))
+ (setenv "LDFLAGS"
+ (string-append "-Wl,-rpath=" out "/lib"))
+ (zero? (system* "./configure"
+ "--enable-shared"
+ "--as=yasm"
+ ;; Limit size to avoid CVE-2015-1258
+ "--size-limit=16384x16384"
+ (string-append "--prefix=" out)))))))
#:tests? #f)) ; no check target
(native-inputs
`(("perl" ,perl)
(define-public youtube-dl
(package
(name "youtube-dl")
- (version "2016.02.01")
+ (version "2016.05.01")
(source (origin
(method url-fetch)
(uri (string-append "http://youtube-dl.org/downloads/"
version ".tar.gz"))
(sha256
(base32
- "04r68acrhx7wapmxph6lcf8hh0pnp76h9p85gcxpidc9m7ypzjfa"))))
+ "1w04afmwq5pjvp3nl2k59q0cigqrj9n8fwkydcfldwpq83l15j5d"))))
(build-system python-build-system)
- (native-inputs `(("python-setuptools" ,python-setuptools)))
(home-page "http://youtube-dl.org")
(arguments
;; The problem here is that the directory for the man page and completion
(sha256
(base32
"1vas43bwb15q2wv3dpp7fgp8dc6szinmwl7i0ziq2vv5l2128v0p"))
- (patches (map search-patch '("avidemux-install-to-lib.patch")))))
+ (patches (search-patches "avidemux-install-to-lib.patch"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(define-public xvid
(package
(name "xvid")
- (version "1.3.3")
+ (version "1.3.4")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.bz2"))
(sha256
(base32
- "0m5g75qvapr7xpywg6a83v5x19kw1nm9l2q48lg7jvvpba0bmqdh"))))
+ "1xwbmp9wqshc0ckm970zdpi0yvgqxlqg0s8bkz98mnr8p2067bsz"))))
(build-system gnu-build-system)
(native-inputs `(("yasm" ,yasm)))
(arguments
'(#:phases
- (alist-cons-before
- 'configure 'pre-configure
- (lambda _
- (chdir "build/generic")
- (substitute* "configure"
- (("#! /bin/sh") (string-append "#!" (which "sh")))))
- %standard-phases)
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'pre-configure
+ (lambda _
+ (chdir "build/generic")
+ (substitute* "configure"
+ (("#! /bin/sh") (string-append "#!" (which "sh")))))))
;; No 'check' target.
#:tests? #f))
(home-page "https://www.xvid.com/")
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; tests rely on external web servers
- (native-inputs
- `(("python-setuptools" ,python-setuptools)))
(propagated-inputs
- `(("python-requests" ,python-requests)
- ("python-singledispatch" ,python-singledispatch)))
+ `(("python-requests" ,python-requests)))
(synopsis "Internet video stream viewer")
(description "Livestreamer is a command-line utility that extracts streams
from various services and pipes them into a video playing application.")
(define-public mlt
(package
(name "mlt")
- (version "0.9.8")
+ (version "6.2.0")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://sourceforge/mlt/mlt/mlt-"
- version ".tar.gz"))
+ (uri (string-append "https://github.com/mltframework/mlt/"
+ "archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0rmrkj7z9g3nr4099f3ff0r14l3ixcfnlx2cdbkqa6pxin0pv9bz"))))
+ "1zwzfgxrcbwkxnkiwv0a1rzxdnnaly90yyarl9wdw84nx11ffbnx"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
("jack" ,jack-1)
("ladspa" ,ladspa)
("libsamplerate" ,libsamplerate)
+ ("pulseaudio" ,pulseaudio)
("sdl" ,sdl)
("sox" ,sox)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "http://www.mltframework.org/")
+ (home-page "https://www.mltframework.org/")
(synopsis "Author, manage, and run multitrack audio/video compositions")
(description
"MLT is a multimedia framework, designed and developed for television
(define-public v4l-utils
(package
(name "v4l-utils")
- (version "1.8.1")
+ (version "1.10.0")
(source (origin
(method url-fetch)
- (uri (string-append "http://linuxtv.org/downloads/v4l-utils"
+ (uri (string-append "https://linuxtv.org/downloads/v4l-utils"
"/v4l-utils-" version ".tar.bz2"))
(sha256
(base32
- "0cqv8drw0z0kfmz4f50a8kzbrz6vbj6j6q78030hgshr7yq1jqig"))))
+ "0srkwh3r6f0bkb4kp0d7i0mlmp8babs3qc22cdy1sw4awmzd5skq"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
(define-public obs
(package
(name "obs")
- (version "0.13.0")
+ (version "0.14.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jp9000/obs-studio"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1rk5yfcqwjj4a8bj35fsfzk5qlsf5ylsy0z7kdrpl3fhnmla2izz"))))
+ "1w07ign2swfigmsjd2jyaqqdnj2zpzs8hzsjzzk5l377jbx3ml5g"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ; no tests
(native-inputs
(description "Vdpauinfo is a tool to query the capabilities of a VDPAU
implementation.")
(license (license:x11-style "file://COPYING"))))
+
+(define-public recordmydesktop
+ (package
+ (name "recordmydesktop")
+ (version "0.3.8.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/" name "/" name "/"
+ version "/recordmydesktop-" version ".tar.gz"))
+ (sha256
+ (base32
+ "133kkl5j0r877d41bzj7kj0vf3xm8x80yyx2n8nqxrva304f58ik"))))
+ (build-system gnu-build-system)
+ (inputs `(("popt" ,popt)
+ ("zlib" ,zlib)
+ ("libx11" ,libx11)
+ ("libice" ,libice)
+ ("libsm" ,libsm)
+ ("libxfixes" ,libxfixes)
+ ("libxdamage" ,libxdamage)
+ ("libxext" ,libxext)
+ ("libvorbis" ,libvorbis)
+ ("libtheora" ,libtheora)))
+ (home-page "http://recordmydesktop.sourceforge.net/")
+ (synopsis "Desktop session video recorder")
+ (description
+ "recordMyDesktop is a command-line tool that captures the activity in
+your graphical desktop and encodes it as a video. This is a useful tool for
+making @dfn{screencasts}.")
+ (license license:gpl2+)))