unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
To: 39005@debbugs.gnu.org
Cc: Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
Subject: [bug#39005] [PATCH 08/22] gnu: Add ffmpeg-jami.
Date: Tue,  7 Jan 2020 11:17:27 +0100	[thread overview]
Message-ID: <20200107101741.970-8-tona_kosmicznego_smiecia@interia.pl> (raw)
In-Reply-To: <20200107101741.970-1-tona_kosmicznego_smiecia@interia.pl>

---
 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

  parent reply	other threads:[~2020-01-07 10:19 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-07  0:29 [bug#39005] [PATCH 00/22] Maintaining Jami Jan
2020-01-07 10:17 ` [bug#39005] [PATCH 01/22] gnu: jami: Bump to 20191128.1.4c44bb7 Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 02/22] gnu: jami: fix downloading by changing the prefix to jami_ Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 03/22] gnu: Add libnatpmp Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 04/22] gnu: libupnp: Bump to 1.8.3; change fetch-method; add missing dependencies Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 05/22] gnu: Jami: add libnatpmp (an optional dependency) Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 06/22] gnu: jami: Move Jami and its dependencies to a separate file (jami.scm) Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 07/22] gnu: jami: Fix the procedure for applying patches. Use the procedure correctly in pjproject-jami Jan Wielkiewicz
2020-01-07 10:17   ` Jan Wielkiewicz [this message]
2020-01-07 10:17   ` [bug#39005] [PATCH 09/22] gnu: jami: Bump to 20191209.1.4b48135 Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 10/22] gnu: Add gnutls-jami (not yet working) Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 11/22] gnu: jami: Bump to 20191214.1.07edb5e Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 12/22] gnu: ffmpeg-jami: skip tests Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 13/22] gnu: jami: bump to 20191217.1.ce5f295 Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 14/22] gnu: opendht: Bump to 2.0.0beta3 Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 15/22] gnu: restinio: Bump to 0.6.1.1 Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 16/22] gnu: pjproject-jami: Fix formatting - replace a tab sign with a space. No code changes! Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 17/22] gnu: pjproject-jami: Remove unnecessary lambda, which came from doing rebase improperly; jami.scm: untabify, remove trailing whitespace Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 18/22] gnu: jami.scm: Fix formatting. No code changes! Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 19/22] gnu: jami: Bump to 20191224.1.5c0154a Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 20/22] gnu: libring: Use ffmpeg-jami instead of ffmpeg Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 21/22] gnu: pjproject-jami: Apply a missing patch Jan Wielkiewicz
2020-01-07 10:17   ` [bug#39005] [PATCH 22/22] gnu: jami: Bump to 20191227.2.74b55b6 Jan Wielkiewicz
2020-02-09 23:12 ` bug#39005: Closing the issue, will post not messy patches soon Jan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200107101741.970-8-tona_kosmicznego_smiecia@interia.pl \
    --to=tona_kosmicznego_smiecia@interia.pl \
    --cc=39005@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).