From ehrlich1 на mail.ru Thu Oct 6 12:35:28 2011 From: ehrlich1 на mail.ru (=?UTF-8?B?0KHQvtGE0LjRjyDQrdGA0LvQuNGF?=) Date: Thu, 06 Oct 2011 12:35:28 +0400 Subject: [P&AM Lab] =?utf-8?b?0KDQtdGI0LXRgtC+INCt0YDQsNGC0L7RgdGE0LXQvdCw?= =?utf-8?b?ICjQsNC70LPQvtGA0LjRgtC8INC90LDRhdC+0LbQtNC10L3QuNGPINC/0YA=?= =?utf-8?b?0L7RgdGC0YvRhSDRh9C40YHQtdC7INC00L4g0LTQsNC90L3QvtCz0L4gbik=?= Message-ID: Григорий Александрович, здравствуйте. Вот, более или менее доработала первый вариант, хотелось бы критики)  ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: ----------- следущая часть ----------- A non-text attachment was scrubbed... Name: отсутствует Type: application/octet-stream Size: 988 bytes Desc: отсутствует URL: From ilyaart90 на rambler.ru Wed Oct 12 20:18:41 2011 From: ilyaart90 на rambler.ru (ilyaart90 на rambler.ru) Date: Wed, 12 Oct 2011 20:18:41 +0400 Subject: [P&AM Lab] can't /dev/dsp: Device or resource busy Message-ID: <181891313.1318436321.88352552.58175@mperl17.rambler.ru> Пытался запустить прошлогоднюю программу "попугайчик" и он мне выдал can't /dev/dsp: Device or resource busy вывожу fuser /dev/dsp ничего не пишет. ps -ag ничего чтобы могло занять этот файл не показывает. я решил попробывать artsdsp (правда в мане говориться что он просто перенаправляет на artsd но за что он отвечает я не знаю) artsdsp ./dsp2 программа запустилась, но запись с микрофона не идет, хотя микрофон работает исправно. также пробывал oss wrapper padsp ./dsp2 выдало can't /dev/dsp: Connection refused Что делать? From Lonely.RuyK на mail.ru Fri Oct 14 03:12:34 2011 From: Lonely.RuyK на mail.ru (LonelyRuyK) Date: Fri, 14 Oct 2011 03:12:34 +0400 Subject: [P&AM Lab] can't /dev/dsp: Device or resource busy In-Reply-To: <181891313.1318436321.88352552.58175@mperl17.rambler.ru> References: <181891313.1318436321.88352552.58175@mperl17.rambler.ru> Message-ID: <201110140312.34511.Lonely.RuyK@mail.ru> Как-то пытался поразбирать попугайчика, наткнулся на ту же проблему, решения не нашёл Сегодня ковырялся в интернете, нашёл интересную статейку "Introduction to Sound Programming with ALSA" Наверное это как раз то что тебе нужно. вот ссылка http://www.linuxjournal.com/article/6735?page=0,2 From ilyaart90 на rambler.ru Wed Oct 19 11:04:25 2011 From: ilyaart90 на rambler.ru (ilyaart90 на rambler.ru) Date: Wed, 19 Oct 2011 11:04:25 +0400 Subject: [P&AM Lab] =?windows-1251?b?7eXo5+Ll8fLt++Ug9O7w7ODy+yBhbHNh?= Message-ID: <167294565.1319007865.92468312.4927@mperl113.rambler.ru> в библиотеке alsa есть тип snd_pcm_format [http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html#g3df0b888477ce2dc3817d9095db859b1] в него входит куча звуковых форматов, типа U8, S16 LE, S16 BE для меня совсем не понятных. я могу в них записывать звук, считывать, но мне надо работать с конкретными значениями дабы обрабатывать звук. какой лучше для этого формат выбрать и как с ним разобраться? ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From sitkarev на komitex.ru Wed Oct 19 11:32:52 2011 From: sitkarev на komitex.ru (Grigoriy A. Sitkarev) Date: Wed, 19 Oct 2011 11:32:52 +0400 Subject: [P&AM Lab] =?utf-8?b?0L3QtdC40LfQstC10YHRgtC90YvQtSDRhNC+0YDQvNCw?= =?utf-8?b?0YLRiyBhbHNh?= In-Reply-To: <167294565.1319007865.92468312.4927@mperl113.rambler.ru> References: <167294565.1319007865.92468312.4927@mperl113.rambler.ru> Message-ID: <4E9E7D24.7020901@komitex.ru> Это не звуковые форматы. Это формат значений в которые будут представлены выборки для АЦП/ЦАП и они все конкретные. Справа в этой таблице дано описание формата, а именно в каком виде выборки хранятся. Они все кодируются знаковыми или беззнаковыми целыми, числами с плавающей точкой и т.д. Какой формат тебе нужен, такой и следует выбирать/устанавливать в конфигурационное пространство. Формат носит рекомендательный характер, т.к. зависит от того что поддерживает то или иное устройство. Для этого в ALSA есть соответствующие функции, в частности snd_pcm_hw_params_current() и snd_pcm_hw_params_test_format(). Первой можно получить текущую аппаратную конфигурацию устройства а второй проверить поддерживается ли данный формат. Соответственно, есть и функции *_set_format() и *_get_format(). Нужно внимательнее посмотреть в документацию и написать тестовую программу. Здесь смотреть удобнее, т.к. они разбиты на группы. http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html -- Г.А. 19.10.2011 11:04, ilyaart90 на rambler.ru пишет: > в библиотеке alsa есть тип snd_pcm_format > [http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html#g3df0b888477ce2dc3817d9095db859b1] > в него входит куча звуковых форматов, типа U8, S16 LE, S16 BE для меня > совсем не понятных. я могу в них записывать звук, считывать, но мне надо > работать с конкретными значениями дабы обрабатывать звук. какой лучше > для этого формат выбрать и как с ним разобраться? > From victorshuktomov на yandex.ru Fri Oct 28 14:11:09 2011 From: victorshuktomov на yandex.ru (=?koi8-r?B?+9XL1M/Nz9cg98nL1M/S?=) Date: Fri, 28 Oct 2011 14:11:09 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= Message-ID: <617621319796669@web69.yandex.ru> Вложение в формате HTML было извлечено… URL: From divx2008 на yandex.ru Fri Oct 28 18:16:25 2011 From: divx2008 на yandex.ru (=?koi8-r?B?KioqKioqIOTFzsnT?=) Date: Fri, 28 Oct 2011 18:16:25 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= In-Reply-To: <617621319796669@web69.yandex.ru> References: <617621319796669@web69.yandex.ru> Message-ID: <448181319811385@web82.yandex.ru> А смысл, кому надо тот и так знает. 28.10.2011, 14:11, "Шуктомов Виктор" : > Сегодня факультатив будет? Кстати, может стоит сюда, в рассылку писать каждый раз перед факультативом? > > _______________________________________________ > Lab mailing list > Lab на wiki.syktsu.ru > http://wiki.syktsu.ru/cgi-bin/mailman/listinfo/lab From victorshuktomov на yandex.ru Fri Oct 28 20:11:13 2011 From: victorshuktomov на yandex.ru (=?koi8-r?B?+9XL1M/Nz9cg98nL1M/S?=) Date: Fri, 28 Oct 2011 20:11:13 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= In-Reply-To: <448181319811385@web82.yandex.ru> References: <617621319796669@web69.yandex.ru> <448181319811385@web82.yandex.ru> Message-ID: <21971319818273@web148.yandex.ru> 28.10.2011, 18:16, "****** Денис" : > А смысл, кому надо тот и так знает. > > 28.10.2011, 14:11, "Шуктомов Виктор" : > >>  Сегодня факультатив будет? Кстати, может стоит сюда, в рассылку писать каждый раз перед факультативом? >> >>  _______________________________________________ >>  Lab mailing list >>  Lab на wiki.syktsu.ru >>  http://wiki.syktsu.ru/cgi-bin/mailman/listinfo/lab > > _______________________________________________ > Lab mailing list > Lab на wiki.syktsu.ru > http://wiki.syktsu.ru/cgi-bin/mailman/listinfo/lab В том то и дело, что узнать сегодня мне так и не удалось. В итоге пришел, а ничего не было. From graph94 на mail.ru Sat Oct 29 21:07:09 2011 From: graph94 на mail.ru (=?UTF-8?B?0JrQvtGB0YLRjyDQqNGD0LvQtdC/0L7Qsg==?=) Date: Sat, 29 Oct 2011 21:07:09 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= Message-ID: ?????Я написал небольшую программку, которая должна выводить вводимый текст, т.е. каждую строку отдельно в обратном порядке. Вот исходный код: #include void getline(char s[]); void reverse(char direct[], char reversed[]); main() { char string[1000]; char revstring[1000]; int i=0; while (!EOF)         {         getline(string);         reverse(string, revstring);      } void reverse(char direct[], char reversed[]) { int i=0; int j=0; while (direct[i]!='\n' || direct[i]!='\0') ++i; for (i; i!=0; --i)         {         reversed[j]=direct[i];         ++j;         printf("%c", reversed[j]);         } } void getline(char s[]) { int i,c; for (i=0; (c=getchar())!=EOF || c!='\n'; ++i)  s[i]=c; if (c=='\n')         {s[i]=c;          ++i;         } } при попытке скомпилировать выдает вот такие ошибки: strings.c:3: error: conflicting types for ?getline? /usr/include/stdio.h:651: note: previous declaration of ?getline? was here strings.c: In function ?main?: strings.c:41: error: expected declaration or statement at end of input подскажите что не так, пожалуйста. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From rg-400 на list.ru Sat Oct 29 21:18:04 2011 From: rg-400 на list.ru (rg-400) Date: Sat, 29 Oct 2011 21:18:04 +0400 Subject: [P&AM Lab] =?utf-8?b?KNCx0LXQtyDRgtC10LzRiyk=?= In-Reply-To: References: Message-ID: <4EAC354C.6000803@list.ru> On 29.10.2011 21:07, Костя Шулепов wrote: > ??????Я написал небольшую программку, которая должна выводить вводимый > текст, т.е. каждую строку отдельно в обратном порядке. Вот исходный код: > > > #include > > void getline(char s[]); > void reverse(char direct[], char reversed[]); > > main() > { > char string[1000]; > char revstring[1000]; > int i=0; > > while (!EOF) > { > getline(string); > reverse(string, revstring); > } > > void reverse(char direct[], char reversed[]) > { > int i=0; > int j=0; > > while (direct[i]!='\n' || direct[i]!='\0') ++i; > for (i; i!=0; --i) > { > reversed[j]=direct[i]; > ++j; > printf("%c", reversed[j]); > } > } > > void getline(char s[]) > { > int i,c; > > for (i=0; (c=getchar())!=EOF || c!='\n'; ++i) s[i]=c; > if (c=='\n') > {s[i]=c; > ++i; > } > } > > при попытке скомпилировать выдает вот такие ошибки: > > strings.c:3: error: conflicting types for ?getline? > /usr/include/stdio.h:651: note: previous declaration of ?getline? was here > strings.c: In function ?main?: > strings.c:41: error: expected declaration or statement at end of input > > подскажите что не так, пожалуйста. > > > > > > > > _______________________________________________ > Lab mailing list > Lab на wiki.syktsu.ru > http://wiki.syktsu.ru/cgi-bin/mailman/listinfo/lab Имя функции getline поменяй, т.к. такая уже есть (см. getline(3)). ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From anyfrievdrus на mail.ru Sat Oct 29 21:24:52 2011 From: anyfrievdrus на mail.ru (=?UTF-8?B?0JDQvdC00YDQtdC5INCQ0L3Rg9GE0YDQuNC10LI=?=) Date: Sat, 29 Oct 2011 21:24:52 +0400 Subject: [P&AM Lab] =?utf-8?b?KNCx0LXQtyDRgtC10LzRiyk=?= In-Reply-To: References: Message-ID: getline уже определён в stdio в функцию передавайте не только массив, но и его размер и следите, что-бы не вылезли за границы массива ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From Lonely.RuyK на mail.ru Sun Oct 30 01:11:12 2011 From: Lonely.RuyK на mail.ru (LonelyRuyK) Date: Sun, 30 Oct 2011 01:11:12 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= Message-ID: <201110300111.12706.Lonely.RuyK@mail.ru> main() { char string[1000]; char revstring[1000]; int i=0; while (!EOF) { getline(string); reverse(string, revstring); } Ещё тут ошибка. не хватает закрывающейся скобки для main. Лучше ставить открывающуюся/закрывающуюся скобку на одном уровне либо так: while (!EOF) { getline(string); reverse(string, revstring); } так вероятность что ты забудешь что-то закрыть будет меньше. From Lonely.RuyK на mail.ru Sun Oct 30 01:58:12 2011 From: Lonely.RuyK на mail.ru (LonelyRuyK) Date: Sun, 30 Oct 2011 01:58:12 +0400 Subject: [P&AM Lab] =?utf-8?b?KCDQsdC10Lcg0YLQtdC80YsgKQ==?= In-Reply-To: References: Message-ID: <201110300158.12941.Lonely.RuyK@mail.ru> Ещё строку в main с while стоит переписать скорее всего. Потому что while (!EOF) ни разу не исполнится. From Jack291 на yandex.ru Sun Oct 30 14:25:17 2011 From: Jack291 на yandex.ru (=?koi8-r?B?8tHCz9cg5dfHxc7Jyg==?=) Date: Sun, 30 Oct 2011 14:25:17 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= In-Reply-To: References: Message-ID: <393521319970317@web53.yandex.ru> Вложение в формате HTML было извлечено… URL: From rg-400 на list.ru Sun Oct 30 18:15:55 2011 From: rg-400 на list.ru (rg-400) Date: Sun, 30 Oct 2011 18:15:55 +0400 Subject: [P&AM Lab] =?utf-8?b?KNCx0LXQtyDRgtC10LzRiyk=?= In-Reply-To: <393521319970317@web53.yandex.ru> References: <393521319970317@web53.yandex.ru> Message-ID: <4EAD5C1B.3090907@list.ru> On 30.10.2011 14:25, Рябов Евгений wrote: > Ну во-первых int main(); > во вторых, здесь нет ввода с консоли либо из файла, видимо > задумывалось так: > while ((string[i] = getchar()) != EOF) { > i++; > } > Насколько я помню есть стандартная функция strlen возвращающая длину > строки, но здесь это не нужно вообще, т.к. в i у тебя длина строки > reverse(string, revstring); > и функцию reverse следует объявить так: void reverse(char * direct, > char * reversed, int n) и использовать так reverse(string, revstring,i); > писать не в цикле while > и в функции reverse цикл будет примерно такой > for (i = n - 1 , j = 0; i > -1 ; i-- , j++) > { > reversed[j]=direct[i]; > printf("%c", reversed[j]); > } > а while не нужен > И с printf будут проблемы он либо напечатает хвост либо ничего не > напечатает, имхо > на первый взгляд всё > EOF может быть равен -1. int c, i = 0; while ( (c= getchar()) != EOF) { string[i++] = c; } string[i] = '\0'; From Jack291 на yandex.ru Sun Oct 30 20:22:11 2011 From: Jack291 на yandex.ru (=?koi8-r?B?8tHCz9cg5dfHxc7Jyg==?=) Date: Sun, 30 Oct 2011 20:22:11 +0400 Subject: [P&AM Lab] =?koi8-r?b?KMLF2iDUxc3ZKQ==?= In-Reply-To: <4EAD5C1B.3090907@list.ru> References: <393521319970317@web53.yandex.ru> <4EAD5C1B.3090907@list.ru> Message-ID: <407031319991731@web83.yandex.ru> ну если ошибка то да, а так можно scanf ) или еще одно условие добавить 30.10.2011, 18:15, "rg-400" : > On 30.10.2011 14:25, Рябов Евгений wrote: > >>  Ну во-первых int main(); >>  во вторых, здесь нет ввода с консоли либо из файла, видимо >>  задумывалось так: >>  while ((string[i] = getchar()) != EOF)  { >>          i++; >>  } >>  Насколько я помню есть стандартная функция strlen возвращающая длину >>  строки, но здесь это не нужно вообще, т.к. в i у тебя длина строки >>   reverse(string, revstring); >>   и функцию reverse следует объявить так:  void reverse(char * direct, >>  char * reversed, int n) и использовать так reverse(string, revstring,i); >>   писать не в цикле while >>  и в функции reverse цикл будет примерно такой >>  for (i = n - 1 , j = 0; i > -1 ; i-- , j++) >>          { >>          reversed[j]=direct[i]; >>          printf("%c", reversed[j]); >>          } >>  а while не нужен >>  И с printf будут проблемы он либо напечатает хвост либо ничего не >>  напечатает, имхо >>  на первый взгляд всё > > EOF может быть равен -1. > > int c, i = 0; > > while ( (c= getchar()) != EOF)  { >      string[i++] = c; > } > string[i] = '\0'; > > _______________________________________________ > Lab mailing list > Lab на wiki.syktsu.ru > http://wiki.syktsu.ru/cgi-bin/mailman/listinfo/lab -- Заходим на melinux.ru - всё про Linux и не только