lalsnivts / multimedia_corpus

multimedia corpus by Timofey Arkhangelskiy
1 stars 0 forks source link

Формирование промежуточного файла выгрузки из файла *.eaf #3

Open gisly opened 8 years ago

gisly commented 8 years ago

Нужно написать скрипт, который по файлу *.eaf строит файл следующей структуры (в скобках просто комментарии):

{
   "original_filename":"исходное имя файла",
   "video":"имя видеофайла, если есть",
   "audio":"имя аудиофайла, если есть",
   "sentences":[
      (на каждое предложение следующая структура):{
         "original":"текст предложения в графике оригинала (кетской)",
         "rus":"русский перевод предложения",
         "start_ms":начало предложения (в миллисекундах),
         "stop_ms":конец предложения (в миллисекундах),
         "words":[
            (на каждое слово следующая структура):{
               "word":"текст слова из fonWord",
               "morphemes":               (на каждую морфему следующая структура):[
                  {
                     "morpheme":"текст морфемы",
                     "gl":"глосса",
                     "morpheme_type":тип морфемы (число: 0 - корень, 1 - префикс, 2 - суффикс, 3 - клитика)
                  }
               ]
            }
         ]
      }
   ]
}

Выдуманный пример (отступы просто для удобочитаемости, их можно не делать):

{
   "original_filename":"Kel05_AbdullaevaEP_bear.eaf",
   "video":"Kel05_AbdullaevaEP_bear.mp4",
   "audio":"Kel05_AbdullaevaEP_bear.wav",
   "sentences":[
      {
         "original":"Hi, how are you?",
         "rus":"Привет, как дела?",
         "start_ms":1000,
         "stop_ms":2000,
         "words":[
            {
               "word":"привет",
               "morphemes":[
                  {
                     "morpheme":"привет",
                     "gl":"hi",
                     "morpheme_type":0
                  }
               ]
            },
            {
               "word":"как",
               "morphemes":[
                  {
                     "morpheme":"как",
                     "gl":"hi",
                     "morpheme_type":0
                  }
               ]
            },
            {
               "word":"дела",
               "morphemes":[
                  {
                     "morpheme":"дел",
                     "gl":"hi",
                     "morpheme_type":0
                  },
                  {
                     "morpheme":"а",
                     "gl":"PL",
                     "morpheme_type":2
                  }
               ]
            }
         ]
      }
   ]
}
gisly commented 8 years ago

Замечания по скрипту:

  1. переделай, пожалуйста, названия элементов, чтобы было так же, как в примере
  2. сейчас есть элемент fon, а в нем перечислены morphemes. Нам важна такая структура, как в примере, чтобы и глоссы вычленялись,