реклама на сайте
подробности

 
 
> STM32 mp3 playback
zksystem
сообщение Jan 24 2009, 11:24
Сообщение #1


embedder
***

Группа: Свой
Сообщений: 264
Регистрация: 11-05-05
Из: Казань
Пользователь №: 4 911



Потянет ли STM32 декодирование mp3 хотябы 192кбит моно?


--------------------
Мечты стареют куда быстрее мечтателей… Стивен Кинг. "Ловец снов"
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rst7
сообщение Jan 27 2009, 17:43
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Если там всего 512 байт в VLSI - че делать?
все - каюк.


Блин, да курните вы поглубже про внутренности VLSI. Во-первых, там есть еще входная очередь размером в 2К. Пока не играем - она, понятное дело, пуста. Раскладывайте там свои причиндалы для разбора LFN. А когда плей - прямо читайте сектора в очередь да и все.

Так уж и быть. Я тут скоро один проектик с этой VLSI буду делать, слеплю вам маленький плейер.



Цитата
А есть по ним инфа?


CODE

/*

This is an example program that shows how to extract MP3 ID3v1 tags.
It is written in standard ANSI C and can be compiled with any working
C compiler.

Usage: "id3tag file1.mp3 [file2.mp3 [...]]"

Author: Henrik Herranen, VLSI Solution, 2000-07-21

*/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>



/*

Different genres are described below. If it is felt that these take
too much space from a microcontroller, the whole list may be thrown
away since the genre information is used wrong most of the time anyway.

*/
#define GENRES 148

char *genres[GENRES] = {
"Blues", "Classic Rock", "Country", "Dance",
"Disco", "Funk", "Grunge", "Hip-Hop",
"Jazz", "Metal", "New Age", "Oldies",
"Other", "Pop", "R&B", "Rap",
"Reggae", "Rock", "Techno", "Industrial",
"Alternative", "Ska", "Death Metal", "Pranks",
"Soundtrack", "Euro-Techno", "Ambient", "Trip-Hop",
"Vocal", "Jazz+Funk", "Fusion", "Trance",
"Classical", "Instrumental", "Acid", "House",
"Game", "Sound Clip", "Gospel", "Noise",
"AlternRock", "Bass", "Soul", "Punk",
"Space", "Meditative", "Instrumental Pop", "Instrumental Rock",
"Ethnic", "Gothic", "Darkwave", "Techno-Industrial",
"Electronic", "Pop-Folk", "Eurodance", "Dream",
"Southern Rock", "Comedy", "Cult", "Gangsta",
"Top 40", "Christian Rap", "Pop/Funk", "Jungle",
"Native American", "Cabaret", "New Wave", "Psychadelic",
"Rave", "Showtunes", "Trailer", "Lo-Fi",
"Tribal", "Acid Punk", "Acid Jazz", "Polka",
"Retro", "Musical", "Rock & Roll", "Hard Rock",
"Folk", "Folk/Rock", "National folk", "Swing",
"Fast-fusion", "Bebob", "Latin", "Revival",
"Celtic", "Bluegrass", "Avantgarde", "Gothic Rock",
"Progressive Rock", "Psychedelic Rock", "Symphonic Rock", "Slow Rock",
"Big Band", "Chorus", "Easy Listening", "Acoustic",
"Humour", "Speech", "Chanson", "Opera",
"Chamber Music", "Sonata", "Symphony", "Booty Bass",
"Primus", "Porn Groove", "Satire", "Slow Jam",
"Club", "Tango", "Samba", "Folklore",
"Ballad", "Powder Ballad", "Rhythmic Soul", "Freestyle",
"Duet", "Punk Rock", "Drum Solo", "A Capella",
"Euro-House", "Dance Hall", "Goa", "Drum & Bass",
"Club House", "Hardcore", "Terror", "Indie",
"BritPop", "NegerPunk", "Polsk Punk", "Beat",
"Christian Gangsta", "Heavy Metal", "Black Metal", "Crossover",
"Contemporary C", "Christian Rock", "Merengue", "Salsa",
"Thrash Metal", "Anime", "JPop", "SynthPop"
};



/*

Here is the main program. The program is called by giving 1 or more
MP3 files as command line arguments.

Example:
mp3tag mysong.mp3 othersong.mp3

*/


int main(int argc, char **argv) {
int i;
/* 128 bytes needed for raw ID3 data */
char id3[128];

for (i=1; i<argc; i++) {
if (!strcmp(argv[i], "-h")) {
printf("Usage: %s file1.mp3 [file2.mp3 [...]]\n", argv[0]);
exit(EXIT_SUCCESS);
} else {
FILE *fp = fopen(argv[i], "rb");

if (!fp) {
printf("Couldn't open file %s\n", argv[i]);
exit(EXIT_FAILURE);
}

/* Read last 128 bytes of the file, if we can */

if (fseek(fp, -128, SEEK_END) || fread(id3, 128, 1, fp) != 1) {
printf("Couldn't jump/read in file %s\n", argv[i]);
exit(EXIT_FAILURE);
}
fclose(fp);

/* Now we have read the last 128 bytes and it's time to see if we
have some ID3 there or not. A valid ID3 tag has the characters
'T', 'A', and 'G' as its 3 identifying characters. */

if (strncmp(id3, "TAG", 3)) {
printf("File \"%s\" doesn't have an ID3 tag\n\n", argv[i]);
} else {
unsigned char *s = id3+3;
char title[31];
char artist[31];
char album[31];
char year[5];
char comment[31];
char genre[31];

/* Id3 tag elements don't necessarily end in a '\0' if they
occupy the full 30 character space. Thus, we'll have to
nul-terminate all strings just to be sure. */
strncpy(title, s, 30);
title[30] = '\0';
s += 30;

strncpy(artist, s, 30);
artist[30] = '\0';
s += 30;

strncpy(album, s, 30);
album[30] = '\0';
s += 30;

strncpy(year, s, 4);
year[4] = '\0';
s += 4;

strncpy(comment, s, 30);
comment[30] = '\0';
s += 30;

/* The genre field is not encoded as a string, but just one byte
that indexes the decoding table. If memory is too expensive,
the whole field may be ignored or just shown as a number. */
if (*s >= GENRES)
strcpy(genre, "Unknown");
else
strcpy(genre, genres[*s]);

/* And now the final printing */
printf("File \"%s\":\n", argv[i]);
printf("Title : %-30s Artist: %s\n", title, artist);
printf("Album : %-30s Year : %4s\n", album, year);
printf("Comment: %-30s Genre : %s\n\n", comment, genre);
}
}
}

return EXIT_SUCCESS;
}


И вообще, горячие финские парни все придумали за нас

http://www.vlsi.fi/en/support/evaluationbo...protoboard.html


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zksystem   STM32 mp3 playback   Jan 24 2009, 11:24
- - blackfin   Смотря сколько в нем MIPS'ов: MP3_Decoder   Jan 24 2009, 11:30
|- - zksystem   Цитата(blackfin @ Jan 24 2009, 14:30) Смо...   Jan 24 2009, 11:34
- - Dron_Gus   AT91SAM7S** тянет и 320. Например libmad.   Jan 24 2009, 11:42
|- - sonycman   Цитата(Dron_Gus @ Jan 24 2009, 15:42) AT9...   Jan 24 2009, 11:52
||- - blackfin   Цитата(sonycman @ Jan 24 2009, 14:52) Тол...   Jan 24 2009, 12:01
||- - zksystem   Цитата(sonycman @ Jan 24 2009, 14:52) Тог...   Jan 24 2009, 12:08
||- - sonycman   Цитата(zksystem @ Jan 24 2009, 16:08) зад...   Jan 24 2009, 12:14
||- - cebotor   Цитата(sonycman @ Jan 24 2009, 15:14) Я в...   Jan 27 2009, 20:16
||- - sonycman   Цитата(cebotor @ Jan 28 2009, 00:16) ST-ш...   Jan 27 2009, 21:14
||- - Alex B._   Цитата(sonycman @ Jan 28 2009, 00:14) Хот...   Jan 27 2009, 21:20
|||- - sonycman   Цитата(Alex B._ @ Jan 28 2009, 01:20) над...   Jan 27 2009, 21:27
|||- - A. Fig Lee   Цитата(sonycman @ Jan 27 2009, 16:27) Ну ...   Jan 28 2009, 04:35
||- - cebotor   Цитата(sonycman @ Jan 28 2009, 00:14) А ч...   Jan 29 2009, 17:25
|- - zksystem   Цитата(Dron_Gus @ Jan 24 2009, 14:42) AT9...   Jan 24 2009, 12:19
|- - sonycman   Цитата(zksystem @ Jan 24 2009, 16:19) поп...   Jan 24 2009, 12:27
|- - zksystem   Цитата(sonycman @ Jan 24 2009, 15:27) Был...   Jan 24 2009, 12:38
- - Dron_Gus   TLV320AIC23 в свое время цеплял к at91sam7s - звук...   Jan 24 2009, 13:08
|- - zksystem   Забыл о VLSI добавить - раньше использовал VS1001K...   Jan 24 2009, 14:17
|- - sonycman   Цитата(zksystem @ Jan 24 2009, 18:17) Заб...   Jan 24 2009, 15:15
|- - A. Fig Lee   Цитата(sonycman @ Jan 24 2009, 10:15) Ну,...   Jan 24 2009, 17:22
|- - sonycman   Цитата(A. Fig Lee @ Jan 24 2009, 21:22) Х...   Jan 24 2009, 17:31
|- - zksystem   Цитата(A. Fig Lee @ Jan 24 2009, 20:22) т...   Jan 25 2009, 12:02
|- - A. Fig Lee   Цитата(zksystem @ Jan 25 2009, 07:02) Что...   Jan 26 2009, 00:31
|- - zksystem   Цитата(A. Fig Lee @ Jan 26 2009, 03:31) в...   Jan 26 2009, 01:47
- - Rst7   ЦитатаХорошо бы иметь миниплатку - вставил туда mi...   Jan 24 2009, 20:39
|- - A. Fig Lee   Цитата(Rst7 @ Jan 24 2009, 15:39) Я думаю...   Jan 24 2009, 21:50
|- - sonycman   Цитата(Rst7 @ Jan 25 2009, 00:39) Я думаю...   Jan 24 2009, 21:58
- - Rst7   Цитатаelm-chan например файл-систем занимает как м...   Jan 25 2009, 09:14
- - bloodden   Если б ещё Ethernet к sam7x , то получится классно...   Jan 25 2009, 18:42
- - Rst7   Цитатачтоб доступится до второго, надо будет опять...   Jan 26 2009, 08:37
|- - zksystem   А флешку можно и форматнуть перед записью, тогда к...   Jan 26 2009, 10:48
|- - sonycman   Цитата(Rst7 @ Jan 26 2009, 12:37) Процеду...   Jan 26 2009, 11:20
|- - A. Fig Lee   Цитата(Rst7 @ Jan 26 2009, 03:37) Что зна...   Jan 27 2009, 01:16
|- - sonycman   Цитата(A. Fig Lee @ Jan 27 2009, 05:16) с...   Jan 27 2009, 08:37
|- - blackfin   Цитата(sonycman @ Jan 27 2009, 11:37) 100...   Jan 27 2009, 08:44
||- - A. Fig Lee   Цитата(blackfin @ Jan 27 2009, 03:44) Кон...   Jan 27 2009, 15:21
||- - zksystem   Цитата(A. Fig Lee @ Jan 27 2009, 18:21) н...   Jan 27 2009, 16:49
||- - blackfin   Цитата(zksystem @ Jan 27 2009, 19:49) Я д...   Jan 27 2009, 16:58
|- - zksystem   Цитата(sonycman @ Jan 27 2009, 11:37) 100...   Jan 27 2009, 08:44
|- - sonycman   Цитата(blackfin @ Jan 27 2009, 12:44) Кон...   Jan 27 2009, 08:51
- - Rst7   ЦитатаКак вариант. Хреновый вариант. Он добавит с...   Jan 26 2009, 11:14
- - Rst7   ЦитатаА для FAT32 всё иначе? Простите, я описался...   Jan 26 2009, 11:50
|- - sonycman   Цитата(Rst7 @ Jan 26 2009, 15:50) Длинные...   Jan 26 2009, 11:54
- - blackfin   To Rst7: Спасибо!   Jan 27 2009, 17:44
- - sergvks   А кто-нить пробовал отлаживать проги для vs-ок ? Н...   Jan 27 2009, 17:55
|- - sonycman   Цитата(zksystem @ Jan 27 2009, 20:49) Для...   Jan 27 2009, 18:05
|- - sergvks   Цитата(sonycman @ Jan 27 2009, 21:05) Что...   Jan 27 2009, 18:11
|- - sonycman   Цитата(sergvks @ Jan 27 2009, 22:11) Кста...   Jan 27 2009, 19:22
|- - zksystem   Цитата(sonycman @ Jan 27 2009, 22:22) Ну ...   Jan 27 2009, 19:52
- - Rst7   Подумайте лучше насчет вменяемого декодера AAC. Вс...   Jan 27 2009, 21:34
|- - sonycman   Цитата(Rst7 @ Jan 28 2009, 01:34) Подумай...   Jan 27 2009, 22:04
|- - goodwin   Цитата(sonycman @ Jan 28 2009, 01:04) Хм....   Jan 27 2009, 23:44
- - goodwin   LPC2148 + нормальный DAC с поддержкой разных часто...   Jan 28 2009, 04:54
|- - sonycman   Цитата(A. Fig Lee @ Jan 28 2009, 08:35) я...   Jan 28 2009, 07:39
|- - A. Fig Lee   Цитата(goodwin @ Jan 27 2009, 23:54) LPC2...   Jan 28 2009, 14:50
|- - zksystem   Цитата(A. Fig Lee @ Jan 28 2009, 17:50) 3...   Jan 28 2009, 15:40
|- - A. Fig Lee   Цитата(zksystem @ Jan 28 2009, 10:40) Да ...   Jan 28 2009, 16:29
|- - zksystem   [quote name='A. Fig Lee' post='537327...   Jan 28 2009, 17:02
|- - A. Fig Lee   Цитата(zksystem @ Jan 28 2009, 12:02) 105...   Jan 28 2009, 17:53
|- - zksystem   А сколько стоит лицензия интересно? И вообще лицен...   Jan 28 2009, 19:40
|- - A. Fig Lee   Цитата(zksystem @ Jan 28 2009, 14:40) А с...   Jan 28 2009, 20:52
|- - goodwin   Цитата(A. Fig Lee @ Jan 28 2009, 23:52) h...   Jan 28 2009, 21:21
|- - A. Fig Lee   Цитата(goodwin @ Jan 28 2009, 16:21) Тоже...   Jan 28 2009, 22:18
|- - zksystem   Цитата(A. Fig Lee @ Jan 29 2009, 01:18) ...   Jan 29 2009, 09:03
|- - sonycman   Цитата(zksystem @ Jan 29 2009, 13:03) Кор...   Jan 29 2009, 09:41
- - goodwin   Однако совсем не читатель... http://electronix.ru/...   Jan 28 2009, 20:49
|- - zksystem   Цитата(goodwin @ Jan 28 2009, 23:49) Одна...   Jan 29 2009, 10:46
|- - sonycman   Цитата(zksystem @ Jan 29 2009, 14:46) Нам...   Jan 29 2009, 11:57
|- - zksystem   Цитата(sonycman @ Jan 29 2009, 14:57) Не ...   Jan 29 2009, 12:45
|- - sonycman   Цитата(zksystem @ Jan 29 2009, 16:45) Ну ...   Jan 29 2009, 14:21
|- - zksystem   Цитата(sonycman @ Jan 29 2009, 17:21) Ну,...   Jan 29 2009, 14:37
- - MikePic   Поиском "ogg ARM7" в Яндексе нашёлся инт...   Jan 29 2009, 13:12
- - MikePic   Цитатаесли бы не надо было сильно сжимать, то обош...   Jan 29 2009, 15:14
|- - zksystem   Цитата(MikePic @ Jan 29 2009, 18:14) А за...   Jan 29 2009, 16:02
- - MikePic   Цитата(zksystem @ Jan 29 2009, 15:45) Ну ...   Jan 29 2009, 16:13
|- - zksystem   Цитата(MikePic @ Jan 29 2009, 19:13) и во...   Jan 29 2009, 16:18
|- - Alex B._   zksystem вот тебе, кстати, информация к размышлени...   Jan 30 2009, 09:39
|- - zksystem   Цитата(Alex B._ @ Jan 30 2009, 12:39) zks...   Jan 30 2009, 10:57
|- - Alex B._   Цитата(zksystem @ Jan 30 2009, 13:57) Спа...   Jan 30 2009, 21:56
- - dimka76   Всем доброго времени суток А где на сайте www....   Mar 23 2009, 14:12
|- - zksystem   Цитата(dimka76 @ Mar 23 2009, 17:12) Всем...   Mar 26 2009, 10:29
|- - defunct   Цитата(zksystem @ Mar 26 2009, 12:29) я з...   Mar 26 2009, 16:34
|- - zksystem   Цитата(defunct @ Mar 26 2009, 19:34) ...   Mar 27 2009, 04:39
|- - defunct   Цитата(zksystem @ Mar 27 2009, 06:39) Я В...   Mar 28 2009, 22:40
- - Qwertty   Может это - http://wss.co.uk/pinknoise/tremolo/ind...   Mar 29 2009, 11:21
- - ukpyr   Цитатавот именно "и"... мне надо самому ...   Mar 29 2009, 16:51
|- - zksystem   Цитата(ukpyr @ Mar 29 2009, 20:51) а чем ...   Mar 30 2009, 20:59
|- - Alex B._   Цитата(zksystem @ Mar 31 2009, 00:59) уго...   Mar 31 2009, 06:00
- - Ivan Kuznetzov   В общем замутил тут плеер с I2S DAC-ом на STM32F10...   Jul 26 2010, 06:36
|- - winner   Цитата(Ivan Kuznetzov @ Jul 26 2010, 10:3...   Aug 15 2010, 14:07
|- - zksystem   Цитата(winner @ Aug 15 2010, 18:07) ARM9 ...   Aug 16 2010, 07:08
- - Dron_Gus   Почитайте http://electronix.ru/forum/index.php?sho...   Jul 26 2010, 07:19
|- - Ivan Kuznetzov   Цитата(Dron_Gus @ Jul 26 2010, 13:19) Где...   Jul 27 2010, 15:21
- - Dron_Gus   Этот файл есть в оригинальном декодере. К сожалени...   Jul 28 2010, 07:34
|- - Ivan Kuznetzov   Цитата(Dron_Gus @ Jul 28 2010, 13:34) Это...   Aug 11 2010, 06:22
- - Dron_Gus   Возьмите отсюда http://www.stm32circle.com/project...   Aug 11 2010, 12:26
|- - Ivan Kuznetzov   Цитата(Dron_Gus @ Aug 11 2010, 18:26) Воз...   Aug 15 2010, 06:55
- - Dron_Gus   IAR обязательное условие? Я, когда плотно начал за...   Aug 15 2010, 09:53
2 страниц V   1 2 >


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 11:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01491 секунд с 7
ELECTRONIX ©2004-2016