Как экспортировать аудио-медиа из MOV-файла с помощью QuickTime-API? - PullRequest
1 голос
/ 15 февраля 2010

Я хочу экспортировать аудио-файлы MOV-файла с QuickTime-API и сохранить их в WAV-файл (или что-то подобное). Как я могу это сделать? Я использую Windows XP.

Ответы [ 3 ]

1 голос
/ 10 марта 2010

Извините, если я утверждаю очевидное, но вы должны быть в состоянии достичь этого так же, как описано здесь:

Экспорт каждого кадра в виде изображения из видеофайла (QuickTime-API)

Или вам нужно сделать это неинтерактивным способом?

Редактировать

Чтобы экспортировать аудиофайлы из файла фильма в WAVE неинтерактивно, используя программу экспорта фильмов, используйте следующий код:

"include "QuickTimeComponents.h"
...
// aquire Movie
...
ComponentDescription  desc;
MovieExportComponent  exporter;
char  filename[255];
FSSpec  fsspec;
int flags;

// first we have to find a Movie Exporter capable of eporting the format we want
desc.componentType          = MovieExportType;
desc.componentSubType       = kQTFileTypeWave; // 'WAVE'
desc.componentManufacturer  = SoundMediaType;
desc.componentFlags         = 0;
desc.componentFlagsMask     = 0;

// and create an instance of it
exporter = OpenComponent( FindNextComponent( 0, &desc ) );

// then set up a FSSpec for our output file
sprintf( outfilename, "C:/test.wav" );
c2pstr( outfilename );
FSMakeFSSpec( 0, 0L, (ConstStr255Param)outfilename, &fsspec );
// if you do error handling take care to ignore fnfErr being returned 
// by FSMakeFSSpec - we're about to create a new file after all

// then finally initiate the conversion
flags= createMovieFileDeleteCurFile | movieToFileOnlyExport;
ConvertMovieToFile( movie, 0, &fsspec, kQTFileTypeWave, 'TVOD', 0, 0, flags, exporter );

CloseComponent( exporter );

...
// Clean up
...
0 голосов
/ 10 марта 2010

с mplayer

mplayer.exe -ao pcm:file=output.wav -vo null -vc dummy input.mov
0 голосов
/ 09 марта 2010

ffmpeg легко способен на это и может быть скомпилирован под LGPL при необходимости для коммерческого программного обеспечения. Если вам нужно больше настраиваемых хуков, вы можете использовать libavcodec и libavformat из одного проекта.

...