Files
copyparty/docs/bad-codecs.md
2026-02-22 14:31:56 +00:00

4.0 KiB

due to legal reasons, the copyparty docker image and bootable flashdrive are not able to decode and display images and videos which were made using certain codecs

  • specifically, photos and videos taken with iphones will not work, and perhaps some samsung phones, idk
  • this also includes thumbnails thereof

I suggest you stop reading at this point, unless you want to share my frustration, in which case please do continue

why hevc is not included

the following is my understanding, which is probably wrong because I anal

  • the h265 codec, also known as h.265 and hevc, is patent-encumbered and legally problematic to distribute;
  • due to this, both chrome and firefox refuse to add a built-in decoder for hevc; https://caniuse.com/hevc
    • and while I haven't discussed this with a lawyer, I presume the reason is they did
  • most heif/heic images are hevc, meaning they are equally troublesome
  • safari is the only webbrowser willing to decode and display heif/heic photos, for self-inflicted reasons https://caniuse.com/heif

and anyways there's no reason to use hevc in the first place because av1 gives higher quality at a smaller filesize, is entirely free, and avif (its heif counterpart) is widely supported across all browsers: https://caniuse.com/avif

why only the docker and flashdrive images are affected

supposedly, royalties is like a jigsaw puzzle, where whoever lays down the last piece wins the responsibility of dealing with that mess -- and because the docker-image has everything bundled as one big ball of software, that might(?) be a problem...idk, i anal

so because ffmpeg is the component that handles everything regarding hevc, only the packages which include ffmpeg are affected, which means the docker-image and bootable-flashdrive-image

if you use or install copyparty in any other way, then you are in charge of obtaining and providing an ffmpeg for copyparty to use, and thus nothing has changed

how hevc support was removed

the regular ffmpeg package from the alpinelinux repos was replaced with a custom ffmpeg build where the hevc decoder was physically stripped out, meaning hevc is not just "disabled", but entirely removed from all official copyparty distributions

oh and the aac support has also been tampered with; now only AAC-LC can be decoded, which is fine because that's like 99% of all aac files (nobody uses HE-AAC or AAC-LD), and LC-AAC has become royalty-free in all relevant parts of the world at this point

and any traces of vvc was also stripped out because that codec was dead on arrival, unable to compete with av1 (and soon av2)

the silver lining is that this has made the docker images much smaller; the ac image is now half the size -- it went from 67 to 35 MiB gzipped, from 195 to 99 MiB installed, which is nice

how to enable hevc support

all I can say is good luck; I legally cannot help you with that

see, here's the fun part -- apparently I'm not allowed to assist with a technical explanation on how it could be done, because that would "facilitate access" as they call it?? but all copyparty does is call ffmpeg to generate the thumbnail; copyparty doesn't even know or care what "hevc" is; this is all purely on the ffmpeg side of things -- so technically none of this is even related to copyparty itself in the first place... ah whatever

man I just wanna write software, I hate this

pain peko