ffmpeg exportar áudio multicanal O estéreo não toca

0

Estou tentando exportar todos os canais de áudio de um arquivo quicktime multicanal com o ffmpeg, que possui a seguinte configuração de áudio, mas não tenho certeza se o comando abaixo está correto. Todos os arquivos parecem e jogam corretos no Quicktime player, exceto o L + R_Total.wav que se recusa a jogar no Quicktime player ou no Final Cut, mas funciona bem no VLC, então eu tenho certeza que o meu comando ffmpeg não está correto para o estéreo no Track 7 O arquivo estéreo tem cerca de 1,8 GB de tamanho. Aqui está o layout da minha trilha no arquivo Quicktime:

Track 1 - mono
Track 2 - mono
Track 3 - mono
Track 4 - mono
Track 5 - mono
Track 6 - mono
Track 7 - stereo

Estou usando:

/Users/me/Desktop/python/ffmpeg/ffmpeg -i /Users/me/Desktop/test.mov -acodec pcm_s24le -map 0:1 -y Left.wav -acodec pcm_s24le -map 0:2 Right.wav -acodec pcm_s24le -map 0:3 Center.wav -acodec pcm_s24le -map 0:4 LFE.wav -acodec pcm_s24le -map 0:5 Left_Surround.wav -acodec pcm_s24le -map 0:6 Right_Surround.wav -acodec pcm_s24le -map 0:7 Left+Right_Total.wav

Aqui está a impressão do terminal:

    MacBook-Pro:~ me$ /Users/me/Desktop/python/ffmpeg/ffmpeg -i /Users/me/Desktop/test.mov -acodec pcm_s24le -map 0:1 -y Left.wav -acodec pcm_s24le -map 0:2 Right.wav -acodec pcm_s24le -map 0:3 Center.wav -acodec pcm_s24le -map 0:4 LFE.wav -acodec pcm_s24le -map 0:5 Left_Surround.wav -acodec pcm_s24le -map 0:6 Right_Surround.wav -acodec pcm_s24le -map 0:7 Left+Right_Total.wav
ffmpeg version 2.2 Copyright (c) 2000-2014 the FFmpeg developers
  built on Mar 25 2014 15:00:55 with llvm-gcc 4.2.1 (LLVM build 2336.11.00)
  configuration: --prefix=/Volumes/Ramdisk/sw --enable-gpl --enable-pthreads --enable-version3 --enable-libspeex --enable-libvpx --disable-decoder=libvpx --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-avfilter --enable-libopencore_amrwb --enable-libopencore_amrnb --enable-filters --enable-libgsm --arch=x86_64 --enable-runtime-cpudetect
  libavutil      52. 66.100 / 52. 66.100
  libavcodec     55. 52.102 / 55. 52.102
  libavformat    55. 33.100 / 55. 33.100
  libavdevice    55. 10.100 / 55. 10.100
  libavfilter     4.  2.100 /  4.  2.100
  libswscale      2.  5.102 /  2.  5.102
  libswresample   0. 18.100 /  0. 18.100
  libpostproc    52.  3.100 / 52.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/me/Desktop/test.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    creation_time   : 2014-03-06 11:25:34
  Duration: 00:01:03.48, start: 0.000000, bitrate: 153967 kb/s
    Stream #0:0(eng): Video: prores (apch / 0x68637061), yuv422p10le, 1920x1080, 144704 kb/s, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 23976 tbn, 23976 tbc (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
      timecode        : 00:00:00:00
    Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (FL), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:2(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (FR), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:3(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, mono, s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:4(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (LFE), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:5(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (BL), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:6(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1 channels (BR), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:7(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, downmix, s32, 2304 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
    Stream #0:8(eng): Data: none (tmcd / 0x64636D74) (default)
    Metadata:
      creation_time   : 2014-03-06 11:26:04
      handler_name    : Apple Alias Data Handler
      timecode        : 00:00:00:00
Output #0, wav, to 'Left.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #0:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels (FL), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #1, wav, to 'Right.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #1:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels (FR), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #2, wav, to 'Center.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #2:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, mono, s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #3, wav, to 'LFE.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #3:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels (LFE), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #4, wav, to 'Left_Surround.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #4:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels (BL), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #5, wav, to 'Right_Surround.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #5:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, 1 channels (BR), s32, 1152 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Output #6, wav, to 'Left+Right_Total.wav':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    ISFT            : Lavf55.33.100
    Stream #6:0(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz, downmix, s32, 2304 kb/s (default)
    Metadata:
      creation_time   : 2014-03-06 11:25:34
      handler_name    : Apple Alias Data Handler
Stream mapping:
  Stream #0:1 -> #0:0 (pcm_s24le -> pcm_s24le)
  Stream #0:2 -> #1:0 (pcm_s24le -> pcm_s24le)
  Stream #0:3 -> #2:0 (pcm_s24le -> pcm_s24le)
  Stream #0:4 -> #3:0 (pcm_s24le -> pcm_s24le)
  Stream #0:5 -> #4:0 (pcm_s24le -> pcm_s24le)
  Stream #0:6 -> #5:0 (pcm_s24le -> pcm_s24le)
  Stream #0:7 -> #6:0 (pcm_s24le -> pcm_s24le)
Press [q] to stop, [?] for help
size=    8927kB time=00:01:03.48 bitrate=1152.0kbits/s    
video:0kB audio:71415kB subtitle:0 data:0 global headers:0kB muxing overhead -87.499863%
    
por speedyrazor 08.04.2014 / 16:19

2 respostas

0

Você pode tentar ffmpeg -i Feature.mov -map 0:7 -c copy Left_Total.wav e ver se isso funciona?

Precisamos garantir que os dados dentro do fluxo estéreo possam ser usados pelo ffmpeg. Os arquivos QuickTime podem conter informações proprietárias de contêiner / codec que o ffmpeg não pode ler.

    
por 08.04.2014 / 17:47
0

OK, encontrei o problema. No arquivo Quicktime todas as faixas de áudio são nomeadas e sinalizadas como Esquerda, Direita, Centro, LFE, Surround Esquerdo, Surround Direito, Total Esquerdo, Total Direito. O ffmpeg não gosta do fato de que a Pista 7 está marcada como Total Total Esquerdo Esquerdo, quando este é o caso, produz um arquivo que não é reproduzido. Se eu bandeira novamente a Faixa 7 para apenas Esquerda e Direita no Quicktime Pro e salve o arquivo, o ffmpeg é executado e o arquivo é reproduzido corretamente. Existe alguma maneira em volta disso, eu não quero manualmente re-flag a track 7 toda vez antes de rodar o script ffmpeg.

Com o arquivo Quicktime Faixa 7 sinalizado como total total da esquerda total, recebo o abaixo do ffmpeg:

Metadata:
  creation_time   : 2014-03-06 11:25:34
  handler_name    : Apple Alias Data Handler
Stream #0:7(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, downmix, s32, 2304 kb/s (default)

Com o arquivo Quicktime Track 7 sinalizado como Left Right, recebo o abaixo do ffmpeg:

Metadata:
  creation_time   : 2014-03-06 11:25:34
  handler_name    : Apple Alias Data Handler
Stream #0:7(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, stereo, s32, 2304 kb/s (default)

ATUALIZAÇÃO: Mais informações coletadas. Eu decidi reverter a versão do ffmpeg por versão para ver se fazia alguma diferença. O id do problema com o ffmpeg transporta corretamente os nomes / atribuições das faixas do quicktime, portanto, se a faixa for designada como Left Surround, ela será transferida para o arquivo wav ffmpeg makes. A versão ffmpeg-1.1.3 trabalha e exporta os wav estéreos corretos, mas todas as faixas mono exportadas as atribuem "Center". Então ffmpeg versões depois que corretamente atribui os nomes, mas não vai funcionar com total total da esquerda total direita, isso parece quebrá-lo, mas apenas quando exportando para 24 bits! 16 bit funciona bem em todas as versões.

Então, em conclusão ........ O ffmpeg não exportará áudio estéreo de 24 bits a partir de um tempo rápido se a faixa for designada Total Total Esquerdo Esquerdo.

    
por 09.04.2014 / 12:10