diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/goheif.iml b/.idea/goheif.iml new file mode 100644 index 0000000..5e764c4 --- /dev/null +++ b/.idea/goheif.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..79f33ef --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/go.mod b/go.mod index 3504c83..242416d 100644 --- a/go.mod +++ b/go.mod @@ -1 +1,5 @@ -module github.com/adrium/goheif +module github.com/MaxBoych/goheif + +go 1.21 + +require github.com/rwcarlsen/goexif v0.0.0-20190401172101-9e8deecbddbd // indirect diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..4f6df19 --- /dev/null +++ b/go.sum @@ -0,0 +1,2 @@ +github.com/rwcarlsen/goexif v0.0.0-20190401172101-9e8deecbddbd h1:CmH9+J6ZSsIjUK3dcGsnCnO41eRBOnY12zwkn5qVwgc= +github.com/rwcarlsen/goexif v0.0.0-20190401172101-9e8deecbddbd/go.mod h1:hPqNNc0+uJM6H+SuU8sEs5K5IQeKccPqeSjfgcKGgPk= diff --git a/goheif.go b/goheif.go index 379661a..ce962a7 100644 --- a/goheif.go +++ b/goheif.go @@ -3,13 +3,12 @@ package goheif import ( "bytes" "fmt" + "github.com/MaxBoych/goheif/heif" + "github.com/MaxBoych/goheif/libde265" "image" "image/color" "io" "io/ioutil" - - "github.com/adrium/goheif/heif" - "github.com/adrium/goheif/libde265" ) // SafeEncoding uses more memory but seems to make diff --git a/heic2jpg/main.go b/heic2jpg/main.go index f944b23..9a2f950 100644 --- a/heic2jpg/main.go +++ b/heic2jpg/main.go @@ -3,12 +3,11 @@ package main import ( "flag" "fmt" + "github.com/MaxBoych/goheif" "image/jpeg" "io" "log" "os" - - "github.com/adrium/goheif" ) // Skip Writer for exif writing diff --git a/heif/heif.go b/heif/heif.go index e5cee54..9c431c5 100644 --- a/heif/heif.go +++ b/heif/heif.go @@ -24,10 +24,9 @@ package heif import ( "errors" "fmt" + "github.com/MaxBoych/goheif/heif/bmff" "io" "log" - - "github.com/adrium/goheif/heif/bmff" ) // File represents a HEIF file. diff --git a/libde265/libde265/x86/sse-motion.cc b/libde265/libde265/x86/sse-motion.cc index c8c7571..0c39684 100644 --- a/libde265/libde265/x86/sse-motion.cc +++ b/libde265/libde265/x86/sse-motion.cc @@ -3527,9 +3527,9 @@ void ff_hevc_put_hevc_qpel_h_1_v_1_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -3710,9 +3710,9 @@ void ff_hevc_put_hevc_qpel_h_1_v_2_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -3887,9 +3887,9 @@ void ff_hevc_put_hevc_qpel_h_1_v_3_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4058,9 +4058,9 @@ void ff_hevc_put_hevc_qpel_h_2_v_1_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4241,9 +4241,9 @@ void ff_hevc_put_hevc_qpel_h_2_v_2_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4419,9 +4419,9 @@ void ff_hevc_put_hevc_qpel_h_2_v_3_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4592,9 +4592,9 @@ void ff_hevc_put_hevc_qpel_h_3_v_1_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4778,9 +4778,9 @@ void ff_hevc_put_hevc_qpel_h_3_v_2_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0); @@ -4958,9 +4958,9 @@ void ff_hevc_put_hevc_qpel_h_3_v_3_sse(int16_t *dst, ptrdiff_t dststride, r0 = _mm_srli_epi32(r0, 6); r1 = _mm_and_si128(r1, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_and_si128(r0, - _mm_set_epi16(0, 65535, 0, 65535, 0, 65535, 0, 65535)); + _mm_set_epi16(0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF, 0, (unsigned short)0xFFFF)); r0 = _mm_hadd_epi16(r0, r1); _mm_store_si128((__m128i *) &dst[x], r0);