I have since found a way to do this, by using:
:value '("--verbose" "--port="1234")
Which is hopefully the recommended way of doing things.
In case it helps anyone else, this is the first time I'd tried to use transient and found the documentation fairly heavy going. I just wanted to launch a command via transient and have some default values plugged in. So here's what I did.
First, create the command to launch the process:
(defun run-command (&optional args)
(interactive
(list (transient-args 'simple-transient)))
(let ((input-file (read-file-name "Run with input: " "C:/Path/Somewhere" nil t)))
(apply #'start-process "command" "*command*" "command" (cons input-file args))))
Then define the transient:
(transient-define-prefix simple-transient ()
"A simple transient"
:value '("--verbose") ; default to verbose on
["Arguments"
("-a" "Address (default 127.0.0.1)" "--addresss=")
("-p" "Port (default 554)" "--port=")
("-v" "Use verbose logging" "--verbose")
["Actions"
("r" "Run" run-command)])
And finally, you can then bind this to a key:
(global-set-key [f8] 'simple-transient)