* Discrete wavelet transform
*/
+#include "libavutil/avassert.h"
#include "libavutil/common.h"
#include "libavutil/mem.h"
#include "jpeg2000dwt.h"
lp;
int *l;
+ av_assert1(!mh && !mv);
// HOR_SD
l = line + mh;
for (lp = 0; lp < lv; lp++){
lp;
float *l;
+ av_assert1(!mh && !mv);
// HOR_SD
l = line + mh;
for (lp = 0; lp < lv; lp++){
lp;
int *l;
+ av_assert1(!mh && !mv);
+
// HOR_SD
l = line + mh;
for (lp = 0; lp < lv; lp++){
{
int i;
- if (i1 == i0 + 1)
+ if (i1 <= i0 + 1) {
+ if (i0 == 1)
+ p[1] >>= 1;
return;
+ }
extend53(p, i0, i1);
{
int i;
- if (i1 == i0 + 1)
+ if (i1 <= i0 + 1) {
+ if (i0 == 1)
+ p[1] *= F_LFTG_K/2;
return;
+ }
extend97_float(p, i0, i1);
{
int i;
- if (i1 == i0 + 1)
+ if (i1 <= i0 + 1) {
+ if (i0 == 1)
+ p[1] = (p[1] * I_LFTG_K + (1<<16)) >> 17;
return;
+ }
extend97_int(p, i0, i1);