Я ищу QTAtomContainer в заголовочных файлах

Множество быстрых примеров обращаются к QTAtomContainer для установки параметров экспорта фильма.

У меня есть весь этот рабочий код с древних времен. Сейчас я использую xcode 4, и компилятор не может найти QTAtomContainer. Согласно документации Apple, это должно быть объявлено в Movie.h. Но нет QTAtomContainer. Кто-нибудь знает, куда Apple переместила эту декларацию или какой заголовок мне не хватает?

2 ответа

Решение

Я наконец-то нашел проблему. В Quicktime много символов определены! ТОЛЬКО! если ваш xcode-проект компилируется в 32-битном режиме PLAIN. Универсальные двоичные файлы, использующие "Standard (32/64 bit-Intel)" или просто 64-bit, никогда не найдут эти символы. ("Стандартный (32/64 бит-Intel)" является настройкой по умолчанию фактического компилятора серии xcode 4. ИМХО Quicktime будет / должен измениться. По умолчанию Lion будет поставляться с 64-битной версией)

В "QuickTime/QuicktimeComponents.h" вы найдете следующую строку:

#if !__LP64__

Это означает, что если 64-битный код определен хотя бы один раз, компилятор не найдет символы

QTAtomContainer
MovieExportGetSettingsAsAtomContainer
MovieExportComponent
canMovieExportFiles

которые отсутствовали до сих пор. Теперь я могу успешно использовать пример для установки параметров VideoQuality в Quicktime с помощью ключа QTMovieExportSettings, который вы можете найти здесь:

http://www.cocoadev.com/index.pl?QTMovieExportSettings

Я использую следующие заголовки:

#import <QuickTime/QuickTime.h>  
#import <QuickTime/Movies.h>  
#import <QTKit/QTKit.h>  

Эти заголовки неявно включают "QuickTime/QuicktimeComponents.h"

Надеюсь, я смогу помочь кому-то еще, кто боролся с этой проблемой.

Привет

Джек

Спасибо за это! Четыре года спустя, и я занимаюсь разработкой для OS X 10.7, это, я уверен, сэкономило мне много времени.

Другие вопросы по тегам