forked from Github/frigate
Nvidia Jetson ffmpeg + TensorRT support (#6458)
* Non-Jetson changes Required for later commits: - Allow base image to be overridden (and don't assume its WORKDIR) - Ensure python3.9 - Map hwaccel decode presets as strings instead of lists Not required: - Fix existing documentation - Simplify hwaccel scale logic * Prepare for multi-arch tensorrt build * Add tensorrt images for Jetson boards * Add Jetson ffmpeg hwaccel * Update docs * Add CODEOWNERS * CI * Change default model from yolov7-tiny-416 to yolov7-320 In my experience the tiny models perform markedly worse without being much faster * fixup! Update docs
This commit is contained in:
@@ -1,19 +1,47 @@
|
||||
variable "ARCH" {
|
||||
default = "amd64"
|
||||
}
|
||||
variable "BASE_IMAGE" {
|
||||
default = null
|
||||
}
|
||||
variable "SLIM_BASE" {
|
||||
default = null
|
||||
}
|
||||
variable "TRT_BASE" {
|
||||
default = null
|
||||
}
|
||||
|
||||
target "_build_args" {
|
||||
args = {
|
||||
BASE_IMAGE = BASE_IMAGE,
|
||||
SLIM_BASE = SLIM_BASE,
|
||||
TRT_BASE = TRT_BASE
|
||||
}
|
||||
platforms = ["linux/${ARCH}"]
|
||||
}
|
||||
|
||||
target wget {
|
||||
dockerfile = "docker/main/Dockerfile"
|
||||
target = "wget"
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target deps {
|
||||
dockerfile = "docker/main/Dockerfile"
|
||||
platforms = ["linux/amd64"]
|
||||
target = "deps"
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target rootfs {
|
||||
dockerfile = "docker/main/Dockerfile"
|
||||
platforms = ["linux/amd64"]
|
||||
target = "rootfs"
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target wheels {
|
||||
dockerfile = "docker/main/Dockerfile"
|
||||
platforms = ["linux/amd64"]
|
||||
target = "wheels"
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target devcontainer {
|
||||
@@ -22,27 +50,45 @@ target devcontainer {
|
||||
target = "devcontainer"
|
||||
}
|
||||
|
||||
target tensorrt {
|
||||
dockerfile = "docker/tensorrt/Dockerfile"
|
||||
target "trt-deps" {
|
||||
dockerfile = "docker/tensorrt/Dockerfile.base"
|
||||
context = "."
|
||||
contexts = {
|
||||
deps = "target:deps",
|
||||
}
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target "tensorrt-base" {
|
||||
dockerfile = "docker/tensorrt/Dockerfile.base"
|
||||
context = "."
|
||||
contexts = {
|
||||
deps = "target:deps",
|
||||
}
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target "tensorrt" {
|
||||
dockerfile = "docker/tensorrt/Dockerfile.${ARCH}"
|
||||
context = "."
|
||||
contexts = {
|
||||
wget = "target:wget",
|
||||
tensorrt-base = "target:tensorrt-base",
|
||||
rootfs = "target:rootfs"
|
||||
wheels = "target:wheels"
|
||||
}
|
||||
platforms = ["linux/amd64"]
|
||||
target = "frigate-tensorrt"
|
||||
inherits = ["_build_args"]
|
||||
}
|
||||
|
||||
target devcontainer-trt {
|
||||
dockerfile = "docker/tensorrt/Dockerfile"
|
||||
target "devcontainer-trt" {
|
||||
dockerfile = "docker/tensorrt/Dockerfile.amd64"
|
||||
context = "."
|
||||
contexts = {
|
||||
deps = "target:deps",
|
||||
rootfs = "target:rootfs"
|
||||
wheels = "target:wheels"
|
||||
wheels = "target:wheels",
|
||||
trt-deps = "target:trt-deps",
|
||||
devcontainer = "target:devcontainer"
|
||||
}
|
||||
platforms = ["linux/amd64"]
|
||||
target = "devcontainer-trt"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user