Відкриття і збереження файлів

Відкрити файли у Kwave можна у той самий спосіб, що і у більшості інших програм. Ви можете

  • вказати список файлів у командному рядку під час запуску Kwave,

  • відкрити порожнє вікно Kwave (для прикладу, за допомогою пункту меню ФайлСтворити... (Ctrl+W)) і перенести до нього файл за допомогою перетягування зі скиданням або

  • відкрити файл за допомогою пункту ФайлВідкрити (Ctrl+O) меню програми

  • або відкрити один із раніше відкрити файлів за допомогою пункту ФайлВідкрити недавні

  • зберегти поточний файл за допомогою пункту ФайлЗберегти (Ctrl+S),

  • зберегти дані зі зміною назви файла за допомогою пункту ФайлЗберегтиЯк... (Shift+Ctrl+S)

  • зберегти усі області, які було позначено, кожну до окремого файла, за допомогою пункту ФайлЗберегтиБлоки...

  • або лише поточний позначений фрагмент за допомогою пункту ФайлЗберегтиПозначене...

Формати файлів, які підтримуються програмою

У Kwave передбачено підтримку файлів у таких форматах:

  • Основним форматом файлів у Kwave є (як можна здогадатися із назви програми) .wav. Цей формат є доволі поширеним у інших операційних системах, а також широко використовується у стільничному середовищі KDE.

  • Другим форматом, підтримку якого передбачено у Kwave є «ASCII». В можете експортувати і імпортувати дані у форматі ASCII. Будь ласка, зауважте, що збережені у цьому форматі дані мають дуже великі розміри! Формат файлів описано нижче.

  • Імпортування даних файлів .mp3 та .mp2 виконується за допомогою бібліотеки libmad, призначеної для декодування даних MP3, у поєднанні з бібліотекою id3lib, призначеною для декодування міток ID3. Кодування даних здійснюється за допомогою бібліотеки lame.

  • Імпортування та експортування Ogg/Vorbis (*.ogg). Докладніше про це тут: http://www.xiph.org.

  • Імпортування та експортування FLAC (*.flac). Докладніший опис тут: http://flac.sourceforge.net/.

  • Крім того, ви можете імпортувати дані з файлів *.8svx (формат файлів звукових даних Amiga IFF/8SVX), *.au (NeXT, звукові дані Sun), *.aiff (формат обміну звуковими даними), *.avr (формат файлів Audio Visual Research), *.caf (формат звукових даних Core), *.nist (формат файлів звукових даних NIST SPHERE), *.sf (Berkeley, IRCAM, формат звукових даних Carl), *.smp (формат Sample Vision), *.snd (NeXT, звукові дані Sun), *.voc (Creative Voice) та файлів у інших форматах за допомогою додатка audiofile.

Перетворення даних до формату .wav та з цього формату

Найкращим способом роботи з іншими форматами, безпосередньої підтримки яких у Kwave не передбачено, є використання зовнішньої програми-перетворювача. Непоганий набір таких програм можна знайти у пакунку SoX. Крім того, ці програми досить добре документовано!

На майбутнє планується підтримка фільтрів імпортування, а також експортування у інших форматах, а також, можливо, фільтр, який використовуватиме визначений користувачем скрипт з викликом зовнішнього фільтра, щоб програма могла читати і/або записувати дані у форматах, підтримку яких не передбачено у SoX (зокрема MP3).

Формат файлів ASCII

Формат ASCII є доволі корисним для наукових та освітніх цілей. Через його простий формат ви можете або створити прості файли власноруч у текстовому редакторі, або скористатися даними, виведеними іншою програмою, для перетворення у формат ASCII. Оскільки формат є по-справжньому простим, у вас не повинно виникнути великих проблем із написанням засобу перетворення. Тому наукові програми використовують певний тип власного формату ASCII для експортування даних.

Формат файла ASCII є доволі простим і керується такими правилами:

  1. На початку файла розташовано блок властивостей, по одній властивості на рядок.

  2. Кожен рядок властивості починається з ##.

  3. Після властивостей розташовано список семплів, по одному семплу на рядок. Якщо у запису декілька каналів, семпли різних каналів відокремлюються комами.

  4. Рядки можуть завершуватися символом переведення каретки і/або символом заповнення рядка (отже, передбачено підтримку файлів DOS). Під час збереження файли завжди міститимуть символ заповнення рядка наприкінці кожного рядка.

  5. Порожні рядки і символи після # вважаються коментарями і не беруться до уваги під час відтворення звуку.

  6. Значення має бути вказано у форматі цілих чисел зі знаком у межах діапазону 24 бітів, тобто у форматі зберігання внутрішніх даних Kwave.

  7. Усі дані після символу # (окрім рядків властивостей, див. вище) вважатимуться коментарями і ігноруватимуться. Порожні рядки також ігноруватимуться.

Ось приклад простого файла ASCII з даними синусоїдальної хвилі довжиною у одинадцять семплів:

Приклад 4.1. вміст файла ASCII з одинарною синусоїдальною хвилею

## 'rate'=44100
## 'tracks'=2
## 'bits'=16
## 'length'=11
## 'Date'='2013-11-09'
## 'Software'='Kwave-0.8.11 for KDE 4.11.3'
  5930496,   5930496 #            0
        0,   8388352 #            1
 -5930752,   5930496 #            2
 -8388608,         0 #            3
 -5930752,  -5930752 #            4
        0,  -8388608 #            5
  5930496,  -5930752 #            6
  8388352,         0 #            7
  5930496,   5930496 #            8
        0,   8388352 #            9
 -5930752,   5930496 #           10
# EOF