webdevqa.jp.net

iTunesが変換されたMP3をライブラリに追加しないようにするにはどうすればよいですか?

ITunesを使用して購入した曲からMp3ファイルを作成すると、iTunesもそれらをライブラリに追加し、2回取得しました。そもそもiTunesが変換されたMp3をライブラリに追加しないようにするにはどうすればよいですか?

編集:
Mac OSXでiTunesを使用しています

EDIT2:
Chris Johnsenanswer は非常に優れており、賞賛に値します。しかし、私も試しました このスクリプト クリスが私に指摘しました、そしてそれはさらに良いです、そして私はこれからこれを使います。皆さんありがとう。

4
Tim Büthe

変換されたトラックをiTunesライブラリに一時的に入れても問題がない場合は、AppleScriptを使用してトラックを変換し、変換されたトラックへの参照を削除して、最後に変換されたファイルを移動できます。どこでも好きなところ。

プレーンなAppleScriptにはスムーズなUIの機能はほとんどありませんが、次のスクリプトはあなたが望むことをするかもしれません。それをScript Editor(またはSnowyでは(= /// =)AppleScript Editor)に貼り付け、「アプリケーションバンドル」(「application」雪に覆われた)。これを使用するには、iTunesで変換設定(インポート設定)を構成し、iTunesでいくつかのトラックを選択します)、保存したアプリケーションにフォルダをドロップします。新しく変換されたファイルは、ドロップされたフォルダー内の既存のファイルを上書きすることに注意してください(名前が同じ場合)。上書きが必要であることが確実でない限り、空のフォルダを削除することをお勧めします。プロセスからいくつかのID3v2タグを取得することもあります(私はいくつかのテストで行いましたが、それはiTunesが何をするかによって異なります)。

on run
 display dialog "Drop a folder on this application to convert iTune's selected tracks and place them the dropped folder." & return & return & "The converted files will be whatever is selected in iTunes “Import Settings”." with title "About"
 return

 -- Test invocation:
 "/tmp/convert_to_external"
 alias POSIX file result
 open {result}
end run
on open theItems
 if length of theItems is 0 then
  display dialog "No items dropped? Only a single, plain folder should be dropped." with title "Error: Drop Only a Single Folder"
  return
 end if
 if length of theItems is greater than 1 then
  display dialog "Too many items have been dropped. Only a single, plain folder should be dropped." with title "Error: Drop Only a Single Folder"
  return
 end if
 set theItem to first item of theItems
 set info to info for theItem
 if not folder of info or package folder of info then
  display dialog "“" & POSIX path of theItem & "” is not a plain folder. Only a single, plain folder should be dropped." with title "Error: Drop Only a Single Folder"
  return
 else
  |convert iTunes selection into folder|(theItem)
 end if
end open
to |convert iTunes selection into folder|(folderRef)
 try
  do Shell script "test -d " & quoted form of POSIX path of folderRef
 on error m
  display dialog "Destination (" & destinationForShell & ") not accessible?" & return & m
  return
 end try

 tell application "iTunes"
  set trackList to selection
  repeat with selectedTrack in trackList
   try
    set convertedTrack to my convertTrack(selectedTrack)
    set convertedFile to location of convertedTrack
    my deleteTrackReference(convertedTrack) -- only delete the iTunes ref, not the track's file
    my moveItemToFolder(convertedFile, folderRef)
   on error m
    tell me to display dialog m with title "Error During Conversion/Removal/Move" -- giving up after 30
   end try
  end repeat
 end tell
end |convert iTunes selection into folder|
to convertTrack(aTrack)
 if class of aTrack is list then error "Must pass a single track."
 using terms from application "iTunes"
  set questionTimeout to 10
  set conversionTimeout to 600
  display dialog "About to start conversion of “" & name of aTrack & "”. Select a timeout in seconds for the conversion (conversion will auto-start in " & questionTimeout & " seconds):" default answer conversionTimeout with title "Conversion Time Limit" giving up after questionTimeout
  try
   set conversionTimeout to (text returned of result) as number
  end try

  set convertedTrack to missing value
  with timeout of conversionTimeout seconds -- conversion may take longer than the deafult 120 second AppleEvent RPC timeout
   try
    set convertedTrack to convert aTrack
   on error
    error "Error while converting track."
   end try
  end timeout
  if convertedTrack is not missing value then return first item of convertedTrack
  error "Abandoning track conversion after timeout." & return & m
 end using terms from
end convertTrack
to deleteTrackReference(aTrack)
 try
  tell application "iTunes" to set mainLibrary to ¬
   first library playlist of (first source whose kind is library)
 on error
  error "Unable to find main library playlist object."
 end try
 using terms from application "iTunes"
  try
   set convertedTrackInMainLibrary to ¬
    (first track of mainLibrary whose database ID is (get database ID of aTrack))
  on error
   error "Unable to find track object in main library playlist."
  end try
  try
   delete convertedTrackInMainLibrary -- deletes the reference, not the actual file
  on error
   error "Unable to delete track from main library playlist."
  end try
 end using terms from
end deleteTrackReference
to moveItemToFolder(itemRef, folderRef)
 set itemPath to POSIX path of itemRef
 set folderPath to POSIX path of folderRef
 try
  do Shell script "mv " & quoted form of itemPath & " " & quoted form of folderPath
 on error m
  error "Unable to move item (" & itemPath & ") to destination (" & folderPath & "):" & return & m
 end try
end moveItemToFolder
3
Chris Johnsen

私の知る限り、これを行う方法はありません。代わりに、QuicktimeやAudialHubなどの別のアプリを使用して変換を行うことをお勧めします。元のファイルを保持しますか、それとも新しいファイルをiTunesに保持しますか?スマートプレイリストを作成して、いずれかを1つのリストにまとめ、ライブラリからすべてを1つのステップで削除できます(OS Xではopt-delete)。

2
Dov

これを行う頻度に応じて、プレイリストをMP3ディスクにエクスポートできます。毎回ディスクを書き込む必要がありますが、書き換え可能であるとその問題が解決する場合があります。

ステップ:

1)必要な曲のプレイリストを作成します

2)プレイリストを右クリックして、[プレイリストをディスクに書き込む]を選択します

3)表示されるオプションで、MP3 CDを選択し、[書き込み]をクリックします。

4)曲はMP3形式でディスクに書き込まれます。

5)Finderにマウントされたら、ディスクから曲を取得します。

CDを焼くというやや面倒な手順が必要ですが、サードパーティを必要とせず、iTunes内の機能です。

0
Paulo

作成したMP3ファイルを、iTunesが新しいコンテンツをスキャンするツリーの外にある別のディレクトリに移動します。

プライマリオーディオ形式としてMP3以外のものを使用していると想定しているため、バッチジョブを作成して、MP3コンテンツをiTunesディレクトリツリーから別の場所に移動します。

たとえば、これを行うにはROBOCOPY.EXEを使用します。

c:\windows\robocopy c:\iTunes-path c:\mp3-files *.mp3 /s /zb /mov /xo

このコマンドは、ターゲットがすでに存在し、ソースが古い場合を除いて、すべてのサブディレクトリ内のMP3ファイルを移動します。 /mot:5を最後に追加して、5分ごとに繰り返すようにすることができます。