summaryrefslogtreecommitdiff
path: root/libavfilter/f_reverse.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2021-10-02 17:50:14 +0200
committerPaul B Mahol <onemda@gmail.com>2021-10-02 18:49:40 +0200
commitdb7bd99ebfa812076acb1f2eb04c1999877e4e0a (patch)
tree2b9653a5b94cad22328024e637b8379b09c963ce /libavfilter/f_reverse.c
parentba63078b0f90cd5f21574ffa5b100241a395fc94 (diff)
avfilter/f_reverse: add missing S64(P) sample format support
Diffstat (limited to 'libavfilter/f_reverse.c')
-rw-r--r--libavfilter/f_reverse.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/libavfilter/f_reverse.c b/libavfilter/f_reverse.c
index 0398aa9cb0..586d95c063 100644
--- a/libavfilter/f_reverse.c
+++ b/libavfilter/f_reverse.c
@@ -167,6 +167,12 @@ static void reverse_samples_planar(AVFrame *out)
FFSWAP(int32_t, dst[i], dst[j]);
}
break;
+ case AV_SAMPLE_FMT_S64P: {
+ int64_t *dst = (int64_t *)out->extended_data[p];
+ for (int i = 0, j = out->nb_samples - 1; i < j; i++, j--)
+ FFSWAP(int64_t, dst[i], dst[j]);
+ }
+ break;
case AV_SAMPLE_FMT_FLTP: {
float *dst = (float *)out->extended_data[p];
for (int i = 0, j = out->nb_samples - 1; i < j; i++, j--)
@@ -209,6 +215,13 @@ static void reverse_samples_packed(AVFrame *out)
FFSWAP(int32_t, dst[i * channels + p], dst[j * channels + p]);
}
break;
+ case AV_SAMPLE_FMT_S64: {
+ int64_t *dst = (int64_t *)out->extended_data[0];
+ for (int i = 0, j = out->nb_samples - 1; i < j; i++, j--)
+ for (int p = 0; p < channels; p++)
+ FFSWAP(int64_t, dst[i * channels + p], dst[j * channels + p]);
+ }
+ break;
case AV_SAMPLE_FMT_FLT: {
float *dst = (float *)out->extended_data[0];
for (int i = 0, j = out->nb_samples - 1; i < j; i++, j--)