2017-05-06


Tuxguitar,recording ALSA RAW sound with ffmpeg,through PulseAudio server

Tuxguitar използва във фонов режим Timidity  за 🎹️ озвучаване на партитурите. Това позволява да се запише звукът 🔊️ от приложението в момента на изпълнение. FFmpeg може да го прихване и съхрани в реално време. Освен начина за експорт към MIDI, това е още един вариант за запазване на аудио потока. При просвирване на нотите Timidity се обръща към (ALSA) Advanced Linux Sound Architecture и наличните soundfonts. Един такъв (freepats) идва при 🎼️ инсталиране на програмата. Препоръчително е да се добавят fluid-soundfont-gm и fluid-soundfont-gs.
Три стъпки са нужни в този случай за "пренасочване" на приложения зависими от ALSA, към звуковия сървър 🎵️ PulseAudio. Така той ще стане устройство по подразбиране за тях PulseAudio/PerfectSetup
През pavucontrol (PulseAudio Volume Control) ще се регулира процесът на записване.
Тази манипулация изисква наличието на по-сериозни хардуерни възможности❗️
alsa-plugin-ffmpeg
alsa-plugin-timidity

1.Създаване на конфигурационен файл asound.conf със следното кратко съдържание:

pcm.default pulse
ctl.default pulse

В Linux терминала:

sudo gedit /etc/asound.conf

2.В настройките за автоматично стартиране на програми трябва да се приложи следната команда, допълнителни аргументи, които подобряват качеството при изпълнение:

timidity -iA -A90,120а -B2,8 -Os
timidity-startup-applications
http://TiMidity-howto.audio По този начин, при всеки старт на системата портовете на Timidity винаги ще бъдат отворени за Tuxguitar. За намаляване на латентността е задължителна опцията -Bx,y. В повечето моменти -B2,8 е достатъчно,където 2 обозначава фрагментите,а 8 битовете на аудио буферния размер. И в двата варианта по-малки показатели ще доведат до по-бързо реагиране в реално време. Флагът -A90,120a определя звукови стойности (volume 90%, drum power 120%, compensation is on).

3.Промяна в timidity.cfg, като се разкоментират и пренаредят подходящите редове:

sudo gedit /etc/timidity/timidity.cfg

Configuration фала трябва да изглежда точно така в края си,
пример ТУК ⏭️

# By default, try to use the instrument patches from freepats:
#source /etc/timidity/freepats.cfg

# alternatively, you can use the fluid-soundfont:
source /etc/timidity/fluidr3_gm.cfg
source /etc/timidity/freepats.cfg
source /etc/timidity/fluidr3_gs.cfg
Това е само част от него.Там където трябва да се направи поправка.Сега всички музикални инструменти в Tuxguitar ще бъдат активни. Друго не трябва да се променя,иначе ще звучи фалшиво.
📛️ За да влязат в сила новите правила е нужен рестарт на Linux системата❗️

Инсталирани пакети,за да работи всичко:

sudo apt-get install ffmpeg timidity timidity-daemon tuxguitar tuxguitar-alsa tuxguitar-oss gnome-alsamixer pavucontrol awesfx fluid-soundfont-gs fluid-soundfont-gm libasound2-dev freepats

Препоръчителни:

sudo apt-get install ubuntu-restricted-extras ubuntu-restricted-addons vlc vlc-plugin-fluidsynth audacious audacity
Ако случайно в терминала за кратко се появи надпис: "Non-monotonous DTS in output stream", но audio файлът звучи добре ,всичко е Ok. Всяко кликване с мишката по време на запис може да предизвика подобно съобщение. Нещо друго, при използване на слушалки 🎧️ е възможно да се появи тъй нареченият "статичен шум".

Метаданни при запис във flac формат:

ffmpeg -f alsa -thread_queue_size 1024 -i pulse Soldier_of_Fortune.flac
Guessed Channel Layout for Input Stream #0.0 : stereo Input #0, alsa, from 'pulse': Duration: N/A, start: 1493739669.566474, bitrate: 1536 kb/s Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s Output #0, flac, to 'Soldier_of_Fortune.flac': Metadata: encoder : Lavf56.40.101 Stream #0:0: Audio: flac, 48000 Hz, stereo, s16, 128 kb/s Metadata: encoder : Lavc56.60.100 flac Stream mapping: Stream #0:0 -> #0:0 (pcm_s16le (native) -> flac (native)) Press [q] to stop, [?] for help size= 20457kB time=00:03:45.70 bitrate= 742.5kbits/s video:0kB audio:20449kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.039581% Exiting normally, received signal 2.

При запис във WAV:

ffmpeg -f alsa -thread_queue_size 1024 -i pulse Soldier_of_Fortune.wav
Guessed Channel Layout for Input Stream #0.0 : stereo Input #0, alsa, from 'pulse': Duration: N/A, start: 1493741497.421830, bitrate: 1536 kb/s Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s Output #0, wav, to 'Soldier_of_Fortune.wav': Metadata: ISFT : Lavf56.40.101 Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, s16, 1536 kb/s Metadata: encoder : Lavc56.60.100 pcm_s16le Stream mapping: Stream #0:0 -> #0:0 (pcm_s16le (native) -> pcm_s16le (native)) Press [q] to stop, [?] for help size= 42936kB time=00:03:48.96 bitrate=1536.2kbits/s video:0kB audio:42936kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000177% Exiting normally, received signal 2.

Published by Nikolay Dimitrov - Saturday ,6 May ,2017

Tags : tuxguitar examples , Tuxguitar sequencer , Timidity ports , Tuxguitar sound , Tuxguitar plugins...

Няма коментари :

Публикуване на коментар

Забележка: Само членове на този блог могат да публикуват коментари.