rebuilt with reviewed configure options to ensure support for needed codecs [release 7.1-2mamba;Thu Jan 16 2025]
This commit is contained in:
parent
25ea4bd15a
commit
d168caa38d
@ -1,11 +0,0 @@
|
||||
diff -Nru ffmpeg-0.11.orig/libavformat/Makefile ffmpeg-0.11/libavformat/Makefile
|
||||
--- ffmpeg-0.11.orig/libavformat/Makefile 2012-05-25 20:02:16.000000000 +0200
|
||||
+++ ffmpeg-0.11/libavformat/Makefile 2012-06-07 15:44:41.922379209 +0200
|
||||
@@ -6,6 +6,7 @@
|
||||
HEADERS = avformat.h \
|
||||
avio.h \
|
||||
version.h \
|
||||
+ url.h \
|
||||
|
||||
OBJS = allformats.o \
|
||||
avio.o \
|
@ -1,40 +0,0 @@
|
||||
--- ffmpeg-0.4.9-pre1/libavcodec/Makefile.pic 2004-07-23 12:04:25.586018114 +0200
|
||||
+++ ffmpeg-0.4.9-pre1/libavcodec/Makefile 2004-07-23 12:05:57.274315938 +0200
|
||||
@@ -9,6 +9,10 @@
|
||||
# NOTE: -I.. is needed to include config.h
|
||||
CFLAGS=$(OPTFLAGS) -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
|
||||
|
||||
+ifeq ($(BUILD_SHARED),yes)
|
||||
+CFLAGS+=$(PIC)
|
||||
+endif
|
||||
+
|
||||
OBJS= common.o utils.o mem.o allcodecs.o \
|
||||
mpegvideo.o jrevdct.o jfdctfst.o jfdctint.o\
|
||||
mpegaudio.o ac3enc.o mjpeg.o resample.o resample2.o dsputil.o \
|
||||
--- ffmpeg-0.4.9-pre1/libavformat/Makefile.pic 2004-04-24 17:16:23.000000000 +0200
|
||||
+++ ffmpeg-0.4.9-pre1/libavformat/Makefile 2004-07-23 12:06:18.109608754 +0200
|
||||
@@ -8,6 +8,10 @@
|
||||
|
||||
CFLAGS=$(OPTFLAGS) -I.. -I$(SRC_PATH) -I$(SRC_PATH)/libavcodec -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
|
||||
|
||||
+ifeq ($(BUILD_SHARED),yes)
|
||||
+CFLAGS+=$(PIC)
|
||||
+endif
|
||||
+
|
||||
OBJS= utils.o cutils.o os_support.o allformats.o
|
||||
PPOBJS=
|
||||
|
||||
--- ffmpeg-0.4.9-pre1/configure.pic 2004-07-05 20:06:16.000000000 +0200
|
||||
+++ ffmpeg-0.4.9-pre1/configure 2004-07-23 12:04:25.593018213 +0200
|
||||
@@ -1144,7 +1144,10 @@
|
||||
fi
|
||||
if test "$lshared" = "yes" ; then
|
||||
echo "BUILD_SHARED=yes" >> config.mak
|
||||
- echo "PIC=-fPIC" >> config.mak
|
||||
+ # it can work without PIC on x86
|
||||
+ if test "$cpu" != "x86"; then
|
||||
+ echo "PIC=-fPIC" >> config.mak
|
||||
+ fi
|
||||
fi
|
||||
echo "EXTRALIBS=$extralibs" >> config.mak
|
||||
version=`grep '#define FFMPEG_VERSION ' $source_path/libavcodec/avcodec.h |
|
@ -1,12 +0,0 @@
|
||||
diff -Nru ffmpeg-0.5.orig/configure ffmpeg-0.5/configure
|
||||
--- ffmpeg-0.5.orig/configure 2009-03-01 18:57:14.000000000 +0100
|
||||
+++ ffmpeg-0.5/configure 2009-10-17 05:33:41.000000000 +0200
|
||||
@@ -1993,7 +1993,7 @@
|
||||
enabled libspeex && require libspeex speex/speex.h speex_decoder_init -lspeex
|
||||
enabled libtheora && require libtheora theora/theora.h theora_info_init -ltheora -logg
|
||||
enabled libvorbis && require libvorbis vorbis/vorbisenc.h vorbis_info_init -lvorbisenc -lvorbis -logg
|
||||
-enabled libx264 && require libx264 x264.h x264_encoder_open -lx264 -lm &&
|
||||
+enabled libx264 && 1 -lx264 -lm &&
|
||||
{ check_cpp_condition x264.h "X264_BUILD >= 65" ||
|
||||
die "ERROR: libx264 version must be >= 0.65."; }
|
||||
enabled libxvid && require libxvid xvid.h xvid_global -lxvidcore
|
@ -1,11 +0,0 @@
|
||||
--- ffmpeg/libavcodec/libx264.c 2008-08-20 18:34:13.000000000 +0200
|
||||
+++ ffmpeg/libavcodec/libx264.c-gil 2008-08-20 21:10:26.000000000 +0200
|
||||
@@ -221,7 +221,7 @@
|
||||
else if(avctx->me_method == ME_FULL)
|
||||
x4->params.analyse.i_me_method = X264_ME_ESA;
|
||||
else if(avctx->me_method == ME_TESA)
|
||||
- x4->params.analyse.i_me_method = X264_ME_TESA;
|
||||
+ x4->params.analyse.i_me_method = 4; //X264_ME_TESA;
|
||||
else x4->params.analyse.i_me_method = X264_ME_HEX;
|
||||
|
||||
x4->params.analyse.i_me_range = avctx->me_range;
|
29
ffmpeg-7.1-libx265-4.1.patch
Normal file
29
ffmpeg-7.1-libx265-4.1.patch
Normal file
@ -0,0 +1,29 @@
|
||||
--- ffmpeg-7.1/libavcodec/libx265.c.orig 2025-01-16 21:54:38.449157281 +0100
|
||||
+++ ffmpeg-7.1/libavcodec/libx265.c 2025-01-16 21:54:43.055166676 +0100
|
||||
@@ -661,7 +661,7 @@
|
||||
{
|
||||
libx265Context *ctx = avctx->priv_data;
|
||||
x265_picture x265pic;
|
||||
-#if X265_BUILD >= 210
|
||||
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
|
||||
x265_picture x265pic_layers_out[MAX_SCALABLE_LAYERS];
|
||||
x265_picture* x265pic_lyrptr_out[MAX_SCALABLE_LAYERS];
|
||||
#else
|
||||
@@ -805,7 +805,7 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
-#if X265_BUILD >= 210
|
||||
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
|
||||
for (i = 0; i < MAX_SCALABLE_LAYERS; i++)
|
||||
x265pic_lyrptr_out[i] = &x265pic_layers_out[i];
|
||||
|
||||
@@ -844,7 +844,7 @@
|
||||
pkt->flags |= AV_PKT_FLAG_KEY;
|
||||
}
|
||||
|
||||
-#if X265_BUILD >= 210
|
||||
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
|
||||
x265pic_out = x265pic_lyrptr_out[0];
|
||||
#else
|
||||
x265pic_out = &x265pic_solo_out;
|
280
ffmpeg-7.1-texinfo-7.2.patch
Normal file
280
ffmpeg-7.1-texinfo-7.2.patch
Normal file
@ -0,0 +1,280 @@
|
||||
Submitted By: Douglas R. Reno <renodr at linuxfromscratch dot org>
|
||||
Date: 2025-01-02
|
||||
Initial Package Version: 7.1
|
||||
Origin: Upstream Mailing List (https://ffmpeg.org/pipermail/ffmpeg-devel/2024-November/335575.html)
|
||||
Upstream Status: Submitted
|
||||
Description: Fixes building ffmpeg-7.1 with texinfo-7.2. The issue
|
||||
is due to API changes in the Texinfo::Convert::HTML
|
||||
perl submodule, where the gdt method was removed. The
|
||||
patch uses the cdt method instead, and portability
|
||||
guards are put into place for users who are using
|
||||
older versions of Texinfo. Thanks goes to Marty Jack
|
||||
for bringing it to our attention in the LFS ticket.
|
||||
|
||||
diff -Naurp ffmpeg-7.1.orig/doc/t2h.pm ffmpeg-7.1/doc/t2h.pm
|
||||
--- ffmpeg-7.1.orig/doc/t2h.pm 2025-01-02 14:52:50.960834600 -0600
|
||||
+++ ffmpeg-7.1/doc/t2h.pm 2025-01-02 14:53:01.048047754 -0600
|
||||
@@ -54,12 +54,24 @@ sub get_formatting_function($$) {
|
||||
}
|
||||
|
||||
# determine texinfo version
|
||||
-my $program_version_num = version->declare(ff_get_conf('PACKAGE_VERSION'))->numify;
|
||||
+my $package_version = ff_get_conf('PACKAGE_VERSION');
|
||||
+$package_version =~ s/\+dev$//;
|
||||
+my $program_version_num = version->declare($package_version)->numify;
|
||||
my $program_version_6_8 = $program_version_num >= 6.008000;
|
||||
|
||||
# no navigation elements
|
||||
ff_set_from_init_file('HEADERS', 0);
|
||||
|
||||
+my %sectioning_commands = %Texinfo::Common::sectioning_commands;
|
||||
+if (scalar(keys(%sectioning_commands)) == 0) {
|
||||
+ %sectioning_commands = %Texinfo::Commands::sectioning_heading_commands;
|
||||
+}
|
||||
+
|
||||
+my %root_commands = %Texinfo::Common::root_commands;
|
||||
+if (scalar(keys(%root_commands)) == 0) {
|
||||
+ %root_commands = %Texinfo::Commands::root_commands;
|
||||
+}
|
||||
+
|
||||
sub ffmpeg_heading_command($$$$$)
|
||||
{
|
||||
my $self = shift;
|
||||
@@ -77,6 +89,9 @@ sub ffmpeg_heading_command($$$$$)
|
||||
return $result;
|
||||
}
|
||||
|
||||
+ # no need to set it as the $element_id is output unconditionally
|
||||
+ my $heading_id;
|
||||
+
|
||||
my $element_id = $self->command_id($command);
|
||||
$result .= "<a name=\"$element_id\"></a>\n"
|
||||
if (defined($element_id) and $element_id ne '');
|
||||
@@ -84,24 +99,40 @@ sub ffmpeg_heading_command($$$$$)
|
||||
print STDERR "Process $command "
|
||||
.Texinfo::Structuring::_print_root_command_texi($command)."\n"
|
||||
if ($self->get_conf('DEBUG'));
|
||||
- my $element;
|
||||
- if ($Texinfo::Common::root_commands{$command->{'cmdname'}}
|
||||
- and $command->{'parent'}
|
||||
- and $command->{'parent'}->{'type'}
|
||||
- and $command->{'parent'}->{'type'} eq 'element') {
|
||||
- $element = $command->{'parent'};
|
||||
+ my $output_unit;
|
||||
+ if ($root_commands{$command->{'cmdname'}}) {
|
||||
+ if ($command->{'associated_unit'}) {
|
||||
+ $output_unit = $command->{'associated_unit'};
|
||||
+ } elsif ($command->{'structure'}
|
||||
+ and $command->{'structure'}->{'associated_unit'}) {
|
||||
+ $output_unit = $command->{'structure'}->{'associated_unit'};
|
||||
+ } elsif ($command->{'parent'}
|
||||
+ and $command->{'parent'}->{'type'}
|
||||
+ and $command->{'parent'}->{'type'} eq 'element') {
|
||||
+ $output_unit = $command->{'parent'};
|
||||
+ }
|
||||
}
|
||||
- if ($element) {
|
||||
+
|
||||
+ if ($output_unit) {
|
||||
$result .= &{get_formatting_function($self, 'format_element_header')}($self, $cmdname,
|
||||
- $command, $element);
|
||||
+ $command, $output_unit);
|
||||
}
|
||||
|
||||
my $heading_level;
|
||||
# node is used as heading if there is nothing else.
|
||||
if ($cmdname eq 'node') {
|
||||
- if (!$element or (!$element->{'extra'}->{'section'}
|
||||
- and $element->{'extra'}->{'node'}
|
||||
- and $element->{'extra'}->{'node'} eq $command
|
||||
+ if (!$output_unit or
|
||||
+ (((!$output_unit->{'extra'}->{'section'}
|
||||
+ and $output_unit->{'extra'}->{'node'}
|
||||
+ and $output_unit->{'extra'}->{'node'} eq $command)
|
||||
+ or
|
||||
+ ((($output_unit->{'extra'}->{'unit_command'}
|
||||
+ and $output_unit->{'extra'}->{'unit_command'} eq $command)
|
||||
+ or
|
||||
+ ($output_unit->{'unit_command'}
|
||||
+ and $output_unit->{'unit_command'} eq $command))
|
||||
+ and $command->{'extra'}
|
||||
+ and not $command->{'extra'}->{'associated_section'}))
|
||||
# bogus node may not have been normalized
|
||||
and defined($command->{'extra'}->{'normalized'}))) {
|
||||
if ($command->{'extra'}->{'normalized'} eq 'Top') {
|
||||
@@ -111,7 +142,15 @@ sub ffmpeg_heading_command($$$$$)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
- $heading_level = $command->{'level'};
|
||||
+ if (defined($command->{'extra'})
|
||||
+ and defined($command->{'extra'}->{'section_level'})) {
|
||||
+ $heading_level = $command->{'extra'}->{'section_level'};
|
||||
+ } elsif ($command->{'structure'}
|
||||
+ and defined($command->{'structure'}->{'section_level'})) {
|
||||
+ $heading_level = $command->{'structure'}->{'section_level'};
|
||||
+ } else {
|
||||
+ $heading_level = $command->{'level'};
|
||||
+ }
|
||||
}
|
||||
|
||||
my $heading = $self->command_text($command);
|
||||
@@ -119,8 +158,8 @@ sub ffmpeg_heading_command($$$$$)
|
||||
# if there is an error in the node.
|
||||
if (defined($heading) and $heading ne '' and defined($heading_level)) {
|
||||
|
||||
- if ($Texinfo::Common::root_commands{$cmdname}
|
||||
- and $Texinfo::Common::sectioning_commands{$cmdname}) {
|
||||
+ if ($root_commands{$cmdname}
|
||||
+ and $sectioning_commands{$cmdname}) {
|
||||
my $content_href = $self->command_contents_href($command, 'contents',
|
||||
$self->{'current_filename'});
|
||||
if ($content_href) {
|
||||
@@ -140,7 +179,13 @@ sub ffmpeg_heading_command($$$$$)
|
||||
}
|
||||
}
|
||||
|
||||
- if ($self->in_preformatted()) {
|
||||
+ my $in_preformatted;
|
||||
+ if ($program_version_num >= 7.001090) {
|
||||
+ $in_preformatted = $self->in_preformatted_context();
|
||||
+ } else {
|
||||
+ $in_preformatted = $self->in_preformatted();
|
||||
+ }
|
||||
+ if ($in_preformatted) {
|
||||
$result .= $heading."\n";
|
||||
} else {
|
||||
# if the level was changed, set the command name right
|
||||
@@ -149,21 +194,25 @@ sub ffmpeg_heading_command($$$$$)
|
||||
$cmdname
|
||||
= $Texinfo::Common::level_to_structuring_command{$cmdname}->[$heading_level];
|
||||
}
|
||||
- # format_heading_text expects an array of headings for texinfo >= 7.0
|
||||
if ($program_version_num >= 7.000000) {
|
||||
- $heading = [$heading];
|
||||
- }
|
||||
- $result .= &{get_formatting_function($self,'format_heading_text')}(
|
||||
+ $result .= &{get_formatting_function($self,'format_heading_text')}($self,
|
||||
+ $cmdname, [$cmdname], $heading,
|
||||
+ $heading_level +$self->get_conf('CHAPTER_HEADER_LEVEL') -1,
|
||||
+ $heading_id, $command);
|
||||
+
|
||||
+ } else {
|
||||
+ $result .= &{get_formatting_function($self,'format_heading_text')}(
|
||||
$self, $cmdname, $heading,
|
||||
$heading_level +
|
||||
$self->get_conf('CHAPTER_HEADER_LEVEL') - 1, $command);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
$result .= $content if (defined($content));
|
||||
return $result;
|
||||
}
|
||||
|
||||
-foreach my $command (keys(%Texinfo::Common::sectioning_commands), 'node') {
|
||||
+foreach my $command (keys(%sectioning_commands), 'node') {
|
||||
texinfo_register_command_formatting($command, \&ffmpeg_heading_command);
|
||||
}
|
||||
|
||||
@@ -188,28 +237,56 @@ sub ffmpeg_begin_file($$$)
|
||||
my $filename = shift;
|
||||
my $element = shift;
|
||||
|
||||
- my $command;
|
||||
- if ($element and $self->get_conf('SPLIT')) {
|
||||
- $command = $self->element_command($element);
|
||||
+ my ($element_command, $node_command, $command_for_title);
|
||||
+ if ($element) {
|
||||
+ if ($element->{'unit_command'}) {
|
||||
+ $element_command = $element->{'unit_command'};
|
||||
+ } elsif ($self->can('tree_unit_element_command')) {
|
||||
+ $element_command = $self->tree_unit_element_command($element);
|
||||
+ } elsif ($self->can('tree_unit_element_command')) {
|
||||
+ $element_command = $self->element_command($element);
|
||||
+ }
|
||||
+
|
||||
+ $node_command = $element_command;
|
||||
+ if ($element_command and $element_command->{'cmdname'}
|
||||
+ and $element_command->{'cmdname'} ne 'node'
|
||||
+ and $element_command->{'extra'}
|
||||
+ and $element_command->{'extra'}->{'associated_node'}) {
|
||||
+ $node_command = $element_command->{'extra'}->{'associated_node'};
|
||||
+ }
|
||||
+
|
||||
+ $command_for_title = $element_command if ($self->get_conf('SPLIT'));
|
||||
}
|
||||
|
||||
- my ($title, $description, $encoding, $date, $css_lines,
|
||||
- $doctype, $bodytext, $copying_comment, $after_body_open,
|
||||
- $extra_head, $program_and_version, $program_homepage,
|
||||
+ my ($title, $description, $keywords, $encoding, $date, $css_lines, $doctype,
|
||||
+ $root_html_element_attributes, $body_attributes, $copying_comment,
|
||||
+ $after_body_open, $extra_head, $program_and_version, $program_homepage,
|
||||
$program, $generator);
|
||||
- if ($program_version_num >= 7.000000) {
|
||||
- ($title, $description, $encoding, $date, $css_lines,
|
||||
- $doctype, $bodytext, $copying_comment, $after_body_open,
|
||||
+ if ($program_version_num >= 7.001090) {
|
||||
+ ($title, $description, $keywords, $encoding, $date, $css_lines, $doctype,
|
||||
+ $root_html_element_attributes, $body_attributes, $copying_comment,
|
||||
+ $after_body_open, $extra_head, $program_and_version, $program_homepage,
|
||||
+ $program, $generator) = $self->_file_header_information($command_for_title,
|
||||
+ $filename);
|
||||
+ } elsif ($program_version_num >= 7.000000) {
|
||||
+ ($title, $description, $encoding, $date, $css_lines, $doctype,
|
||||
+ $root_html_element_attributes, $copying_comment, $after_body_open,
|
||||
$extra_head, $program_and_version, $program_homepage,
|
||||
- $program, $generator) = $self->_file_header_information($command);
|
||||
+ $program, $generator) = $self->_file_header_information($command_for_title,
|
||||
+ $filename);
|
||||
} else {
|
||||
($title, $description, $encoding, $date, $css_lines,
|
||||
- $doctype, $bodytext, $copying_comment, $after_body_open,
|
||||
- $extra_head, $program_and_version, $program_homepage,
|
||||
- $program, $generator) = $self->_file_header_informations($command);
|
||||
+ $doctype, $root_html_element_attributes, $copying_comment,
|
||||
+ $after_body_open, $extra_head, $program_and_version, $program_homepage,
|
||||
+ $program, $generator) = $self->_file_header_informations($command_for_title);
|
||||
}
|
||||
|
||||
- my $links = $self->_get_links ($filename, $element);
|
||||
+ my $links;
|
||||
+ if ($program_version_num >= 7.000000) {
|
||||
+ $links = $self->_get_links($filename, $element, $node_command);
|
||||
+ } else {
|
||||
+ $links = $self->_get_links ($filename, $element);
|
||||
+ }
|
||||
|
||||
my $head1 = $ENV{"FFMPEG_HEADER1"} || <<EOT;
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
@@ -252,13 +329,25 @@ sub ffmpeg_program_string($)
|
||||
if (defined($self->get_conf('PROGRAM'))
|
||||
and $self->get_conf('PROGRAM') ne ''
|
||||
and defined($self->get_conf('PACKAGE_URL'))) {
|
||||
- return $self->convert_tree(
|
||||
+ if ($program_version_num >= 7.001090) {
|
||||
+ return $self->convert_tree(
|
||||
+ $self->cdt('This document was generated using @uref{{program_homepage}, @emph{{program}}}.',
|
||||
+ { 'program_homepage' => {'text' => $self->get_conf('PACKAGE_URL')},
|
||||
+ 'program' => {'text' => $self->get_conf('PROGRAM') }}));
|
||||
+ } else {
|
||||
+ return $self->convert_tree(
|
||||
$self->gdt('This document was generated using @uref{{program_homepage}, @emph{{program}}}.',
|
||||
- { 'program_homepage' => $self->get_conf('PACKAGE_URL'),
|
||||
- 'program' => $self->get_conf('PROGRAM') }));
|
||||
+ { 'program_homepage' => {'text' => $self->get_conf('PACKAGE_URL')},
|
||||
+ 'program' => {'text' => $self->get_conf('PROGRAM') }}));
|
||||
+ }
|
||||
} else {
|
||||
- return $self->convert_tree(
|
||||
- $self->gdt('This document was generated automatically.'));
|
||||
+ if ($program_version_num >= 7.001090) {
|
||||
+ return $self->convert_tree(
|
||||
+ $self->cdt('This document was generated automatically.'));
|
||||
+ } else {
|
||||
+ return $self->convert_tree(
|
||||
+ $self->gdt('This document was generated automatically.'));
|
||||
+ }
|
||||
}
|
||||
}
|
||||
if ($program_version_6_8) {
|
175
ffmpeg.spec
175
ffmpeg.spec
@ -1,11 +1,9 @@
|
||||
%define enable_gpl 1
|
||||
%define enable_non_free 1
|
||||
%define buildver %{version}
|
||||
|
||||
Name: ffmpeg
|
||||
Epoch: 2
|
||||
Version: 7.1
|
||||
Release: 1mamba
|
||||
Release: 2mamba
|
||||
Summary: Hyper fast MPEG1/MPEG4/H263/RV and AC3/MPEG audio encoder
|
||||
Group: System/Libraries
|
||||
Vendor: openmamba
|
||||
@ -13,62 +11,94 @@ Distribution: openmamba
|
||||
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||||
URL: https://ffmpeg.org/
|
||||
Source: http://ffmpeg.mplayerhq.hu/releases/ffmpeg-%{version}.tar.bz2
|
||||
Patch1: %{name}-0.4.9-pic.patch
|
||||
Patch2: %{name}-20080820svn-libx264.patch
|
||||
Patch3: %{name}-0.5-x264.patch
|
||||
Patch4: %{name}-0.11-install_url_h.patch
|
||||
Patch5: ffmpeg-5.1-add-av_stream_get_first_dts-for-chromium.patch
|
||||
Patch0: ffmpeg-5.1-add-av_stream_get_first_dts-for-chromium.patch
|
||||
Patch1: ffmpeg-7.1-libx265-4.1.patch
|
||||
Patch2: ffmpeg-7.1-texinfo-7.2.patch
|
||||
License: LGPL, GPL
|
||||
## AUTOBUILDREQ-BEGIN
|
||||
BuildRequires: glibc-devel
|
||||
BuildRequires: ldconfig
|
||||
BuildRequires: libSDL2-devel
|
||||
BuildRequires: libX11-devel
|
||||
BuildRequires: libXext-devel
|
||||
BuildRequires: libXv-devel
|
||||
BuildRequires: libalsa-devel
|
||||
BuildRequires: libaom-devel
|
||||
BuildRequires: libass-devel
|
||||
BuildRequires: libavc1394-devel
|
||||
BuildRequires: libbluray-devel
|
||||
BuildRequires: libbs2b-devel
|
||||
BuildRequires: libbzip2-devel
|
||||
%ifarch %{ix86} x86_64
|
||||
BuildRequires: libcrystalhd-devel
|
||||
%endif
|
||||
BuildRequires: libcairo-devel
|
||||
BuildRequires: libdav1d-devel
|
||||
BuildRequires: libdc1394-devel
|
||||
BuildRequires: libdrm-devel
|
||||
BuildRequires: libdvdnav-devel
|
||||
BuildRequires: libdvdread-devel
|
||||
BuildRequires: libfontconfig-devel
|
||||
BuildRequires: libfreetype-devel
|
||||
BuildRequires: libfribidi-devel
|
||||
BuildRequires: libglib-devel
|
||||
BuildRequires: libglslang-devel
|
||||
BuildRequires: libglvnd-devel
|
||||
BuildRequires: libgnutls-devel
|
||||
BuildRequires: libgsm-devel
|
||||
BuildRequires: libharfbuzz-devel
|
||||
BuildRequires: libiec61883-devel
|
||||
BuildRequires: libjack-devel
|
||||
BuildRequires: libjxl-devel
|
||||
BuildRequires: liblame-devel
|
||||
BuildRequires: liblzma-devel
|
||||
BuildRequires: libmodplug-devel
|
||||
BuildRequires: libopencore-amr-devel
|
||||
BuildRequires: libopenjpeg-devel
|
||||
BuildRequires: libopenmpt-devel
|
||||
BuildRequires: libopus-devel
|
||||
BuildRequires: libplacebo-devel
|
||||
BuildRequires: libpulseaudio-devel
|
||||
BuildRequires: librav1e-devel
|
||||
BuildRequires: libraw1394-devel
|
||||
BuildRequires: librsvg-devel
|
||||
BuildRequires: librtmp-devel
|
||||
BuildRequires: librubberband-devel
|
||||
BuildRequires: libsnappy-devel
|
||||
BuildRequires: libsndio-devel
|
||||
BuildRequires: libsoxr-devel
|
||||
BuildRequires: libspeex-devel
|
||||
BuildRequires: libsrt-devel
|
||||
BuildRequires: libssh-devel
|
||||
BuildRequires: libsvt-av1-devel
|
||||
BuildRequires: libtheora-devel
|
||||
BuildRequires: libv4l-devel
|
||||
BuildRequires: libva-devel
|
||||
BuildRequires: libvdpau-devel
|
||||
BuildRequires: libvidstab-devel
|
||||
BuildRequires: libvmaf-devel
|
||||
BuildRequires: libvorbis-devel
|
||||
BuildRequires: libvpl-devel
|
||||
BuildRequires: libvpx-devel
|
||||
BuildRequires: libwebp-devel
|
||||
BuildRequires: libx264-devel
|
||||
BuildRequires: libx265-devel
|
||||
BuildRequires: libxcb-devel
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libxvidcore-devel
|
||||
BuildRequires: libz-devel
|
||||
BuildRequires: libzeromq-devel
|
||||
BuildRequires: libzimg-devel
|
||||
BuildRequires: ocl-icd-devel
|
||||
## AUTOBUILDREQ-END
|
||||
BuildRequires: amf-headers
|
||||
BuildRequires: liba52dec-devel
|
||||
BuildRequires: libavisynthplus-devel
|
||||
BuildRequires: libenca-devel
|
||||
BuildRequires: libfaad2-devel
|
||||
BuildRequires: liborc-devel
|
||||
BuildRequires: libogg-devel
|
||||
BuildRequires: libfaad2-devel
|
||||
BuildRequires: libraw1394-devel
|
||||
BuildRequires: liba52dec-devel
|
||||
BuildRequires: libvapoursynth-devel
|
||||
BuildRequires: nv-codec-headers
|
||||
BuildRequires: yasm-devel
|
||||
BuildRequires: ldconfig
|
||||
# texi2html required
|
||||
BuildRequires: tetex >= 3.0
|
||||
BuildRequires: libass-devel
|
||||
BuildRequires: libenca-devel
|
||||
Obsoletes: libffmpeg < 1:5.0
|
||||
Obsoletes: libav < 1:5.0
|
||||
|
||||
@ -314,12 +344,15 @@ Obsoletes: libav-devel < 1:5.0
|
||||
%description devel
|
||||
This is a virtual package that contains the dependencies necessary for installing all the FFmpeg development packages.
|
||||
|
||||
%debug_package
|
||||
%ifarch %{ix86}
|
||||
%global _lto_cflags %{nil}
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q -n ffmpeg-%{buildver}
|
||||
%define _default_patch_fuzz 2
|
||||
%patch 5 -p1 -b .add-av_stream_get_first_dts-for-chromium
|
||||
%patch 0 -p1 -F2 -b .add-av_stream_get_first_dts-for-chromium
|
||||
%patch 1 -p1
|
||||
%patch 2 -p1 -b .texinfo-7.2
|
||||
|
||||
%build
|
||||
# configure not generated by autoconf
|
||||
@ -335,50 +368,86 @@ export CFLAGS="$CFLAGS -Wno-error=incompatible-pointer-types -Wno-error=int-conv
|
||||
--libdir="%{_libdir}" \
|
||||
--shlibdir="%{_libdir}" \
|
||||
--mandir="%{_mandir}" \
|
||||
--enable-libmp3lame \
|
||||
--enable-libvorbis \
|
||||
--enable-libtheora \
|
||||
--enable-libgsm \
|
||||
--enable-libdc1394 \
|
||||
--enable-shared \
|
||||
--enable-pthreads \
|
||||
--disable-stripping \
|
||||
--enable-libopenjpeg \
|
||||
--enable-libspeex \
|
||||
--enable-swscale \
|
||||
--enable-pic \
|
||||
--enable-runtime-cpudetect \
|
||||
--enable-amf \
|
||||
--enable-avisynth \
|
||||
--enable-cuda-llvm \
|
||||
%ifnarch %{ix86}
|
||||
--enable-lto \
|
||||
%endif
|
||||
--enable-fontconfig \
|
||||
--enable-frei0r \
|
||||
--enable-gmp \
|
||||
--enable-gnutls \
|
||||
--enable-gpl \
|
||||
--enable-ladspa \
|
||||
--enable-libaom \
|
||||
--enable-libass \
|
||||
--enable-libbluray \
|
||||
--enable-libbs2b \
|
||||
--enable-libdav1d \
|
||||
--enable-libdc1394 \
|
||||
--enable-libdrm \
|
||||
--enable-libdvdnav \
|
||||
--enable-libdvdread \
|
||||
--enable-libfreetype \
|
||||
--enable-libfribidi \
|
||||
--enable-libglslang \
|
||||
--enable-libgsm \
|
||||
--enable-libharfbuzz \
|
||||
--enable-libiec61883 \
|
||||
--enable-libjack \
|
||||
--enable-libjxl \
|
||||
--enable-libmodplug \
|
||||
--enable-libmp3lame \
|
||||
--enable-libopencore_amrnb \
|
||||
--enable-libopencore_amrwb \
|
||||
--enable-libopenjpeg \
|
||||
--enable-libopenmpt \
|
||||
--enable-libopus \
|
||||
--enable-libplacebo \
|
||||
--enable-libpulse \
|
||||
--enable-librav1e \
|
||||
--enable-librsvg \
|
||||
--enable-librubberband \
|
||||
--enable-librtmp \
|
||||
--enable-libsnappy \
|
||||
--enable-libsoxr \
|
||||
--enable-libspeex \
|
||||
--enable-libsrt \
|
||||
--enable-libssh \
|
||||
--enable-libsvtav1 \
|
||||
--enable-libtheora \
|
||||
--enable-libv4l2 \
|
||||
--enable-libvidstab \
|
||||
--enable-libvmaf \
|
||||
--enable-libvorbis \
|
||||
--enable-libvpl \
|
||||
--enable-libvpx \
|
||||
--enable-libwebp \
|
||||
--enable-libx264 \
|
||||
--enable-libx265 \
|
||||
--enable-libxcb \
|
||||
--enable-libxml2 \
|
||||
--enable-libxvid \
|
||||
--enable-pic \
|
||||
--enable-postproc \
|
||||
--enable-runtime-cpudetect \
|
||||
--enable-libzimg \
|
||||
--enable-libzmq \
|
||||
--enable-nvdec \
|
||||
--enable-nvenc \
|
||||
--enable-opencl \
|
||||
--enable-opengl \
|
||||
--enable-shared \
|
||||
--enable-swresample \
|
||||
--enable-vapoursynth \
|
||||
--enable-vdpau \
|
||||
%if %enable_gpl
|
||||
--enable-gpl \
|
||||
--enable-fontconfig \
|
||||
--enable-gnutls \
|
||||
--enable-version3 \
|
||||
--enable-libxvid \
|
||||
--enable-postproc \
|
||||
--enable-libopencore-amrnb \
|
||||
--enable-libopencore-amrwb \
|
||||
%if %enable_non_free
|
||||
--enable-nonfree \
|
||||
%endif
|
||||
--enable-vulkan \
|
||||
%ifarch %{ix86}
|
||||
--disable-decoder="vvc"
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# --enable-nonfree \
|
||||
|
||||
%make
|
||||
|
||||
@ -395,15 +464,6 @@ ln -s ../libavcodec.a %{buildroot}%{_libdir}/libavcodec/libavcodec.a
|
||||
%clean
|
||||
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/ffmpeg
|
||||
@ -551,6 +611,9 @@ ln -s ../libavcodec.a %{buildroot}%{_libdir}/libavcodec/libavcodec.a
|
||||
%{_docdir}/ffmpeg/*
|
||||
|
||||
%changelog
|
||||
* Thu Jan 16 2025 Silvan Calarco <silvan.calarco@mambasoft.it> 7.1-2mamba
|
||||
- rebuilt with reviewed configure options to ensure support for needed codecs
|
||||
|
||||
* Mon Sep 30 2024 Automatic Build System <autodist@openmamba.org> 7.1-1mamba
|
||||
- automatic version update by autodist
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user