guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#38961] [PATCH 08/22] gnu: Add ffmpeg-jami.


From: Jan Wielkiewicz
Subject: [bug#38961] [PATCH 08/22] gnu: Add ffmpeg-jami.
Date: Mon, 6 Jan 2020 02:11:38 +0100

---
 gnu/packages/jami.scm | 213 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 212 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm
index f257767a85..7320104c88 100644
--- a/gnu/packages/jami.scm
+++ b/gnu/packages/jami.scm
@@ -56,7 +56,8 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
-  #:use-module (guix git-download))
+  #:use-module (guix git-download)
+  #:use-module (guix utils))
 
 (define-public jami-apply-dependency-patches
   '(lambda* (#:key inputs dep-name patches)
@@ -218,6 +219,216 @@
                 "selftest: pjlib-test pjlib-util-test pjmedia-test"))
              #t)))))))
 
+(define-public ffmpeg-jami
+  (package
+   (inherit ffmpeg)
+   (name "ffmpeg-jami")
+   (version "4.2.1")
+   (source (origin
+             (method git-fetch)
+             (uri (git-reference
+                  (url "https://git.ffmpeg.org/ffmpeg.git";)
+                  (commit "59da9dcd7ef6277e4e04998ced71b05a6083c635")))
+            (file-name (git-file-name "ffmpeg" version))
+             (sha256
+              (base32
+               "0cm58kd06lvslc7knnfajv5p63v4cc6502badjcic5m9izd03lz2"))))
+   (native-inputs
+    `(("savoir-faire-linux-patches" ,(jami-source))
+      ,@(package-native-inputs ffmpeg)))
+   (arguments
+    (substitute-keyword-arguments (package-arguments ffmpeg)
+                                 ((#:configure-flags '())
+                                  (append '("--disable-everything"
+                                            "--enable-zlib"
+                                            "--enable-gpl"
+                                            "--enable-swscale"
+                                            "--enable-bsfs"
+                                            "--disable-filters"
+                                            "--disable-programs"
+                                            "--disable-postproc"
+                                            "--disable-protocols"
+                                            "--enable-protocol=crypto"
+                                            "--enable-protocol=file"
+                                            "--enable-protocol=rtp"
+                                            "--enable-protocol=srtp"
+                                            "--enable-protocol=tcp"
+                                            "--enable-protocol=udp"
+                                            "--enable-protocol=unix"
+                                            "--enable-protocol=pipe"
+                                            "--disable-demuxers"
+                                            "--disable-muxers"
+                                            "--enable-muxer=rtp"
+                                            "--enable-muxer=g722"
+                                            "--enable-muxer=h263"
+                                            "--enable-muxer=h264"
+                                            "--enable-muxer=hevc"
+                                            "--enable-muxer=webm"
+                                            "--enable-muxer=ogg"
+                                            "--enable-muxer=pcm_s16be"
+                                            "--enable-muxer=pcm_s16le"
+                                            "--enable-demuxer=rtp"
+                                            "--enable-demuxer=mjpeg"
+                                            "--enable-demuxer=mjpeg_2000"
+                                            "--enable-demuxer=mpegvideo"
+                                            "--enable-demuxer=gif"
+                                            "--enable-demuxer=image_jpeg_pipe"
+                                            "--enable-demuxer=image_png_pipe"
+                                            "--enable-demuxer=image_webp_pipe"
+                                            "--enable-demuxer=matroska"
+                                            "--enable-demuxer=m4v"
+                                            "--enable-demuxer=mp3"
+                                            "--enable-demuxer=ogg"
+                                            "--enable-demuxer=flac"
+                                            "--enable-demuxer=wav"
+                                            "--enable-demuxer=ac3"
+                                            "--enable-demuxer=g722"
+                                            "--enable-demuxer=pcm_mulaw"
+                                            "--enable-demuxer=pcm_alaw"
+                                            "--enable-demuxer=pcm_s16be"
+                                            "--enable-demuxer=pcm_s16le"
+                                            "--enable-demuxer=h263"
+                                            "--enable-demuxer=h264"
+                                            "--enable-demuxer=hevc"
+                                            "--enable-parser=h263"
+                                            "--enable-parser=h264"
+                                            "--enable-parser=mpeg4video"
+                                            "--enable-parser=vp8"
+                                            "--enable-parser=vp9"
+                                            "--enable-parser=opus"
+                                            "--enable-encoder=adpcm_g722"
+                                            "--enable-decoder=adpcm_g722"
+                                            "--enable-encoder=rawvideo"
+                                            "--enable-decoder=rawvideo"
+                                            "--enable-encoder=libx264"
+                                            "--enable-decoder=h264"
+                                            "--enable-encoder=pcm_alaw"
+                                            "--enable-decoder=pcm_alaw"
+                                            "--enable-encoder=pcm_mulaw"
+                                            "--enable-decoder=pcm_mulaw"
+                                            "--enable-encoder=mpeg4"
+                                            "--enable-decoder=mpeg4"
+                                            "--enable-encoder=libvpx_vp8"
+                                            "--enable-decoder=vp8"
+                                            "--enable-decoder=vp9"
+                                            "--enable-encoder=h263"
+                                            "--enable-encoder=h263p"
+                                            "--enable-decoder=h263"
+                                            "--enable-encoder=mjpeg"
+                                            "--enable-decoder=mjpeg"
+                                            "--enable-decoder=mjpegb"
+                                            "--enable-libspeex"
+                                            "--enable-libopus"
+                                            "--enable-libvpx"
+                                            "--enable-libx264"
+                                            "--enable-encoder=libspeex"
+                                            "--enable-decoder=libspeex"
+                                            "--enable-encoder=libopus"
+                                            "--enable-decoder=libopus"
+                                            "--enable-decoder=flac"
+                                            "--enable-decoder=vorbis"
+                                            "--enable-decoder=aac"
+                                            "--enable-decoder=ac3"
+                                            "--enable-decoder=eac3"
+                                            "--enable-decoder=mp3"
+                                            "--enable-decoder=pcm_u24be"
+                                            "--enable-decoder=pcm_u24le"
+                                            "--enable-decoder=pcm_u32be"
+                                            "--enable-decoder=pcm_u32le"
+                                            "--enable-decoder=pcm_u8"
+                                            "--enable-decoder=pcm_f16le"
+                                            "--enable-decoder=pcm_f24le"
+                                            "--enable-decoder=pcm_f32be"
+                                            "--enable-decoder=pcm_f32le"
+                                            "--enable-decoder=pcm_f64be"
+                                            "--enable-decoder=pcm_f64le"
+                                            "--enable-decoder=pcm_s16be"
+                                            "--enable-decoder=pcm_s16be_planar"
+                                            "--enable-decoder=pcm_s16le"
+                                            "--enable-decoder=pcm_s16le_planar"
+                                            "--enable-decoder=pcm_s24be"
+                                            "--enable-decoder=pcm_s24le"
+                                            "--enable-decoder=pcm_s24le_planar"
+                                            "--enable-decoder=pcm_s32be"
+                                            "--enable-decoder=pcm_s32le"
+                                            "--enable-decoder=pcm_s32le_planar"
+                                            "--enable-decoder=pcm_s64be"
+                                            "--enable-decoder=pcm_s64le"
+                                            "--enable-decoder=pcm_s8"
+                                            "--enable-decoder=pcm_s8_planar"
+                                            "--enable-decoder=pcm_u16be"
+                                            "--enable-decoder=pcm_u16le"
+                                            "--enable-encoder=gif"
+                                            "--enable-decoder=gif"
+                                            "--enable-encoder=jpegls"
+                                            "--enable-decoder=jpegls"
+                                            "--enable-encoder=ljpeg"
+                                            "--enable-decoder=jpeg2000"
+                                            "--enable-encoder=png"
+                                            "--enable-decoder=png"
+                                            "--enable-encoder=bmp"
+                                            "--enable-decoder=bmp"
+                                            "--enable-encoder=tiff"
+                                            "--enable-decoder=tiff"
+                                            "--enable-filter=scale"
+                                            "--enable-filter=overlay"
+                                            "--enable-filter=amix"
+                                            "--enable-filter=amerge"
+                                            "--enable-filter=aresample"
+                                            "--enable-filter=format"
+                                            "--enable-filter=aformat"
+                                            "--enable-filter=fps"
+                                            "--enable-filter=transpose"
+                                            "--enable-filter=pad")
+                                          (if (string-contains 
(%current-system) "linux")
+                                               '("--enable-pic"
+                                                 "--extra-cxxflags=-fPIC"
+                                                 "--extra-cflags=-fPIC"
+                                                 "--target-os=linux"
+                                                 "--enable-indev=v4l2"
+                                                 "--enable-indev=xcbgrab"
+                                                 "--enable-vdpau"
+                                                 "--enable-hwaccel=h264_vdpau"
+                                                 "--enable-hwaccel=mpeg4_vdpau"
+                                                 "--enable-vaapi"
+                                                 "--enable-hwaccel=h264_vaapi"
+                                                 "--enable-hwaccel=mpeg4_vaapi"
+                                                 "--enable-hwaccel=h263_vaapi"
+                                                 "--enable-hwaccel=vp8_vaapi"
+                                                 "--enable-hwaccel=mjpeg_vaapi"
+                                                 "--enable-encoder=h264_vaapi"
+                                                 "--enable-encoder=vp8_vaapi"
+                                                 "--enable-encoder=mjpeg_vaapi"
+                                                 "--enable-cuvid"
+                                                 "--enable-ffnvcodec"
+                                                 "--enable-nvdec"
+                                                 "--enable-nvenc"
+                                                 "--enable-hwaccel=h264_nvdec"
+                                                 "--enable-hwaccel=hevc_nvdec"
+                                                 "--enable-hwaccel=vp8_nvdec"
+                                                 "--enable-hwaccel=mjpeg_nvdec"
+                                                 "--enable-encoder=h264_nvenc"
+                                                 
"--enable-encoder=hevc_nvenc"))
+                                          (if (string?= (%current-system) 
"aarch64-linux")
+                                               '("--arch=aarch64"))
+                                          (if (string?= (%current-system) 
"arm64-linux")
+                                               '("--arch=aarch64"))))
+                                 ((#:phases phases)
+                                  `(modify-phases ,phases
+                                                  (add-after 'unpack 
'apply-patches
+                                                             (lambda* (#:key 
inputs #:allow-other-keys)
+                                                                      (let 
((jami-apply-dependency-patches ,jami-apply-dependency-patches))
+                                                                        ;; 
Comes from
+                                                                        ;; 
"ring-project/daemon/contrib/src/pjproject/rules.mak".
+                                                                        ;; 
WARNING: These amount for huge changes in pjproject.
+                                                                        
(jami-apply-dependency-patches #:inputs inputs
+                                                                               
                        #:dep-name "ffmpeg"
+                                                                               
                        #:patches
+                                                                               
                        '("remove-mjpeg-log"
+                                                                               
                          "change-RTCP-ratio"
+                                                                               
                          "rtp_ext_abs_send_time"))
+                                                                        
#t))))))))) 
+
 (define-public libring
   (package
     (name "libring")
-- 
2.24.1






reply via email to

[Prev in Thread] Current Thread [Next in Thread]