He resuelto el problema, y no fue bonito.
Se inicia con iPhoto 8 ('09) en mi iMac. Esta biblioteca había un montón de "referencia" de las fotos, es decir, fotos de whos archivos de imagen estaban fuera de la carpeta de la Biblioteca de iPhoto. En iPhoto 8 esto fue manejado por la creación de un OS X alias en el archivo de los Originales de la carpeta dentro de la carpeta de la Biblioteca de iPhoto.
Entonces quise mover mi biblioteca a mi nuevo MacBook Air con Lion y iPhoto 9 ('11). Olvidan que yo había archivos que se hace referencia en mi biblioteca he copiado la carpeta de la Biblioteca de iPhoto de mi iMac a mi MacBook Air como el soporte técnico de Apple docs decir (que no menciona nada acerca de los archivos de referencia). Por supuesto, los archivos de referencia no se han copiado a la MacBook, pero todo parecía estar bien.
Inicio iPhoto 9 en mi MacBook y actualizaciones de la biblioteca. No puede encontrar la referencia a las imágenes de curso, pero no hay ninguna advertencia ni nada. iPhoto 9 tiene un tipo totalmente diferente de la carpeta y la estructura de base de datos. Toda la información que necesita acerca de dónde encontrar una imagen que se encuentra ahora en la Biblioteca.apdb SQlite archivo de base de datos en la Biblioteca de iPhoto/Base de datos/apdb/. En que db existe una tabla llamada RKMaster que almacena la información acerca de cada foto. RKMaster tiene una columna llamada imagePath que es donde la ruta de acceso completa del archivo de imagen original se supone que debe ir. Sin embargo, desde mi referencia a las imágenes no estaban disponibles durante la actualización de la biblioteca de iPhoto se acaba de establecer todos estos a Masters/<image file name>
, y se almacena la información de alias de la iPhoto 8 de la base de datos en una columna BLOB llamado fileAliasData. Cuando yo trabajaba fuera de la referencia a los archivos que faltaban, he copiado a mi MacBook, y el iPhoto fue milagrosamente capaz de encontrar de nuevo a causa de la información en la fileAliasData columna en la base de datos.
Sin embargo, iTunes y otras aplicaciones que enlace a la biblioteca de iPhoto no tienen acceso a la Biblioteca de iPhoto de la base de datos directamente. Ellos utilizan un archivo llamado AlbumData.xml en la carpeta de la Biblioteca de iPhoto. iPhoto 9 re-crea este archivo cada vez que se cierre iPhoto. Por desgracia, lo que se utiliza para construir la plena ruta de la imagen para poner en el archivo XML es lo que se almacena en el imagePath columna en la base de datos, que por ahora es básicamente basura. iPhoto puede ver todos los archivos de ACEPTAR, pero nada más puede.
La única solución fue cuidadosamente solucionar el RKMaster registros para todos mis archivos de referencia por lo que señalaron el lugar correcto. Aproveché la oportunidad para copiar los archivos a la carpeta de la Biblioteca de iPhoto en el proceso, de modo que ahora todos mis imágenes están en la carpeta de la Biblioteca de iPhoto. Esto implicó la configuración de fileIsReferenced = 0
y fileAliasData = null
para los registros también.
Ahora por fin tengo todo funcionando de nuevo, pero era muy largo y tedioso proceso que sólo se puede hacer con un poco de conocimiento de bases de datos SQL. Apple realmente debe advertir a la gente acerca de este problema potencial cuando se asesora sobre cómo mover tu Biblioteca de iPhoto.