LCOV - code coverage report
Current view: top level - media/libav/libavcodec - avfft.c (source / functions) Hit Total Coverage
Test: output.info Lines: 0 29 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 7 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * This file is part of Libav.
       3             :  *
       4             :  * Libav is free software; you can redistribute it and/or
       5             :  * modify it under the terms of the GNU Lesser General Public
       6             :  * License as published by the Free Software Foundation; either
       7             :  * version 2.1 of the License, or (at your option) any later version.
       8             :  *
       9             :  * Libav is distributed in the hope that it will be useful,
      10             :  * but WITHOUT ANY WARRANTY; without even the implied warranty of
      11             :  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      12             :  * Lesser General Public License for more details.
      13             :  *
      14             :  * You should have received a copy of the GNU Lesser General Public
      15             :  * License along with Libav; if not, write to the Free Software
      16             :  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
      17             :  */
      18             : 
      19             : #include "libavutil/attributes.h"
      20             : #include "libavutil/mem.h"
      21             : #include "avfft.h"
      22             : #include "fft.h"
      23             : #include "rdft.h"
      24             : #include "dct.h"
      25             : 
      26             : /* FFT */
      27             : 
      28           0 : FFTContext *av_fft_init(int nbits, int inverse)
      29             : {
      30           0 :     FFTContext *s = av_malloc(sizeof(*s));
      31             : 
      32           0 :     if (s && ff_fft_init(s, nbits, inverse))
      33           0 :         av_freep(&s);
      34             : 
      35           0 :     return s;
      36             : }
      37             : 
      38           0 : void av_fft_permute(FFTContext *s, FFTComplex *z)
      39             : {
      40           0 :     s->fft_permute(s, z);
      41           0 : }
      42             : 
      43           0 : void av_fft_calc(FFTContext *s, FFTComplex *z)
      44             : {
      45           0 :     s->fft_calc(s, z);
      46           0 : }
      47             : 
      48           0 : av_cold void av_fft_end(FFTContext *s)
      49             : {
      50           0 :     if (s) {
      51           0 :         ff_fft_end(s);
      52           0 :         av_free(s);
      53             :     }
      54           0 : }
      55             : 
      56             : #if CONFIG_MDCT
      57             : 
      58             : FFTContext *av_mdct_init(int nbits, int inverse, double scale)
      59             : {
      60             :     FFTContext *s = av_malloc(sizeof(*s));
      61             : 
      62             :     if (s && ff_mdct_init(s, nbits, inverse, scale))
      63             :         av_freep(&s);
      64             : 
      65             :     return s;
      66             : }
      67             : 
      68             : void av_imdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input)
      69             : {
      70             :     s->imdct_calc(s, output, input);
      71             : }
      72             : 
      73             : void av_imdct_half(FFTContext *s, FFTSample *output, const FFTSample *input)
      74             : {
      75             :     s->imdct_half(s, output, input);
      76             : }
      77             : 
      78             : void av_mdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input)
      79             : {
      80             :     s->mdct_calc(s, output, input);
      81             : }
      82             : 
      83             : av_cold void av_mdct_end(FFTContext *s)
      84             : {
      85             :     if (s) {
      86             :         ff_mdct_end(s);
      87             :         av_free(s);
      88             :     }
      89             : }
      90             : 
      91             : #endif /* CONFIG_MDCT */
      92             : 
      93             : #if CONFIG_RDFT
      94             : 
      95           0 : RDFTContext *av_rdft_init(int nbits, enum RDFTransformType trans)
      96             : {
      97           0 :     RDFTContext *s = av_malloc(sizeof(*s));
      98             : 
      99           0 :     if (s && ff_rdft_init(s, nbits, trans))
     100           0 :         av_freep(&s);
     101             : 
     102           0 :     return s;
     103             : }
     104             : 
     105           0 : void av_rdft_calc(RDFTContext *s, FFTSample *data)
     106             : {
     107           0 :     s->rdft_calc(s, data);
     108           0 : }
     109             : 
     110           0 : av_cold void av_rdft_end(RDFTContext *s)
     111             : {
     112           0 :     if (s) {
     113           0 :         ff_rdft_end(s);
     114           0 :         av_free(s);
     115             :     }
     116           0 : }
     117             : 
     118             : #endif /* CONFIG_RDFT */
     119             : 
     120             : #if CONFIG_DCT
     121             : 
     122             : DCTContext *av_dct_init(int nbits, enum DCTTransformType inverse)
     123             : {
     124             :     DCTContext *s = av_malloc(sizeof(*s));
     125             : 
     126             :     if (s && ff_dct_init(s, nbits, inverse))
     127             :         av_freep(&s);
     128             : 
     129             :     return s;
     130             : }
     131             : 
     132             : void av_dct_calc(DCTContext *s, FFTSample *data)
     133             : {
     134             :     s->dct_calc(s, data);
     135             : }
     136             : 
     137             : av_cold void av_dct_end(DCTContext *s)
     138             : {
     139             :     if (s) {
     140             :         ff_dct_end(s);
     141             :         av_free(s);
     142             :     }
     143             : }
     144             : 
     145             : #endif /* CONFIG_DCT */

Generated by: LCOV version 1.13