Photos.app no reproduce audio de videos grabados con la cámara Olympus

2

Photo.app de Apple no tiene problemas para reproducir el audio de algunos videos (por ejemplo, videos grabados con un iPhone). Pero no reproduce el audio de los videos creados por una cámara digital Olympus SZ-31MR.

Estos videos se reproducen dentro de las fotos, pero son silenciosos.

Cuando se reproduce en Quicktime Player (y VLC), el audio se reproduce correctamente.

Según Quicktime Player, los videos de esta cámara están codificados como "H.264, 1920 × 1080, Millones; Entero de 16 bits (Little Endian), Estéreo, 32.000 kHz"

Esto está en OS X El Capitan (10.11.2) y Photos.app 1.3 (350.23.0), pero el problema no es nuevo. Este hilo en Discussions.apple.com afirma que el problema es el códec de audio utilizado por Cámara Olympus.

¿Hay alguna forma en la que pueda reproducir estos videos y obtener sonido sin tener que buscar los archivos de video individuales y abrirlos en Quicktime.app? Cualquiera de las siguientes soluciones sería aceptable:

  1. Algún tipo de instalación (¿un complemento de Quicktime?) que corrige el comportamiento en las fotos.
  2. Un navegador de fotos alternativo que puede importar (o ver en su lugar) la biblioteca de fotos y que puede reproducir el audio en estos videos. (He intentado Lyn , pero tiene el mismo comportamiento que en las fotos).
  3. Alguna forma de transcodificar estos videos para que el audio se reproduzca en Fotos. Tengo muchos videos e importo nuevos videos regularmente, por lo que una interfaz conveniente sería importante aquí.
pregunta Gareth Rees 21.12.2015 - 22:37

1 respuesta

1

(Respondiendo a mi propia pregunta)

El problema es que la Olympus SZ-31MR codifica su audio como PCM de 16 bits firmado. Este formato de audio no es compatible con fotos. Por lo tanto, el audio debe transcodificarse para poder reproducirse desde fotos.

El programa de línea de comandos ffmpeg puede transcodificar secuencias de audio sin cambiar las secuencias de video. Por ejemplo, aquí se explica cómo transcodificar el audio a Apple Lossless (ALAC) y copiar el video:

$ ffmpeg -i input.mov -vcodec copy -acodec alac output.mov

Experimentalmente, parece que a las fotos no les importa si edito los videos en su biblioteca, así que aquí hay un script de shell que automatiza la transcodificación de la PCM de 16 bits de Olympus a ALAC compatible con fotos:

#!/bin/sh
# Convert movies in Photos library from 16-bit little-endian PCM to
# Apple Lossless.

set -e

# Location of Photos library
PHOTOS=~/"Pictures/Photos Library.photoslibrary/Masters"

# Directory for movie backups
BACKUPDIR=~/movie-backups
mkdir -p "$BACKUPDIR"

find "$PHOTOS" -name '*.MOV' | while read MOV; do
  if ffprobe -v fatal -show_streams -select_streams a -of flat -i "$MOV" |
    grep -q 'codec_name="pcm_s16le"'
  then
    echo "Transcoding $MOV..."
    BACKUP=$BACKUPDIR/$(echo "$MOV" | sed 's+_+__+g;s+/+_+g')
    TMP=$BACKUPDIR/tmp.mov
    ffmpeg -v fatal -y -nostdin -i "$MOV" -vcodec copy -acodec alac "$TMP"
    mv -- "$MOV" "$BACKUP"
    mv -- "$TMP" "$MOV"
  fi
done

Esta secuencia de comandos tiene cuidado de mantener las películas originales en un directorio de respaldo en caso de que algo salga mal, y utiliza set -e y ffmpeg -v fatal para evitar continuar después de un error, pero sobrescribe las películas en la biblioteca de Fotos, así que úsalo bajo tu propio riesgo.

    
respondido por el Gareth Rees 22.12.2015 - 13:00

Lea otras preguntas en las etiquetas