Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Замена/установка тегов в выбранных/вложенных MP3
Goto page 1, 2, 3, 4, 5, 6  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 12:17    Post subject: Групповая очистка и переименование тегов mp3 Reply with quote

Нужен скрипт: Суть проблемы - Имеется N-количество mp3 файлов, нужно очистить всю инфу в тегах(id1,id2), а затем взять инфу из имени mp3 на диске каждого очищенного mp3-файла и вставить в тег(id1,id2) по типу "Исполнитель и название трека"(это при условии, что mp3 файлы на диске уже переименованы правильно. Как пример, так С. Михайлов - Жди) и чтобы нажатием кнопки это дело свершилось. Спасибо.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 14, 2016 16:27    Post subject: Reply with quote

sibirnik
1) Юникод в именах есть?
2) Разделитель всегда ' - '?

P.S.: Такие вещи полезней отделять в новый топик.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 16:31    Post subject: Reply with quote

Flasher Я простой User....Но я же написал фонотека выглядит так С. Михайлов - Жди или так Bad Boys Blue - Pretty Young Girl...Но раделитель всегда ' - '...А куда в новый топик и как это сделать сейчас??? Спасибо
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 14, 2016 16:58    Post subject: Reply with quote

sibirnik
При чём тут фонетика? Я про юникодные символы в именах спросил.

Новый топик создаётся кнопкой "Новая тема". Отделить может модератор.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 17:03    Post subject: Reply with quote

Flasher я не понимаю Ваш вопрос "При чём тут фонетика? Я про юникодные символы в именах спросил." Что это такое и как это посмотреть юникодные символы??? У меня Windows 7 и всё стандартно
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 14, 2016 17:42    Post subject: Reply with quote

sibirnik
Тут имеет значение не версия Windows, а локаль. Речь про символы, которые не входят в текущий ANSI диапазон. Это любая иероглифика, восточные алфавиты, разного рода диакритика и т.д. Например, гласные из итальянского: èéùúàạọạòìi̅í. В таблице, начиная с 00C0.

P.S.: Ник пишется сверху или с запятой хотя бы.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 17:53    Post subject: Reply with quote

Flasher Стандартные символы..Ничего другого я в именах не использую...Ни запятых, ни точек в именах mp3 нет, только разделитель " - " пробел - пробел между артист - название трека...Пока вот рыл по инету инфу по этому вопросу - обнаружил, что в плеере AIMP есть редактор тегов и он делает всё, что я хотел(очищает теги и потом вставляет имя из файла), что мне было и нужно. В принципе вопрос можно считать закрытым. Но если кто то сделает скрипт по моему вопросу - буду рад. Спасибо.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Tue Jun 14, 2016 18:10    Post subject: Reply with quote

sibirnik
Ещё раз: ник того, к кому обращаются, обычно пишется сверху (просто вставляется кликом по нику слева от соответствующего поста). С новой строки пишется прочий текст. Отделять его пустой строкой или нет — дело вкуса. Так, как это делалось выше, больше делать не надо, хорошо?

Добавлено спустя 3 минуты:

Flasher
Против отделения темы не возражаю, но надо согласовать заглавие. Если есть идеи — прошу высказать в ЛС.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 14, 2016 18:13    Post subject: Reply with quote

sibirnik
Если вопрос стоял не в кнопке, а в любого рода реализации, то программ, которые занимаются этими вещами фигова гора (Tag&Rename, TagScanner, IDTE, Mp3tag и т.д.), не говоря уже про программы, вставляющие теги из онлайн-баз.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 18:30    Post subject: Reply with quote

Avada
Спасибо...Виноват исправлюсь. Учимся общению..Ну а тему может так обозвать: "Пакетное автоочищение mp3-тегов с последующим заполнением по типу "Артист - Название трека" тегов из имени mp3-файла". Как то так...
Flasher
Вопрос как раз в кнопке и её реализации в TC. А перечисленные программы я знаю, но хочется, чтобы это было в TC.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jun 14, 2016 18:40    Post subject: Reply with quote

sibirnik
Как-то подозрительно. Про программы известно, но всплыл AIMP.
"В принципе вопрос можно считать закрытым." - уже неактуально? Smile
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Tue Jun 14, 2016 18:46    Post subject: Reply with quote

sibirnik wrote:
"Пакетное автоочищение mp3-тегов с последующим заполнением по типу "Артист - Название трека" тегов из имени mp3-файла"

Предлагаемый вариант раза в два превышает предельную для заголовков длину. Поэтому мы тут посоветовались в ЛС и сформулировали покороче. Тема, как видим, уже отделена.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
sibirnik



Joined: 07 Jun 2016
Posts: 84

Post (Separately) Posted: Tue Jun 14, 2016 18:47    Post subject: Reply with quote

Flasher
Всё просто, я AIMP использовал, только на прослушивание музыки и радио...Теперь хоть по настройкам полазил..кучу чего интересного нашёл. Very Happy Спасибо за участие...
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jun 15, 2016 01:57    Post subject: Reply with quote

sibirnik
Code:
'••••••••••••••••••••••••••••••• VBS ••••••••••••••••••••••••••••••
' Запись MP3-тегов [Название], [Альбом], [Исполнитель], взятых из
' базовых имён файлов по шаблону: [Альбом]-[Исполнитель]-[Название]
'
' Примечание: 1) Элементы шаблона могут отсекаться слева направо.
' 2) Если слева имени имеется номер, то он и станет соотв. тегом.
'
' 2 варианта ключей:
'   1) /l:%WL (приоритетный - только для выбранных в панели файлов)
'   2) /p:[<Путь к каталогу с MP3-файлами>]
'      /r:<выкл (умол.)/вкл обработку всей структуры каталога: 0/1>
' Вспомогательный ключ предварительной очистки всех тегов: /d:1
'
' Примеры:   /l:%WL   |   /p:"%P" /r:1   |   /d:1 /p:"%P"
'
Option Explicit
'••••••••••••••••••••••••• Пути к утилитам ••••••••••••••••••••••••
Const ID3Edit = "%COMMANDER_PATH%\Utils\Tags\ID3\id3.exe"
Const TagEdit = "%COMMANDER_PATH%\Utils\Tags\Tag\Tag.exe"
'••••••••••••••••••••••••••••••••••••••••••••• Автор: Flasher © •••

Dim Del, Folder, Sec, Recurse, Regexp, WMP, WSH, ShA, FSO, List, F, Check
Const Title = " Заполнение тегов в MP3      "
With WScript.Arguments.Named
  If .Count = 0 Then WScript.Quit
  If .Exists("d") Then Del = .Item("d")
  If .Exists("l") Then
    List = .Item("l")
  Else
    If .Exists("p") Then Folder  = .Item("p") Else _
    MsgBox  "Укажите ключ /p:<Путь к папке с MP3> !", 4144, Title : WScript.Quit
    If .Exists("r") Then Recurse = .Item("r")
  End If
End With : Set Regexp = New Regexp
Set WSH = CreateObject("WScript.Shell")
Set ShA = CreateObject("Shell.Application")
Set FSO = CreateObject("Scripting.FileSystemObject")
If Folder <> "" And Not FSO.FolderExists(Folder) Then _
MsgBox "Путь каталога с MP3-файлами указан неверно!", 4144, Title : WScript.Quit
For Each F in Array(ID3Edit, TagEdit)
  If Not FSO.FileExists(WSH.ExpandEnvironmentStrings(F)) Then MsgBox _
  "Укажите верный путь к " & FSO.GetFileName(F) &"!", 4144, Title : WScript.Quit
Next : Regexp.Pattern = "^0*(\d+) *[\.\-]+ *"
If List <> "" Then
  Set List = FSO.OpenTextFile(List,,,-1)
  Do : F = List.ReadLine
    If FSO.FileExists(F) And _
    LCase(FSO.GetExtensionName(F)) = "mp3" Then FFile F : Check = 1
  Loop Until List.AtEndOfStream
Else FFolder Folder End If
If Check = 1 Then  MsgBox "Выполнено!", 4160, Title _
Else MsgBox "MP3 файлы не обнаружены!", 4144, Title

Sub FFolder(Dir)
  Set Dir = ShA.NameSpace(Dir)
  Dim Items : Set Items = Dir.Items
  Items.Filter 8384, "*.mp3"
  If Items.Count Then
    For Each F in Items : FFile   F.Path : Next : Check = 1
  End If
  If Recurse = 1 Then
    Items.Filter 8352, "*"
    For Each F In Items : FFolder F.Path : Next
  End if
End Sub

Sub FFile(File)
  Dim BN, Num, Track, Album, Artist, Tags, Ln
  BN = Trim(FSO.GetBaseName(File)) : Num = ""
  Track = "" : Album = "" : Artist = ""
  With Regexp
    If .Test(BN) Then Set Ln = .Execute(BN)(0) : Num = Ln.Submatches(0)
  End With : If IsNumeric(Num) Then BN = Mid(BN, Len(Ln) + 1)
  Tags = Split(BN, "-")
  Select Case Ubound(Tags)
    Case 0 Track  = Trim(Tags(0))
    Case 1 Artist = Trim(Tags(0)) : Track  = Trim(Tags(1))
    Case 2 Album  = Trim(Tags(0)) : Artist = Trim(Tags(1)) : Track = Trim(Tags(2))
  End Select
  If Del = 1 Then WSH.Run """" & TagEdit & """ --remove """ & File & """", 0, True
  WSH.Run """" & ID3Edit & """ -2 -natl """ & Num & """ """ & Artist & _
  """ """ & Track & """ """ & Album & """ """ & File & """", 0, True
  WSH.Run """" & TagEdit & """ --track """ & Num & """ --artist """ & Artist & """" &_
  " --title """ & Track  & """ --album """ & Album & """ """ & File & """", 0, True
End Sub
Скачать ID3 и Tag.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Fri Jun 24, 2016 13:35; edited 11 times in total
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Wed Jun 15, 2016 02:43    Post subject: Reply with quote

Flasher
Правильно понимаю, что это вариант без поддержки юникода?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2, 3, 4, 5, 6  Next
Page 1 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group