No se pueden convertir archivos m4a a m4b con AppleScript

Yo uso Make Bookmarkable para convertir algunos archivos de audio al formato de marcador de m4b. Sin embargo, desde macOS High Sierra, existe un problema al ejecutar el script con un lote de archivos.

tell (add loc) aumenta --> error number -1700 que el número -1700 no se puede convertir en item

La conversión ocurre pero luego deja de ejecutarse, lo que significa que los archivos se deben convertir uno por uno. No estoy familiarizado con AppleScript pero sospecho que el problema puede deberse a cambios en iTunes.

mp4 , m4a y m4b son extensiones de nombre de archivo alternativas para el formato de contenedor MPEG-4 Parte 14. Para “convertir” un archivo m4a a m4b , simplemente cambie el nombre del archivo. Eso es lo que hace el guión al que has vinculado.

La opción de recordar la posición de reproducción anterior en iTunes está habilitada de forma predeterminada para archivos con una extensión m4b pero no para archivos con una extensión m4a , pero también puede habilitarse para archivos con una extensión m4a , por lo que no son menos “marcable”. Simplemente marque la checkbox “Recordar posición de reproducción” en la pestaña “Opciones” en la ventana de información. (Creo que las versiones anteriores de iTunes no tenían esa checkbox, que probablemente sea la razón por la que se creó originalmente el script al que se vinculó).

iTunes también muestra los archivos m4b en audiolibros de forma predeterminada, pero un archivo m4a se puede enumerar como un audiolibro configurando “tipo de medio” en “Audiolibro” en la pestaña “Opciones” de una ventana de información.

Editar: la secuencia de comandos a continuación cambia el nombre de los archivos de las pistas seleccionadas en iTunes y cambia las propiedades de media kind y de bookmarkable .

 tell application "iTunes" repeat with t in (get selection) set bookmarkable of t to true set media kind of t to audiobook set l to location of t tell application "Finder" set f to file l set name of f to (text 1 thru -2 of (get name of f)) & "b" end tell end repeat end tell