Аналоговые сумматоры

  • Автор темы Автор темы sunet
  • Дата начала Дата начала
Originally posted by P00H
эт ты что то загнул, запишика через аналог микс с уровнем -60db и потом его нормализуй, сомневаюсь что ты кроме шума ещё что нибудь услышишь, а в 32 бита делаем миксдаун например -96db, потом нормалайз и слышим оригинал без шумов и искажений и прочих потерь.
-90 наскока я помню это тишина ;)
шумы - отдельный вопрос, тут уже качество микшера и конверторов сильно влияет, но это все лечится
кстати для хорошего дорогого аналога динамический диапозон в 120 и больше децибел - вообще не проблема, а хорошая цифра может похвастаться только 110...

то, что шумов в цифре не будет - оно и понятно, на то она и цифра, а вот насчет потерь я бы не торопился так говорить ;)

кстати в 32float указаная фишка пройдет, будет просто оффсет экспоненты, в мантиссе ничего не изменится, но если добавить какой-нить сигнал по нулю, а потом его же вычесть и нормализовать - то результат будет совсем другим
 
Originally posted by Vasfed


то, что шумов в цифре не будет - оно и понятно, на то она и цифра, а вот насчет потерь я бы не торопился так говорить ;)

Что Вы под потерями понимаете?


кстати в 32float указаная фишка пройдет, будет просто оффсет экспоненты, в мантиссе ничего не изменится, но если добавить какой-нить сигнал по нулю, а потом его же вычесть и нормализовать - то результат будет совсем другим

При чем здесь нормализация? Важно где этот "шум" находится.
 
Vasfed
давайте уже или не на пальцах (возьмите несколько отсчётво на бумажке посчитайте на калькуляторе раз в машинном предствалиении флоата разбираетесь =) )
или вообще не надо.
а то складывается ощущение правильности вещаемого...
таких разговоров уже было миллион, давайте практически у вопросу подходить =)
 
Originally posted by Rustami
Что Вы под потерями понимаете?
потери точности воспроизведения исходного сигнала, если хотите научнее, то разницу ковариации исходного сигнала с полученым и дисперсии исходного.

При чем здесь нормализация? Важно где этот \"шум\" находится.
про float я имел в виду то, что из-за особенностей этого float'а опускание и обратное поднимание гейна не сказывается на сигнале
а для целых чисел, коими являются семплы в 16,24 и целочисленном 32: 99/2 = 49 * 2 = 98, т.е. операция проходит с потерями т.к. 98 как нетрудно заметить, не равно исходному 99

для float тоже можно привести похожие примеры, но они будут на порядок сложнее
 
вот вы я понимаю программист, с кажите - сложить 100 24-битных отсчёта - это сложная математическая операция?
(ведь как я понимаю при выводе этих 100 потоков через цап-ы, непосредственно на цап подаётся поток 24-битный, так ведь?)
 
Originally posted by buncker
Vasfed
давайте уже или не на пальцах (возьмите несколько отсчётво на бумажке посчитайте на калькуляторе раз в машинном предствалиении флоата разбираетесь =)  )
или вообще не надо.
а то складывается ощущение правильности вещаемого...
таких разговоров уже было миллион, давайте практически у вопросу подходить =)
ощущение правильности оттого и появляется, что все правильно вещается ;)

просто тут немного религиозный вопрос, оттого и трудно сходу согласиться

ЗЫ, резюме того что доказываю: можно вообще не париться по поводу суммирования до 16 16-битных треков (8 24-х) при 32 битном суммировании, а если нужно больше - то расходы на аналоговое суммирование уже начнут потихоньку окупаться, причем если каналов совсем много (32 и больше) - то аналог это выход
с другой стороны производители софта не дремлют с учетом роста скорости компоы и 80-битная внутренняя обработка не такая уже и редкость...
 
sunet:
о переходе на применение аналоговых сумматоров для сведения.
djangel:
пусть меня тут убьют, но я суммирую через MicroMix 8S от Лонга. Мое, пусть субъективное, но все же очень стойкое мнение, что лучше миксдауна. Правда конверторы Apogee, а не Delta1010 +
Частенько посещают подобные мысли,останавливает следуещее:
1.Вижу в этом смысл,только в случае применения лампового пульта.
2.Желательно,чтобы в нем присутствовала хотя б минимальная частотная коррекция-низ,середина ,верх.
3.Стоимость такого фирменного прибора,для меня просто нереальна,учитывая,что хотелось бы иметь минимум 16 стереопар.
4.Кгда-то давно имел дело с ламповой техникой,-если разрабатывать и собирать это дело самому,то и в штуку баксов врядли уложишься,да и то с сомнительным результатом.
buncker:
таких разговоров уже было миллион, давайте практически у вопросу подходить
Полностью согласен!
Кто еще работает подобным образом-поделитесь опытом!!!
Тема,думаю, интересная.
 
Originally posted by buncker
вот вы я понимаю программист, с кажите - сложить 100 24-битных отсчёта - это сложная математическая операция?
(ведь как я понимаю при выводе этих 100 потоков через цап-ы, непосредственно на цап подаётся поток 24-битный, так ведь?)
мат. операция несложная, но ошибок накопится очень много, т.к. каждые 8 сложений нам прийдется делать минимум одно деление, а деление это уже с куста ошибки + оно сильно дольше сложения делается (в популярных терминах мегагерц - сложения можно делать на каждом такте процессора, а деление занимает уже несколько тактов, кстати для этого АЛУ в свежих процах работает на удвоенной частоте проца)

а в аналоге деление производится без ошибок и без тормозов - просто резистор ставим и готово...
 
Vasfed
сорри, я программист немножнко, чуток знаю ассемблер. и когда говорят что надо сложить хоть тыщщу 24-битных числа, и это кушает процессор.
гм...
эээ... /задумчивость/

т.е я вполне вам поверю (уж в этом смысле религиозности у меня нет =) ) если вы обьясните это по шагам, подробно.
Пока всё что говоится - слова пустые.
на любом процессора сэмулировать хоть 128-битное сложение, проблеммы нет (надеюсь хоть вам это не надо доказывать, или вы всёж просто книжки читалои только а сами код не писали?)
Если вы скажете что "в регистр результат не поместится", то останется только развестируками. Это как же мы тогда на Z80 складывали 32-битные числа то.. уххх..
Т.е то что вы говорите, повторю, это пок ане убедительно.
PS - вот если вы скажете проца не хватает, то думаю даже полный дебил программист сможет сжедать алгоритм который в оффлайновом миксдауне сделает вам сумму в 300битном к примеру регистре.
хотите я вам такой сумматор напишу? =))))

[ADDED=buncker]1137939793[/ADDED]
и ещё, будь в правы, и будь всё так прозрачно, рынок бы кишел устройствами типа "ДСП ускоритель микса!". а-ля "Наш 512 битный сумматор сделает ваши миксы бесподобными и разгрузит ваш процессор". при том что себистоимость такого дивайса будет баксов 50 (утрирую). а написать в подобный дсп софт сможет любой прилежный студент имхо.

повторюсь, я вполне могу оказаться не прав. но пока не вижу внятного обьяснения без пробелов и чудес и умных "маск-слов".
надо сложит числа? легко! в оффлайне при баунсе? ещщё легче!
 
Originally posted by buncker
Vasfed
сорри, я программист немножнко, чуток знаю ассемблер. и когда говорят что надо сложить хоть тыщщу 24-битных числа, и это кушает процессор.
гм...
эээ... /задумчивость/

т.е я вполне вам поверю (уж в этом смысле религиозности у меня нет =) ) если вы обьясните это по шагам, подробно.
Пока всё что говоится - слова пустые.
на любом процессора сэмулировать хоть 128-битное сложение, проблеммы нет (надеюсь хоть вам это не надо доказывать, или вы всёж просто книжки читалои только а сами код не писали?)
Если вы скажете что \"в регистр результат не поместится\", то останется только развестируками. Это как же мы тогда на Z80 складывали 32-битные числа то.. уххх..  
Т.е то что вы говорите, повторю, это пок ане убедительно.
PS - вот если вы скажете проца не хватает, то думаю даже полный дебил программист сможет сжедать алгоритм который в оффлайновом миксдауне сделает вам сумму в 300битном к примеру регистре.
хотите я вам такой сумматор напишу? =))))
тут я с вами согласен, что можно повысить битность сложения и точно все сложить.
правда из-за большого количества обращений к памяти даже с учетом кеширования скорость сильно просядет, но от деления потом все равно никуда не дельтся - размер конечного результата полюбому ограничен, а длинночисленное деление - это уже не козявки трескать - вот и стараются за регистры не вылезать (благо они нынче побольше стали :biggrin:)

ЗЫ, :beer:
 
Originally posted by buncker
рынок бы кишел устройствами типа \"ДСП ускоритель микса!\". а-ля \"Наш 512 битный сумматор сделает ваши миксы бесподобными и разгрузит ваш процессор\"
уже есть, см. семейство звуковух Creamware Scope - Professional - ~$2000, Project (чуть послабее) - $1000 :thumbsup:
тамошний dsp-микшер действительно звучит ооочень даже.
 
Originally posted by Vasfed
потери точности воспроизведения исходного сигнала, если хотите научнее, то разницу ковариации исходного сигнала с полученым и дисперсии исходного.

Как они проявляются? Я считаю, что потерь либо нет, либо они находятся на уровне, который ни на что не влияет.


про float я имел в виду то, что из-за особенностей этого float'а опускание и обратное поднимание гейна не сказывается на сигнале
а для целых чисел, коими являются семплы в 16,24 и целочисленном 32: 99/2 = 49 * 2 = 98, т.е. операция проходит с потерями т.к. 98 как нетрудно заметить, не равно исходному 99

для float тоже можно привести похожие примеры, но они будут на порядок сложнее

Во-первых, все потери находятся в LSB. На что это влияет?! Во-вторых, с чего Вы взяли, что ошибки накапливаются???
 
Originally posted by Vasfed
уже есть, см. семейство звуковух Creamware Scope - Professional - ~$2000, Project (чуть послабее) - $1000 :thumbsup:  
тамошний dsp-микшер действительно звучит ооочень даже.

Вот ЭТО - религия. Я Вас уверяю, что при слепом тесте Вы не узнаете, нде Скоп, а где программа.
 
Vasfed
Слушайте, вы правда считаете сложение с переносом (столбиком)
например 64-х чисел столь сложной задачей что что-то там полезет в память итп. При кэше современных процов в мегабайт(ы)?
просядет производительность? (не, ну 2 процента от п4 3ггц не в счёт думаю? )
Есть аргументы реальные по поводу сложности не рилтайм миксдауна? (если уж 2 процента жалко =))
 
Originally posted by Rustami
Как они проявляются? Я считаю, что потерь либо нет, либо они находятся на уровне, который ни на что не влияет.
насчет уровня - верное замечание, т.к. потери находятся близко к уровню шума аппаратуры, а плохи они тем, что складываются с этим самым шумом...


Во-первых, все потери находятся в LSB. На что это влияет?! Во-вторых, с чего Вы взяли, что ошибки накапливаются???
из того, что они всегда накапливаются, таковы жизнь :smile:
другое дело что в некоторых численных методах можно провести рассчет так, чтобы ошибка убивала сама себя (ну например решение СЛАУ по Лагранжу и оно же но с выбором ведущего элемента), но у нас не тот случай
 
При этом я соглашусь что реальный эквалайзер звучит приятно, реальный сумматор искажет приятно, реальный микерофон красит правильно и звук пишут не через измерительные преампы для научных изысканий а через удачно окрашивающие дивайсы (кому нужна дистилированная вода, мы же компотик любим?)
так что аналоговое сведение vs цифровое - ответ кроется совсем не в сумматоре (моё мнение).
 
Vasfed
повторю вопрос - какая сложность в сложении 24 битных отсчётов.
обьясните. не надо вот этого
Vasfed:
другое дело что в некоторых численных методах можно провести рассчет так, чтобы ошибка убивала сама себя (ну например решение СЛАУ по Лагранжу и оно же но с выбором ведущего элемента), но у нас не тот случай

мы с вами складываем потоки, а не делаем интегрирование или работу с иррациональными числами.

вернитесь на землю.
 
Originally posted by Vasfed
насчет уровня - верное замечание, т.к. потери находятся близко к уровню шума аппаратуры, а плохи они тем, что складываются с этим самым шумом...

Они НИЖЕ любого шума! Повторяю, -137 дБ!


из того, что они всегда накапливаются, таковы жизнь :smile:

Эти ошибки корректируются и не накапливаются! О чем Вы говорите!
 
Originally posted by Vasfed
угу, потому что алгоритмы те же :)
уже проверяли - самплу не отличили, а нюша слила.

Значит, так проверяли, что Нюша слила. Никто не сливает. Все хорошо суммируют и не только в оффлайне. В реалтайме, если что-то не так, начинает трещать, а не упрощать что-то, чтобы звучало хуже, но "тянуло".
 
Ребята.
повторю исходные данные, а то подмена условий происходит по тихоньку.
64 потока. каждый в 24 бита.
вообще-то, как цже говорилось - это 24битные целые числа.

итак.
64 потока целых чисел идут на цапы и складываются внешне.
64 потока целых чисел складываются в цифровом сумматоре.

утверждение таково - цифровой сумматор 64-х целых 24-битных чисел накапливает какие-то ошибки, не хватает разрядности итп.

я не согласен с этим утверждением.

[ADDED=buncker]1137941573[/ADDED]
Если какой-то хитрый алгоритм в какой-то хитрой железке смешивает как-то хитро (т.е искажает), это другое дело, это уже _обработка звука_.

а на форуме в который раз втирают ( с уверенностью которую лучше направить на мирные цели =)) ) что мол просто разрядности не хватает. Один раз даже приплели новые 64-битные п роцессоры что мол на них-то мы получим накоенц верный резульат!! =))
 
я написал очень упрощенно, а что касается 32 бит float - то там тоже большие заморочки, т.к. float так устроен:

И о чем это говорит? Ведь в 32float вы число все равно точнее, чем с 24-ех битной точностью не представите. Ошибки округления - они, я так понимаю, бывают не только при целочисленной математике, они вообще в любом случае бывают. Суть в том, что 32float - это и есть "честные" 24 бита, все ошибки вычисления в которых не попадают, вот как ты не тресни в слышимый 24-ый. Поэтому говоря о 24-ех битной точности, нужно понимать, для чего вообще 32float существует. Вот вы понимаете. И откуда ошибки?
 
Originally posted by buncker
Vasfed
Слушайте, вы правда считаете сложение с переносом (столбиком)  
например 64-х чисел столь сложной задачей что что-то там полезет в память итп. При кэше современных процов в мегабайт(ы)?
просядет производительность? (не, ну 2 процента от п4 3ггц не в счёт думаю? )
Есть аргументы реальные по поводу сложности не рилтайм миксдауна? (если уж 2 процента жалко =))
про сложение вопросов нет, а деление в произвольном случае как реализовывать будете? можно тоже столбиком, но какова сложность этого алгоритма в терминах количества действий и памяти пжалста, при условии что аппаратный механизм этом случае неприменим :gigi:

в нереалтайме вопросов нет - делать можно все что угодно, пипл схавает :biggrin:
а если реалтайм? :biglaugh: ведь много кто пользует внешние эффекты и пр. улучшайзеры...
(кстати тоже по идее не должно возникнуть проблем при вменяемом количестве треков и быстром компе)

вся фигня в том, что тупо делить на количество треков нельзя
- пример: 99 треков тишины и 1 трек играющий по 0 складываем вашим методом, получаем этот самый трек, даже память сэкономим, если оптимально писать, а дальше нам положено сигнал на 100 поделить :biglaugh:

специфика другая => нужно каждый из них предварительно поделить (т.е. фейдеры треков), а какой смысл в таком модном сложении, если все треки прийдут уже с понижением битности?
в таком случае уже разумнее сами треки бит по 128float делать и делить и уж потом складывать...
 
Originally posted by buncker
Ребята.
64 потока целых чисел идут на цапы и складываются внешне.
64 потока целых чисел складываются в цифровом сумматоре.

утверждение таково - цифровой сумматор 64-х целых 24-битных чисел накапливает какие-то ошибки, не хватает разрядности итп.
я не согласен с этим утверждением.
сам сумматор ошибок не накапливает, они получаются и накапливаются из-за цифрового понижения уровня сигнала.

двайте постепенно. согласны ли вы с утверждением, что после деления числа пополам один бит в любом случае перестанет использоваться?
 
Vasfed
если для вас предстваляют сложность подобные вычесления, то ой. =)
Кстати, если интересно вам=)))
есть такая библиотека - IPP от интелей, спец мат библиотека заточенная под проц. (т.е в асме ковыряться уже не надо)

В общем скажите прямо уже - почему (хрен с ним с рилтаймом) в оффлайне нельзя сделать вычисление с необходимой битностью, надоело переливать из пустого в порожнее.

Vasfed:
специфика другая => нужно каждый из них предварительно поделить (т.е. фейдеры треков), а какой смысл в таком модном сложении, если все треки прийдут уже с понижением битности?
в таком случае уже разумнее сами треки бит по 128float делать и делить и уж потом складывать...
Блин, вы СЕРЬЁЗНО ЭТО говорите??? =)))

т.е для того чтоб наступило счастье на всей планете, надо привести каждый поток к пусть 128 битному формату для исключения потерь, потом поделить и потом опять сложить в том же 128 битном сумматоре?

[ADDED=buncker]1137942763[/ADDED]
Vasfed:
двайте постепенно. согласны ли вы с утверждением, что после деления числа пополам один бит в любом случае перестанет использоваться?
не согласен, если оставаться в целочисленной арифметике, то да, будут проблемы.
если нет, то хватит всего лишь запастись необходимой разрядностью.
разрядность на машине - не проблема.

дальше какие будут утверждения?

кажется здесь уже говорилось что берём трэк. -90 дб ему, потом обратно. и о чудо!!! всё на месте! вроде даже не было возражений...
 
Originally posted by buncker+--><div class='quotetop'>QUOTE(buncker)</div>
т.е для того чтоб наступило счастье на всей планете, надо привести каждый поток к пусть 128 битному формату для исключения потерь, потом поделить и потом опять сложить в том же 128 битном сумматоре?
[/b]
<!--QuoteBegin-buncker


хватит всего лишь запастись необходимой разрядностью.
разрядность на машине - не проблема.
- ну вот вы сами доказали мое утверждение :thumbsup:
 
ЭЭЭЭЭ
возвращаемся к нашим баранам.
почему нельзя сделать сумматор с достаточным запасом?
производительности не хватит? - бред.
пусть оно будет в оффлайне тогда.
где загвоздка???
 
не согласен, если оставаться в целочисленной арифметике, то да, будут проблемы.
если нет, то хватит всего лишь запастись необходимой разрядностью.
разрядность на машине - не проблема.

дальше какие будут утверждения?

кажется здесь уже говорилось что берём трэк. -90 дб ему, потом обратно. и о чудо!!! всё на месте! вроде даже не было возражений...

Вот-вот. Я именно об этом и написал чуть выше. Вот вы, Vasfed говорите, что "накапливаются из-за цифрового понижения уровня сигнала". Смоделируйте что ли ситуацию, когда из-за него (если вычисления проводить в 32float) ошибки накопятся вплоть до слишимого бита. Естественно значения в 32float (и в любом другом формате) будут отличаться после цикла - понижение/усиление (из-за ошибок округления), но 24-ех битный миксдаун - отличаться не будет. С этим вы согласны?
 
кстати,если принять в рассчёт тепловой шум элементной базы (резючки операционнички) на реальном сумматоре, то вообще монстрообразных сумматоров делать ен придётся =)))

но не будем отвлекаться, хочу знать правду по теме.
 
Originally posted by buncker

кажется здесь уже говорилось что берём трэк. -90 дб ему, потом обратно. и о чудо!!! всё на месте! вроде даже не было возражений...
во-первых, тот же wavelab не даст вам сделать за один шаг gain -90, максимум -60, а потом больше чем +23 тоже

возьмите и попробуйте - возьмите файл, сделайте ему -60, потом три раза по +20, потом инвертируйте фазу и сложите с оригиналом.
после этого нормализуйте результат и наслаждайтесь звучанием вашего отсутствия ошибок :biglaugh:

если ломает - то результат во вложении.

ЗЫ. самплитюд - недеструктивный редактор, если в нем сделать -90 а потом +90, то он просто ничего не будет делать, делать надо в деструктивном.
 

Сейчас просматривают