¿Cómo formatear correctamente un NSTimeInterval como un período de time, respetando i18n?

Dado un NSTimeInterval que representa un período de time, ¿cómo creo una cadena legible por humanos que exprese ese período de time de una manera que respete i18N?

Por ejemplo, si NSTimeInterval es igual a 10823.23435 segundos, entonces algunas forms razonables de representar eso como una cadena para aquellos en los Estados Unidos podrían ser:

  • 3:23
  • 3 horas, 23 segundos
  • etc

(Es decir, cosas que verías en un cronómetro).

Es de suponer que otros locales pueden usar representaciones diferentes.

Estoy al tanto de NSDateFormatter y NSNumberFormatter, pero no está claro para mí si o cómo usar uno de estos para este problema.

También soy consciente de FormatterKit, pero eso solo hace periodos de time relativos (por ejemplo, "hace 3 minutos"). Estoy buscando periodos de time absolutos.

Es trivial cocinar mi propia solución específica del entorno local, pero ¿este problema ya se ha resuelto correctamente?

Gracias.

Para iOS 8 hay NSDateComponentsFormatter y NSDateIntervalFormatter, pueden funcionar para su aplicación.

Los documentos carecen de ver NSHipster: NSFormatter
y
Foundation / NSDateIntervalFormatter.h