community/mlt: rebuild against ffmpeg6

This commit is contained in:
psykose 2023-02-12 13:06:46 +00:00
parent 36a2cd32d2
commit 0308a7943d
2 changed files with 48 additions and 2 deletions

View File

@ -2,7 +2,7 @@
# Maintainer: Kevin Daudt <kdaudt@alpinelinux.org>
pkgname=mlt
pkgver=7.12.0
pkgrel=3
pkgrel=4
pkgdesc="MLT Multimedia Framework"
url="https://www.mltframework.org/"
arch="all"
@ -32,7 +32,9 @@ makedepends="
options="!check" # todo
checkdepends="py3-pykwalify"
subpackages="$pkgname-dev $pkgname-doc py3-$pkgname:py3"
source="https://github.com/mltframework/mlt/archive/v$pkgver/mlt-v$pkgver.tar.gz"
source="https://github.com/mltframework/mlt/archive/v$pkgver/mlt-v$pkgver.tar.gz
ffmpeg6.patch
"
case $CARCH in
ppc64le|s390x)
@ -77,4 +79,5 @@ py3() {
sha512sums="
f2eebe1f83ede612968aacaa02c4bb60e98d70a49e2f6149f81b1c6835943825441b73a6f076565574c501a68216bcc84ceb8e0a441d05fe7b8930603b9e23ad mlt-v7.12.0.tar.gz
f7efca89a7084cd6e0ffa640851c8392b794300222f145e7c9fc60676441eb0cff4329249e307c5196a693f7a852cb55346d9b0b1cc12ddce9821ca08230ae17 ffmpeg6.patch
"

View File

@ -0,0 +1,43 @@
https://github.com/FFmpeg/FFmpeg/commit/1ea365082318f06cd42a8b37dd0c7724b599c821
https://github.com/FFmpeg/FFmpeg/commit/8f72bb866e47bcb57586608086c77cf0a2e2f21a ,
f->inputs -> f, 0 , etc
diff --git a/src/modules/avformat/factory.c b/src/modules/avformat/factory.c
index cfa4a12..faca883 100644
--- a/src/modules/avformat/factory.c
+++ b/src/modules/avformat/factory.c
@@ -442,8 +442,8 @@ MLT_REPOSITORY
void *iterator = NULL;
while ( ( f = (AVFilter*) av_filter_iterate( &iterator ) ) ) {
// Support filters that have one input and one output of the same type.
- if ( avfilter_pad_count( f->inputs ) == 1 &&
- avfilter_pad_count( f->outputs ) == 1 &&
+ if ( avfilter_filter_pad_count( f, 0 ) == 1 &&
+ avfilter_filter_pad_count( f, 1 ) == 1 &&
avfilter_pad_get_type( f->inputs, 0 ) == avfilter_pad_get_type( f->outputs, 0 ) &&
!mlt_properties_get( blacklist, f->name ) )
{
diff --git a/src/modules/avformat/filter_swresample.c b/src/modules/avformat/filter_swresample.c
index b1e0387..50f3fa2 100644
--- a/src/modules/avformat/filter_swresample.c
+++ b/src/modules/avformat/filter_swresample.c
@@ -79,7 +79,7 @@ static int configure_swr_context( mlt_filter filter )
// If input channels < output channels, silent channels will be added.
int64_t custom_in_layout = 0;
int64_t custom_out_layout = 0;
- double* matrix = av_mallocz_array( pdata->in_channels * pdata->out_channels, sizeof(double) );
+ double* matrix = av_calloc( pdata->in_channels * pdata->out_channels, sizeof(double) );
int stride = pdata->in_channels;
int i = 0;
@@ -118,9 +118,9 @@ static int configure_swr_context( mlt_filter filter )
// Allocate the channel buffer pointers
av_freep( &pdata->in_buffers );
- pdata->in_buffers = av_mallocz_array( pdata->in_channels, sizeof(uint8_t*) );
+ pdata->in_buffers = av_calloc( pdata->in_channels, sizeof(uint8_t*) );
av_freep( &pdata->out_buffers );
- pdata->out_buffers = av_mallocz_array( pdata->out_channels, sizeof(uint8_t*) );
+ pdata->out_buffers = av_calloc( pdata->out_channels, sizeof(uint8_t*) );
return error;
}