2010-08-25 3 views
0

Как я могу замедлить аудиофайл (только для воспроизведения) в Mac OS X, но сохранить хорошее качество? Я пытался использовать QTKit для замедления звука, но качество плохое.Уменьшить скорость воспроизведения?

Edit: Я использую этот код:

QTMovie *audio = [[QTMovie alloc] initWithFile:mediaClipURL error:&error]; 
// ... (error handling) 
[audio setRate:0.5]; 
+0

Измените свой вопрос, включив код, который вы использовали. Кроме того, что вы подразумеваете под «качеством не очень хорошо»? –

+0

Я не могу описать качество звука. Это не так хорошо, как могло бы быть. – WetFish

ответ

0

аудио редактор Audacity http://audacity.sourceforge.net/ обладает эффектом, который увеличивается на уменьшается темп без изменения тона, и с открытым исходным кодом. Так что это может быть полезно для некоторых применимых кодов.

1

Как «догадаться», я также подозреваю, что вы хотите «регулировку скорости без наклона тона». Это довольно просто обойтись без стороннего кода. Вы можете установить атрибут QTMovieRateChangesPreservePitchAttribute и просто настроить скорость фильма:

QTMovie = [[QTMovie alloc] initWithURL:mediaClipURL error:nil]; 
if (movie) 
{ 
    // Set preserve-pitch attribute 
    [movie setAttribute:[NSNumber numberWithBool:YES] forKey:QTMovieRateChangesPreservePitchAttribute]; 
    [movie setRate:0.5]; 
} 
// ... 

Примечания: Чем дальше от 1,0 вы, тем больше искажения вы собираетесь иметь. На самом деле этого не происходит. Образцы будут повторяться при медленном движении на одном и том же шаге, и образцы будут очень быстро срезаны при быстром ходу на одном и том же шаге. Это факт обработки звука - чем сложнее эффект, тем больше искажений вы в конечном итоге получите.

+0

Может быть несколько улучшающих время эффектов, доступных через сторонние аудиоустройства (есть справедливая индустрия, основанная на том, чтобы делать это для образцов), но принцип все еще стоит. – JulesLt

Смежные вопросы