mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 11:19:55 +00:00
avutil/tests/audio_fifo.c: use av_malloc() family of functions
Signed-off-by: Thomas Turner <thomastdt@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
af7a75cb51
commit
11b7cad3dc
@ -19,6 +19,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
|
#include "libavutil/mem.h"
|
||||||
#include "libavutil/audio_fifo.c"
|
#include "libavutil/audio_fifo.c"
|
||||||
|
|
||||||
#define MAX_CHANNELS 32
|
#define MAX_CHANNELS 32
|
||||||
@ -50,15 +51,6 @@ static void ERROR(const char *str)
|
|||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void* allocate_memory(size_t size)
|
|
||||||
{
|
|
||||||
void *ptr = malloc(size);
|
|
||||||
if (ptr == NULL){
|
|
||||||
ERROR("failed to allocate memory!");
|
|
||||||
}
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void print_audio_bytes(const TestStruct *test_sample, void **data_planes, int nb_samples)
|
static void print_audio_bytes(const TestStruct *test_sample, void **data_planes, int nb_samples)
|
||||||
{
|
{
|
||||||
int p, b, f;
|
int p, b, f;
|
||||||
@ -85,11 +77,15 @@ static int read_samples_from_audio_fifo(AVAudioFifo* afifo, void ***output, int
|
|||||||
int samples = FFMIN(nb_samples, afifo->nb_samples);
|
int samples = FFMIN(nb_samples, afifo->nb_samples);
|
||||||
int tot_elements = !av_sample_fmt_is_planar(afifo->sample_fmt)
|
int tot_elements = !av_sample_fmt_is_planar(afifo->sample_fmt)
|
||||||
? samples : afifo->channels * samples;
|
? samples : afifo->channels * samples;
|
||||||
void **data_planes = allocate_memory(sizeof(void*) * afifo->nb_buffers);
|
void **data_planes = av_malloc_array(afifo->nb_buffers, sizeof(void*));
|
||||||
|
if (!data_planes)
|
||||||
|
ERROR("failed to allocate memory!");
|
||||||
*output = data_planes;
|
*output = data_planes;
|
||||||
|
|
||||||
for (i = 0; i < afifo->nb_buffers; ++i){
|
for (i = 0; i < afifo->nb_buffers; ++i){
|
||||||
data_planes[i] = allocate_memory(afifo->sample_size * tot_elements);
|
data_planes[i] = av_malloc_array(tot_elements, afifo->sample_size);
|
||||||
|
if (!data_planes[i])
|
||||||
|
ERROR("failed to allocate memory!");
|
||||||
}
|
}
|
||||||
|
|
||||||
return av_audio_fifo_read(afifo, *output, nb_samples);
|
return av_audio_fifo_read(afifo, *output, nb_samples);
|
||||||
@ -178,9 +174,9 @@ static void test_function(const TestStruct test_sample)
|
|||||||
|
|
||||||
/* deallocate */
|
/* deallocate */
|
||||||
for (i = 0; i < afifo->nb_buffers; ++i){
|
for (i = 0; i < afifo->nb_buffers; ++i){
|
||||||
free(output_data[i]);
|
av_freep(&output_data[i]);
|
||||||
}
|
}
|
||||||
free(output_data);
|
av_freep(&output_data);
|
||||||
av_audio_fifo_free(afifo);
|
av_audio_fifo_free(afifo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user