diff options
Diffstat (limited to 'gnu/packages/video.scm')
-rw-r--r-- | gnu/packages/video.scm | 400 |
1 files changed, 248 insertions, 152 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 3ebfc58217..f63da08e4b 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -62,6 +62,7 @@ ;;; Copyright © 2022 Bird <birdsite@airmail.cc> ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> ;;; Copyright © 2022 Chadwain Holness <chadwainholness@gmail.com> +;;; Copyright © 2022 Andy Tai <atai@atai.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -144,11 +145,11 @@ #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages haskell-xyz) + #:use-module (gnu packages hunspell) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages iso-codes) #:use-module (gnu packages libidn) - #:use-module (gnu packages libreoffice) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages llvm) @@ -167,6 +168,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages perl-web) + #:use-module (gnu packages php) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) @@ -250,7 +252,6 @@ "--enable-libquicktime" "--enable-lzo" "--enable-a52" - "--enable-faac" "--enable-libxml2" ;;; XXX: Not available. ;"--enable-ibp" @@ -274,8 +275,7 @@ python-wrapper)) (inputs (list alsa-lib - faac - ffmpeg + ffmpeg-4 freetype imagemagick lame @@ -452,7 +452,7 @@ as a joint effort between the BBC and Fluendo.") (list gettext-minimal doxygen pkg-config)) (inputs (list alsa-lib - ffmpeg + ffmpeg-4 gtk+-2 lame libdv @@ -786,12 +786,18 @@ old-fashioned output methods with powerful ascii-art renderer.") (sha256 (base32 "0ns9xh582c8kajw4v2x5ap5jfiba3gxywqc2klc0v6fc3id1gqii")))) (build-system meson-build-system) + (arguments + (list + #:glib-or-gtk? #t + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-postinstall-script + (lambda _ + (setenv "DESTDIR" "/")))))) (native-inputs (list - desktop-file-utils ; for update-desktop-database intltool `(,glib "bin") ; for glib-compile-resources - `(,gtk "bin") ; for gtk-update-icon-cache pkg-config python-wrapper)) ; for generate-authors.py (inputs @@ -973,6 +979,27 @@ H.264 (MPEG-4 AVC) video streams.") "file://extras/cl.h" "See extras/cl.h in the distribution.")))))) +;;; TODO: Merge into libx264 on staging. +(define-public libx264-next + ;; There are no tags in the repository, so we take the version number from + ;; the X264_BUILD variable defined in x264.h. + (let ((version "164") + (commit "b093bbe7d9bc642c8f24067cbdcc73bb43562eab") + (revision "0")) + (package + (inherit libx264) + (name "libx264") + (version (git-version version revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://code.videolan.org/videolan/x264.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "095pv8y6fqjg8mdvsfk12d0jqgyhip536a6vxhzm7qz8hfp96qhq"))))))) + (define-public mkvtoolnix (package (name "mkvtoolnix") @@ -1004,7 +1031,7 @@ H.264 (MPEG-4 AVC) video streams.") libebml file flac - fmt + fmt-8 libdvdread libmatroska libogg @@ -1099,7 +1126,7 @@ H.264 (MPEG-4 AVC) video streams.") (define-public pipe-viewer (package (name "pipe-viewer") - (version "0.2.3") + (version "0.4.4") (source (origin (method git-fetch) @@ -1109,7 +1136,7 @@ H.264 (MPEG-4 AVC) video streams.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0c2v4pj86442sp71ndjmvd2bl1grp6g9ya2ywdaihq1f2djk6jxl")))) + (base32 "0ka5az3aq2khql9nlxnrbkbs7afmp07r2fkx5pvmh6mqnriaimq3")))) (build-system perl-build-system) (arguments `(#:imported-modules @@ -1581,14 +1608,14 @@ operate properly.") (define-public ffmpeg-5 (package (name "ffmpeg") - (version "5.1.1") + (version "5.1.2") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0d84pjmlb5ss1yybxic3wlyrr31wcsg29ysqx5qiwlcnqkw3zgwm")))) + "1p7kxr0f9f9d0pyyxq9ciaj9ch2drmcw5p9jk22j111ccrnp17k1")))) (build-system gnu-build-system) (inputs (append @@ -1646,7 +1673,6 @@ operate properly.") ;; --enable-libcelt enable CELT decoding via libcelt [no] ;; --enable-libdc1394 enable IIDC-1394 grabbing using libdc1394 ;; and libraw1394 [no] - ;; --enable-libfaac enable AAC encoding via libfaac [no] ;; --enable-libfdk-aac enable AAC de/encoding via libfdk-aac [no] ;; --enable-libflite enable flite (voice synthesis) support via ;; libflite [no] @@ -1782,6 +1808,8 @@ audio/video codec library.") (sha256 (base32 "14xadxm1yaamp216nq09xwasxg5g133v86dbb33mdg5di1zrlhdg")))) + (inputs (modify-inputs (package-inputs ffmpeg-5) + (replace "sdl2" sdl2-2.0))) (arguments (substitute-keyword-arguments (package-arguments ffmpeg-5) ((#:configure-flags flags ''()) @@ -1858,7 +1886,7 @@ audio/video codec library.") (format #t "setting LD_LIBRARY_PATH to ~s~%" path) (setenv "LD_LIBRARY_PATH" path))))))))) -(define-public ffmpeg ffmpeg-4) +(define-public ffmpeg ffmpeg-5) (define-public ffmpeg-for-stepmania (hidden-package @@ -1905,7 +1933,7 @@ audio/video codec library.") (native-inputs (list pkg-config)) (inputs - (list ffmpeg libjpeg-turbo libpng gvfs)) + (list ffmpeg-4 libjpeg-turbo libpng gvfs)) (arguments `(#:configure-flags (list "-DENABLE_GIO=ON" "-DENABLE_THUMBNAILER=ON"))) (home-page "https://github.com/dirkvdb/ffmpegthumbnailer") @@ -1919,7 +1947,7 @@ videoformats depend on the configuration flags of ffmpeg.") (define-public vlc (package (name "vlc") - (version "3.0.17.4") + (version "3.0.18") (source (origin (method url-fetch) (uri (string-append @@ -1928,7 +1956,7 @@ videoformats depend on the configuration flags of ffmpeg.") "/vlc-" version ".tar.xz")) (sha256 (base32 - "0cs1vnv91mg7p6253v6wms3zlz91xzphpwaw14dmrd2gibc64nlc")))) + "1v7db9icrb12yz7banq2wvpjpvqfrj031yj1kf5smn35qcwl82ap")))) (build-system gnu-build-system) (native-inputs (list flex bison gettext-minimal pkg-config)) @@ -2084,7 +2112,7 @@ streaming protocols.") (inputs `(("alsa-lib" ,alsa-lib) ("cdparanoia" ,cdparanoia) - ("ffmpeg" ,ffmpeg) + ("ffmpeg" ,ffmpeg-4) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("giflib" ,giflib) @@ -2161,7 +2189,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (define-public mpv (package (name "mpv") - (version "0.34.1") + (version "0.35.0") (source (origin (method git-fetch) (uri (git-reference @@ -2169,81 +2197,80 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "12qxwm1ww5vhjddl8yvj1xa0n1fi9z3lmzwhaiday2v59ca0qgsk")))) + (base32 "1jnk1arwhf82s6q90jp70izk1wy0bkx3lr3il2jgbqsp355l6wsk")))) (build-system waf-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-file-names + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "player/lua/ytdl_hook.lua" + (("\"yt-dlp\",") + (string-append + "\"" (search-input-file inputs "bin/yt-dlp") "\","))))) + (add-before 'configure 'build-reproducibly + (lambda _ + ;; Somewhere in the build system library dependencies are enumerated + ;; and passed as linker flags, but the order in which they are added + ;; varies. See <https://github.com/mpv-player/mpv/issues/7855>. + ;; Set PYTHONHASHSEED as a workaround for deterministic results. + (setenv "PYTHONHASHSEED" "1"))) + (add-before 'configure 'set-up-waf + (lambda* (#:key inputs #:allow-other-keys) + (copy-file (search-input-file inputs "bin/waf") "waf") + (setenv "CC" #$(cc-for-target))))) + #:configure-flags + #~(list "--enable-libmpv-shared" + "--enable-cdda" + "--enable-dvdnav" + "--disable-build-date") + ;; No check function defined. + #:tests? #f)) (native-inputs (list perl ; for zsh completion file pkg-config python-docutils)) - ;; Missing features: libguess, V4L2 + ;; Missing features: libguess, V4L2. (inputs - `(("alsa-lib" ,alsa-lib) - ("enca" ,enca) - ("ffmpeg" ,ffmpeg) - ("jack" ,jack-1) - ("ladspa" ,ladspa) - ("lcms" ,lcms) - ("libass" ,libass) - ("libbluray" ,libbluray) - ("libcaca" ,libcaca) - ("libbs2b" ,libbs2b) - ("libcdio-paranoia" ,libcdio-paranoia) - ("libdvdread" ,libdvdread) - ("libdvdnav" ,libdvdnav) - ("libjpeg" ,libjpeg-turbo) - ("libva" ,libva) - ("libvdpau" ,libvdpau) - ("libx11" ,libx11) - ("libxext" ,libxext) - ("libxinerama" ,libxinerama) - ("libxrandr" ,libxrandr) - ("libxscrnsaver" ,libxscrnsaver) - ("libxv" ,libxv) - ;; XXX: lua > 5.2 is not currently supported; see - ;; waftools/checks/custom.py - ("lua" ,lua-5.2) - ("mesa" ,mesa) - ("mpg123" ,mpg123) - ("pulseaudio" ,pulseaudio) - ("rsound" ,rsound) - ("shaderc" ,shaderc) - ("vulkan-headers" ,vulkan-headers) - ("vulkan-loader" ,vulkan-loader) - ("waf" ,python-waf) - ("wayland" ,wayland) - ("wayland-protocols" ,wayland-protocols) - ("libxkbcommon" ,libxkbcommon) - ("yt-dlp" ,yt-dlp) - ("zlib" ,zlib))) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((ytdl (assoc-ref inputs "yt-dlp"))) - (substitute* "player/lua/ytdl_hook.lua" - (("\"yt-dlp\",") - (string-append "\"" ytdl "/bin/yt-dlp\",")))))) - (add-before 'configure 'build-reproducibly - (lambda _ - ;; Somewhere in the build system library dependencies are enumerated - ;; and passed as linker flags, but the order in which they are added - ;; varies. See <https://github.com/mpv-player/mpv/issues/7855>. - ;; Set PYTHONHASHSEED as a workaround for deterministic results. - (setenv "PYTHONHASHSEED" "1") - #t)) - (add-before - 'configure 'setup-waf - (lambda* (#:key inputs #:allow-other-keys) - (let ((waf (assoc-ref inputs "waf"))) - (copy-file (string-append waf "/bin/waf") "waf")) - (setenv "CC" "gcc") - #t))) - #:configure-flags (list "--enable-libmpv-shared" - "--enable-cdda" - "--enable-dvdnav" - "--disable-build-date") - ;; No check function defined. - #:tests? #f)) + (list alsa-lib + enca + ffmpeg + jack-1 + ladspa + lcms + libass + libbluray + libcaca + libbs2b + libcdio-paranoia + libdvdread + libdvdnav + libjpeg-turbo + libva + libvdpau + libx11 + libxext + libxkbcommon + libxinerama + libxpresent + libxrandr + libxscrnsaver + libxv + ;; XXX: lua > 5.2 is not currently supported; see + ;; waftools/checks/custom.py + lua-5.2 + mesa + mpg123 + pulseaudio + python-waf + rsound + shaderc + vulkan-headers + vulkan-loader + wayland + wayland-protocols + yt-dlp + zlib)) (home-page "https://mpv.io/") (synopsis "Audio and video player") (description "mpv is a general-purpose audio and video player. It is a @@ -2333,7 +2360,7 @@ images and image hosting sites.") (define-public mpv-mpris (package (name "mpv-mpris") - (version "0.6") + (version "0.9") (source (origin (method git-fetch) @@ -2342,7 +2369,7 @@ images and image hosting sites.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "03gldk149i2108w3ylyfmci77kdq4whdzfavh7hjviwyj534101r")))) + (base32 "1c7avpzcd3sry3q7g5spcl3ywybpjzl2gjarmnlrp74k4nhbprcm")))) (build-system copy-build-system) (arguments '(#:install-plan @@ -2411,6 +2438,54 @@ To load this plugin, specify the following option when starting mpv: (license license:bsd-3) (home-page "https://www.webmproject.org/"))) +;;; TODO: Merge into libvpx on staging. +(define-public libvpx-next + (package + (inherit libvpx) + (name "libvpx") + (version "1.12.0") + (source (origin + (inherit (package-source libvpx)) + (uri (git-reference + (url "https://chromium.googlesource.com/webm/libvpx") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x12f2bd4jqd532rnixmwvcx8d29yxiacpcxqqh86qczc49la8gm")))))) + +(define-public orf-dl + (let ((commit "2dbbe7ef4e0efe0f3c1d59c503108e22d9065999") + (revision "1")) + (package + (name "orf-dl") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tpoechtrager/orf_dl") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1w413miy01cm7rzb5c6wwfdnc2sqv87cvxwikafgrkswpimvdjsk")))) + (build-system copy-build-system) + (arguments + (list #:install-plan #~`(("orf_dl.php" "bin/orf-dl")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "orf_dl.php" + (("ffmpeg") + (search-input-file inputs "bin/ffmpeg")))))))) + (inputs (list php ffmpeg)) + (home-page "https://github.com/tpoechtrager/orf_dl") + (synopsis "Download videos from tvthek.orf.at") + (description "This package provides a PHP-based command line application +to download videos from Austria's national television broadcaster.") + (license license:gpl2+)))) + (define-public youtube-dl (package (name "youtube-dl") @@ -2497,7 +2572,7 @@ YouTube.com and many more sites.") (define-public yt-dlp (package/inherit youtube-dl (name "yt-dlp") - (version "2022.09.01") + (version "2023.01.06") (source (origin (method git-fetch) @@ -2506,7 +2581,7 @@ YouTube.com and many more sites.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0h46624zdqhjf79m78303v00m2r013yaccanv0010rls17v7y6pq")))) + (base32 "13kg6zsc0js4smqj6v4qpiycl9jlijj3pvp49wif6ilgv87sq7v3")))) (arguments (substitute-keyword-arguments (package-arguments youtube-dl) ((#:tests? _) (not (%current-target-system))) @@ -3006,7 +3081,7 @@ capabilities.") (define-public vapoursynth (package (name "vapoursynth") - (version "53") + (version "61") (source (origin (method git-fetch) (uri (git-reference @@ -3015,7 +3090,7 @@ capabilities.") (file-name (git-file-name name version)) (sha256 (base32 - "0qcsfkpkry0cmvi60khjwvfz4fqhy23nqmn4pb9qrwll26sn9dcr")))) + "0v0dp3hydqzam0dp2d9zbrccrsvhy6n61s4v7ca2qbw69vpsm594")))) (build-system gnu-build-system) (arguments `(#:phases @@ -3030,12 +3105,12 @@ capabilities.") (wrap-program (string-append out "/bin/vspipe") `("PYTHONPATH" ":" = (,site))))))))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("cython" ,python-cython) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config) - ("yasm" ,yasm))) + (list autoconf + automake + python-cython + libtool + pkg-config + yasm)) (inputs (list ffmpeg libass python tesseract-ocr zimg)) (home-page "http://www.vapoursynth.com/") @@ -3165,7 +3240,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (define-public mlt (package (name "mlt") - (version "7.8.0") + (version "7.12.0") (source (origin (method git-fetch) @@ -3174,7 +3249,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "01589xpx1vgx1l1zjg553nbjks5wy31rdvyq1sjnbp9w7p7nzjdg")))) + (base32 "182i6fgn9aiskj62kj10cxf5wh233a241n7qvh0l95il01zmpfb3")))) (build-system cmake-build-system) (arguments (list @@ -3263,6 +3338,7 @@ tools, XML authoring components, and an extensible plug-in based API.") ,@(package-arguments mlt))) (inputs (modify-inputs (package-inputs mlt) + (replace "ffmpeg" ffmpeg-4) (replace "gtk+" gtk+-2))))) (define-public v4l-utils @@ -3376,7 +3452,7 @@ be used for realtime video capture via Linux-specific APIs.") bash-minimal curl eudev - ffmpeg + ffmpeg-4 fontconfig freetype glib @@ -3389,13 +3465,13 @@ be used for realtime video capture via Linux-specific APIs.") mbedtls-apache mesa pciutils - pipewire-0.3 + pipewire pulseaudio python qtbase-5 qtsvg-5 qtx11extras - qtwayland + qtwayland-5 speexdsp v4l-utils wayland @@ -3646,7 +3722,7 @@ making @dfn{screencasts}.") ;; As a result, they are omitted. Please add them back if problems appear. (inputs (list alsa-lib - ffmpeg + ffmpeg-4 glu jack-1 libxi @@ -3839,7 +3915,7 @@ supported players in addition to this package.") (inputs `(("bzip2" ,bzip2) ("dbus-glib" ,dbus-glib) - ("ffmpeg" ,ffmpeg) + ("ffmpeg" ,ffmpeg-4) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("glib" ,glib) @@ -4280,7 +4356,7 @@ and ITU-T H.222.0.") (inputs (list zlib)) (propagated-inputs - (list ffmpeg)) + (list ffmpeg-4)) (native-inputs (list pkg-config)) (synopsis "Cross-platform wrapper around ffmpeg/libav") @@ -4515,7 +4591,7 @@ It counts more than 100 plugins.") (define-public motion (package (name "motion") - (version "4.3.2") + (version "4.5.1") (home-page "https://motion-project.github.io/") (source (origin (method git-fetch) @@ -4524,19 +4600,13 @@ It counts more than 100 plugins.") (commit (string-append "release-" version)))) (sha256 (base32 - "09xs815jsivcilpmnrx2jkcxirj4lg5kp99fkr0p2sdxw03myi95")) + "09j919bba75d05rkqpib5rcmn1ff5nvn4ss8yy4fi6iz0lnacffx")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("gettext" ,gettext-minimal) - ("pkg-config" ,pkg-config))) + (list autoconf automake gettext-minimal pkg-config)) (inputs - `(("libjpeg" ,libjpeg-turbo) - ("ffmpeg" ,ffmpeg) - ("libmicrohttpd" ,libmicrohttpd) - ("sqlite" ,sqlite))) + (list libjpeg-turbo ffmpeg libmicrohttpd sqlite)) (arguments '(#:phases (modify-phases %standard-phases (replace 'bootstrap @@ -4687,7 +4757,7 @@ create smoother and stable videos.") (define-public libopenshot (package (name "libopenshot") - (version "0.2.7") + (version "0.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -4696,7 +4766,7 @@ create smoother and stable videos.") (file-name (git-file-name name version)) (sha256 (base32 - "0i9bsn8gklm1mvj60l3d3xrxdgy8svpxjfqcwsr308j5zjn30pv8")) + "0q2899hbaqwh1gxyl9x84l116g82glk0wmr3r1xvfwb107m3mvx9")) (modules '((guix build utils))) (snippet '(begin ;; Allow overriding of the python installation dir @@ -4716,12 +4786,13 @@ create smoother and stable videos.") (list alsa-lib zlib)) (propagated-inputs ;all referenced in installed headers (list cppzmq - ffmpeg + ffmpeg-4 imagemagick jsoncpp libopenshot-audio qtbase-5 qtmultimedia-5 + qtsvg-5 zeromq)) (arguments `(#:configure-flags @@ -4750,7 +4821,7 @@ API. It includes bindings for Python, Ruby, and other languages.") (define-public openshot (package (name "openshot") - (version "2.6.1") + (version "3.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -4759,7 +4830,7 @@ API. It includes bindings for Python, Ruby, and other languages.") (file-name (git-file-name name version)) (sha256 (base32 - "0pa8iwl217503bjlqg2zlrw5lxyq5hvxrf5apxrh3843hj1w1myv")) + "1az59whx9sga6m8m2c3ndfls5h07r0jn4jipnyxckpxl32vpd147")) (modules '((guix build utils))) (snippet '(begin @@ -4771,10 +4842,12 @@ API. It includes bindings for Python, Ruby, and other languages.") font-dejavu libopenshot python - python-pyqt + python-pyqt-without-qtwebkit + python-pyqtwebengine python-pyzmq python-requests - qtsvg-5)) + qtsvg-5 + qtwebengine-5)) (arguments `(#:modules ((guix build python-build-system) (guix build qt-utils) @@ -4796,12 +4869,6 @@ API. It includes bindings for Python, Ruby, and other languages.") (("fonts") "share/fonts/truetype") (("[A-Za-z_-]+.ttf") "DejaVuSans.ttf"))) #t)) - ;; https://github.com/OpenShot/openshot-qt/issues/4502 - (add-before 'ensure-no-mtimes-pre-1980 'fix-symbolic-link - (lambda _ - (delete-file "images/Humanity/actions/custom/razor_line_with_razor.png") - (symlink "../../../../src/timeline/media/images/razor_line_with_razor.png" - "images/Humanity/actions/custom/razor_line_with_razor.png"))) (add-before 'install 'set-tmp-home (lambda _ ;; src/classes/info.py "needs" to create several @@ -4810,10 +4877,16 @@ API. It includes bindings for Python, Ruby, and other languages.") #t)) (add-after 'install 'wrap-program (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) + (let ((out (assoc-ref outputs "out")) + (qtwebengine-process-path + (search-input-file + inputs "/lib/qt5/libexec/QtWebEngineProcess"))) (wrap-qt-program "openshot-qt" - #:output out #:inputs inputs)) - #t))))) + #:output out #:inputs inputs) + ;; Help the program discover QtWebEngine at runtime. + (wrap-program (string-append out "/bin/openshot-qt") + `("QTWEBENGINEPROCESS_PATH" = + (,qtwebengine-process-path))))))))) (home-page "https://www.openshot.org/") (synopsis "Video editor") (description "OpenShot takes your videos, photos, and music files and @@ -4824,7 +4897,7 @@ transitions, and effects and then export your film to many common formats.") (define-public shotcut (package (name "shotcut") - (version "22.06.23") + (version "22.12.21") (source (origin (method git-fetch) @@ -4833,7 +4906,7 @@ transitions, and effects and then export your film to many common formats.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1kvhcblzjdjiv3jggdx41djq9pz6a9hg4ilgcwin13gb19ir7dcc")))) + (base32 "1hchnywsrkvnz07r2i1cffg1a8zi59pcpswz8x93a0rdc42hlk3d")))) (build-system qt-build-system) (arguments `(#:tests? #f ;there are no tests @@ -4868,9 +4941,7 @@ transitions, and effects and then export your film to many common formats.") `("PATH" ":" prefix ,(list (string-append mlt "/bin")))))))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("python-wrapper" ,python-wrapper) - ("qttools-5" ,qttools-5))) + (list pkg-config python-wrapper qttools-5)) (inputs (list bash-minimal ffmpeg @@ -4878,9 +4949,6 @@ transitions, and effects and then export your film to many common formats.") frei0r-plugins jack-1 ladspa - lame - libvpx - libx264 mlt pulseaudio qtbase-5 @@ -4890,7 +4958,6 @@ transitions, and effects and then export your film to many common formats.") qtquickcontrols-5 qtquickcontrols2-5 qtsvg-5 - qtwebkit qtwebsockets-5 qtx11extras sdl2)) @@ -4941,7 +5008,7 @@ speed and correctness.") "01qbcgfl3g9kfwn1jf1z9pdj3bvf5lmg71d1vwkcllc2az24bjqp")))) (build-system meson-build-system) (native-inputs (list libdrm pkg-config)) - (inputs (list ffmpeg pulseaudio wayland wayland-protocols)) + (inputs (list ffmpeg-4 pulseaudio wayland wayland-protocols)) (home-page "https://github.com/atomnuker/wlstream") (synopsis "Screen capture tool for Wayland sessions") (description "Wlstream is a screen capture tool for recording audio and @@ -5087,7 +5154,7 @@ transcode or reformat the videos in any way, producing perfect backups.") (define-public svt-av1 (package (name "svt-av1") - (version "0.9.1") + (version "1.3.0") (source (origin (method git-fetch) @@ -5096,10 +5163,8 @@ transcode or reformat the videos in any way, producing perfect backups.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "02fchq2vlxcxzbrss72xl9vrxzysdy39d5i159bmg3qa45ngd2iw")))) + (base32 "0blnla32yz665bx0xyx8lrjs2wqd2xhpbqwwpz72mq7zf341j8vv")))) (build-system cmake-build-system) - ;; SVT-AV1 only supports 64-bit Intel-compatible CPUs. - (supported-systems '("x86_64-linux")) (arguments ;; The test suite tries to download test data and git clone a 3rd-party ;; fork of libaom. Skip it. @@ -5117,7 +5182,8 @@ transcode or reformat the videos in any way, producing perfect backups.") (synopsis "AV1 video codec") (description "SVT-AV1 is an AV1 codec implementation. The encoder is a work-in-progress, aiming to support video-on-demand and live streaming -applications. It only supports Intel-compatible CPUs (x86).") +applications with high performance requirements. It mainly targets +Intel-compatible CPUs (x86), but has limited support for other architectures.") (home-page "https://gitlab.com/AOMediaCodec/SVT-AV1") (license license:bsd-2))) @@ -5295,6 +5361,12 @@ result in several formats: (substitute* "Cargo.toml" ;; Allow using more recent versions of (("~3.1.2") "~3")))) + (add-after 'configure 'force-rust-edition-2018 + (lambda* (#:key vendor-dir #:allow-other-keys) + ;; Force all the dependencies to not be higher than edition 2018. + (with-fluids ((%default-port-encoding #f)) + (substitute* (find-files vendor-dir "Cargo.toml") + (("edition = \\\"2021\\\"") "edition = \"2018\""))))) (replace 'build (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -5353,7 +5425,7 @@ can also directly record to WebM or MP4 if you prefer.") (define-public wf-recorder (package (name "wf-recorder") - (version "0.2.1") + (version "0.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -5362,7 +5434,7 @@ can also directly record to WebM or MP4 if you prefer.") (file-name (git-file-name name version)) (sha256 (base32 - "1cw6kpcbl33wh95pvy32xrsrm6kkk1awccr3phyh885xjs3b3iim")))) + "18csvix8fdqir52q729rgcy355xy2ngvmr05l1abflpbvsklbn52")))) (build-system meson-build-system) (native-inputs (list pkg-config)) @@ -5567,3 +5639,27 @@ VCS, by default, makes screenshots the same size as the video, see the manual for details on how to change this.") (home-page "http://p.outlyer.net/vcs/") (license license:lgpl2.1+))) + +(define-public svtplay-dl + (package + (name "svtplay-dl") + (version "4.17") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/spaam/svtplay-dl") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0yjxmvldskw4pji3lg69pbx05izvxahz9my7z5p31mkiz6v33dmx")))) + (build-system python-build-system) + (inputs (list ffmpeg python-pyaml python-requests python-pysocks + python-cryptography)) + (home-page "https://svtplay-dl.se/") + (synopsis "Download or stream SVT Play's (and others) TV programmes") + (description + "@code{svtplay-dl} allows downloading TV programmes from various Swedish +broadcasters including SVT Play, Sveriges Radio, TV4 Play, along with many +others.") + (license license:expat))) |