Creio que a explicação no vídeo cria confusão sobre a porta Socket exibida usando o método getPort. Recomendo corrigir o vídeo.
De acordo com a API[1] :
Socket.getPort
public int getPort()
Returns the **remote** port number to which this socket is connected.
If the socket was connected prior to being closed, then this method will continue to return the connected port number after the socket is closed.
Returns:
the remote port number to which this socket is connected, or 0 if the socket is not connected yet.
Creio que o que o instrutor desejava era usar o método getLocalPort(). Além disso, a explicação de que a porta 12345 era uma porta "inicial" e que seria negociada posteriormente outra está incorreta. O lado servidor sempre manterá a porta 12345. A porta que é exibida é a porta do lado client do Socket (esta muda a cada nova conexão, dependendo da disponibilidade das portas efêmeras disponíveis [2]).
[1] https://docs.oracle.com/javase/7/docs/api/java/net/Socket.html#getPort()