"Evento de depuración" de Premiere Elements: error de fotograma clave

Encontré un error probable en Premiere Elements 10 y, afortunadamente, también encontré una solución, por lo que escribí mi propia respuesta a continuación. Pero como no he podido resolver el problema subyacente, me encantaría recibir ideas adicionales sobre cómo solucionar el problema. Ahora aquí está la pregunta:

¿Cómo puedo recuperar un archivo de proyecto de Premiere Elements (.prel) que no se puede abrir debido al siguiente error:

Premiere Elements Debug Event
Premiere Elements has encountered an error:
[d:\pre\mediacore\mediafoundation\api\inc\Keyframe/Keyframe.h-142]

Este error parece ocurrir esporádicamente en versiones de Windows fuera de EE. UU. No hay ninguna indicación previa durante la sesión de edición de que algo pueda estar mal (los guardados y los guardados automáticos funcionan bien), pero en el próximo reinicio, el proyecto no se puede abrir. Otros proyectos parecen no verse afectados.

De acuerdo con otros usuarios que han visto el mismo error (Google para "fotograma clave de depuración de estreno" y encontrará algunos), podría haber alguna conexión con la introducción de menús de DVD en el proyecto, pero aquí solo estoy especulando.

Respuestas (2)

El análisis de los archivos que no se abren en contraste con los que se abren bien muestra un problema evidente: todas las líneas del project.prelarchivo (que es solo un archivo XML) donde debería haber números decimales <StartKeyframe>o <Keyframe>etiquetas están dañadas. Ejemplo:

Versión correcta:

<StartKeyframe>-91445760000000000,100.,0,0,0.,0.,0.,0.</StartKeyframe>

Versión defectuosa:

<StartKeyframe>-91445760000000000,100,,0,0,0,,0,,0,,0,</StartKeyframe>

Por lo tanto, aparentemente, Premiere Elements en algún momento se confundió con la configuración regional europea y decidió guardar los valores decimales usando el separador decimal europeo (coma) en lugar del separador decimal estadounidense (punto). Por supuesto, entonces es imposible abrir ese archivo correctamente nunca más.

Afortunadamente, al menos en mis pruebas, solo hay tres tipos de valores decimales en los .prelarchivos:

  1. flotantes enteros: 1., 0.,100.
  2. el valor único0.5
  3. flotadores de doble precisión: 0.16666666666666666,1.000000000000000000000000

Esto hace posible arreglar el archivo usando un reemplazo de expresión regular. Si su editor admite expresiones regulares de estilo Perl, puede buscar

,(?:(?=[,<]|\d{10})|(?<=\b0,)(?=5\b))

y reemplazar todo con

.

Esto reemplazará todas las comas decimales erróneas (es decir, aquellas que van seguidas de otra coma, un paréntesis angular de apertura, una fracción decimal de al menos 10 dígitos o el número 5 (pero solo si esa coma está precedida por el único dígito 0) ) con punto decimal.

Después de eso (¡asegúrese de hacer una copia de seguridad de su .prelarchivo antes de hacer esto!), el archivo se puede abrir de nuevo correctamente. Sin embargo, en cuanto se vuelve a guardar, se vuelve a introducir el error.

Por lo tanto, si alguien tiene una idea de cómo solucionar este problema en lugar de arreglarlo con una expresión regular inestable, le estaría muy agradecido.


Una pista sobre cuál podría ser el problema subyacente: en el momento en que se introdujo el error, Premiere abrió espontáneamente una pequeña ventana de diálogo que decía (en alemán) algo así como

"Premiere Elements is updating a component. Information is being transmitted..."

Mientras se mostraba esta ventana, aparecieron dos cuadros UAC de Win7 que me pedían que permitiera que el servidor de registro de Windows actualizara mi sistema. Los comandos reales para los que necesitaba aprobación eran

C:\Windows\System32\regsvr32.exe /s 
   "C:\Program Files\Adobe\Adobe Premiere Elements 10\mc_dec_mpa_ds.ax" 
   "C:\Program Files\Adobe\Adobe Premiere Elements 10\mc_dec_mp2v_ds.ax"

y

C:\Windows\SysWOW64\regsvr32.exe /s 
   "C:\Program Files\Adobe\Adobe Premiere Elements 10\32\mc_dec_mpa_ds.ax" 
   "C:\Program Files\Adobe\Adobe Premiere Elements 10\32\mc_dec_mp2v_ds.ax"

(saltos de línea insertados para mayor claridad).

La primera vez, permití estas acciones (que en retrospectiva puede haber sido una mala idea...); ahora esto sucede cada vez que intento abrir un archivo de proyecto "parcheado". No importa si ahora lo permito o lo rechazo; de cualquier manera, Premiere escribe un archivo de proyecto dañado cuando guardo mi proyecto.

Esa expresión regular es brillante: ¡me ahorró mucho tiempo, cuando en realidad no tenía ninguna esperanza de recuperar este proyecto! Aunque no tengo idea de qué causó que el proyecto se guardara de esa manera, eso sucedió solo una vez para mí.
Te daría un precio enorme por lo que hiciste. Esto es simplemente notable.

1. Recuperar archivos rotos

Encontré esta aplicación en línea muy útil.

http://www.vibait.com/software/premiere-fix-keyframe.h-142/

Simplemente cargue su archivo de Premiere Elements y obtendrá una versión fija a cambio. Guárdelo en su disco y ábralo.

Con un archivo recibí mensajes de error como este varias veces:

Error de análisis en la línea 1431. Esperaba 8 valores, obtuvo 9

Valor anterior: 116050644638,87,5,0,0,25,791250419642971,0,16666666666666666,1,2731148504048133,0,16666666666666666

Nuevo valor: 116050644638,87,5,0,0,25.791250419642971,0.16666666666666666,1.2731148504048133,0.16666666666666666

Usando un editor, busqué algunos de los números mencionados en el archivo XML y simplemente borré el elemento XML (eliminé todos los números).

2. Solucionarlo (es decir, una solución alternativa)

Algunas páginas web mencionaron que los formatos numéricos de las configuraciones regionales (especialmente , y .) pueden estar involucrados en este problema. Después de configurar "." como el separador decimal no volví a tener este problema.