diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..3550a30 --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use flake diff --git a/.gitignore b/.gitignore index 75be678..d8206ff 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,5 @@ /*.yuv /*.xml /*.png + +.direnv diff --git a/cmd/avif/main.go b/cmd/avif/main.go index e69d6d0..a977c9e 100644 --- a/cmd/avif/main.go +++ b/cmd/avif/main.go @@ -8,8 +8,8 @@ import ( "io" "os" - "github.com/Kagami/go-avif" "github.com/docopt/docopt-go" + "tulpa.dev/cadey/avif" ) const VERSION = "0.0.0" diff --git a/example_test.go b/example_test.go index f68b0d2..f0f9f7b 100644 --- a/example_test.go +++ b/example_test.go @@ -6,7 +6,7 @@ import ( "log" "os" - "github.com/Kagami/go-avif" + "tulpa.dev/cadey/avif" ) const usageHelp = "Usage: %s src.jpg dst.avif" diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..4bac686 --- /dev/null +++ b/flake.lock @@ -0,0 +1,42 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1663087123, + "narHash": "sha256-cNIRkF/J4mRxDtNYw+9/fBNq/NOA2nCuPOa3EdIyeDs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9608ace7009ce5bc3aeb940095e01553e635cbc7", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs", + "utils": "utils" + } + }, + "utils": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..0cce969 --- /dev/null +++ b/flake.nix @@ -0,0 +1,40 @@ +{ + description = "/x/perimental code"; + + inputs = { + nixpkgs.url = "nixpkgs/nixos-unstable"; + utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, nixpkgs, utils }@attrs: + utils.lib.eachSystem [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ] (system: + let + pkgs = import nixpkgs { + inherit system; + overlays = [ + (final: prev: { + go = prev.go_1_19; + buildGoModule = prev.buildGo119Module; + }) + ]; + }; + + in { + devShells.default = pkgs.mkShell { + buildInputs = with pkgs; [ + go + gopls + gotools + go-tools + + pkg-config + libaom + ]; + }; + }); +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..9ae6a62 --- /dev/null +++ b/go.mod @@ -0,0 +1,5 @@ +module tulpa.dev/cadey/avif + +go 1.19 + +require github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815 diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..42c4f03 --- /dev/null +++ b/go.sum @@ -0,0 +1,2 @@ +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815 h1:bWDMxwH3px2JBh6AyO7hdCn/PkvCZXii8TGj7sbtEbQ= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= diff --git a/mp4.go b/mp4.go index d36e299..4227807 100644 --- a/mp4.go +++ b/mp4.go @@ -725,7 +725,7 @@ func muxFrame(w io.Writer, m image.Image, subsampling image.YCbCrSubsampleRatio, fileData := boxMDAT{data: obuData} fileType := boxFTYP{ - majorBrand: itemTypeMIF1, + majorBrand: itemTypeAVIF, compatibleBrands: []fourCC{itemTypeMIF1, itemTypeAVIF, itemTypeMIAF}, } metadata := boxMETA{