инфа о mp3

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

инфа о mp3

Сообщение Kiryusha » 12.01.2006 (Чт) 14:29

Народ подскажите плз странички о mp3. Его принцип и прочее. Типа как там записывается сам музыкальный поток и идеи по поводу того, как читать mp3 без готовых контролов. И вообще можно ли читать mp3 по кускам, порциями. Спасибо.
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2006 (Чт) 16:47

А искал?
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 12.01.2006 (Чт) 17:11


Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 12:14

так искал но чета туго нашел всего 2-3 сайта и то не то что я хотел.
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 12:17

Конст, ну там же все по-англиски. :? я же нипипа не понимаю! Есть у нас на ру что-нибуть похожее? Я повторю вопрос, что меня интересует, можно ли мп3 файлы проигрывать по частям, т. е. если я отошлю на другой комп цепочку байт, то что это будет??? Это будет нет записью музыки??? или что это будет?
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 12:28

а без английского ты далеко не уедешь :shock:

http://www.vbaccelerator.com/home/VB/Code/vbMedia/Audio/index.asp

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 12:43

:oops: дк я его знаю..... тока плохо :)
а что по вопросу?
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 12:58

проигрывать по частям MP3-файл можно, но сам я этим не увлекался. я думаю , что тебе стоит поискать исходники на planetsourcecode

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 13:03

вот первое стоящее, что навскидку попалось

http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=64011&lngWId=1

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 13:44

у меня че та не грузится эта прога какой-то компонент не находится. Спасибо за сайт. Что-нибуть поищу.
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 16:11

а как озвучить цепочку байт???
Ну то есть я считал в буфер с микрофона цепочку байт. Я могу ее загнать в файл а потом озвучить с этим все понятно, а если мне надо отправить на другой комп, то как их озвучить после уже там????
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 16:25

может тебе надо работать через DirectSound :?:

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 16:27


Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 16:27

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

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 16:45


Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 16:56

а это небольшая подсказка:
http://www.gdcl.co.uk/downloads.htm#fsfwrap

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 17:01

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

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 13.01.2006 (Пт) 17:33

Если у тебя есть массив со звуком то можно попробовать
:)
Код: Выделить всё

Sub PlaySoundFromMem(abpic() as Byte 'твой массив со звуком)
  Dim nLow As Long
  Dim cbMem  As Long
  Dim hMem  As Long
  Dim lpMem  As Long 
    On Error GoTo Out
  nLow = LBound(abpic)
  On Error GoTo 0
  cbMem = (UBound(abpic) - nLow) + 1
  hMem = GlobalAlloc(GMEM_MOVEABLE, cbMem)
  If hMem Then
    lpMem = GlobalLock(hMem)
    If lpMem Then   
      MoveMemory ByVal lpMem, abpic(nLow), cbMem
      Call GlobalUnlock(hMem)
     PlaySound lpMem, 0&, &H4 Or &H1
    End If
    'GlobalFree hMem
  End If
End Sub
Если всё делать своими ручками, они скоро отвалятся !

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 17:58

что ты понимаешь под массивом со звуком? Если не сложно желательно кодом...
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 18:12

вот нашел что-то похожее на то, что тебе нужно:
Вложения
BASS recording.rar
(124.9 Кб) Скачиваний: 43

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 18:16

Konst_One, слыш она ошибку какую то выклянчивает. И кстати включи асю. ;)
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 13.01.2006 (Пт) 18:22

аси нет по корпоративным причинам, а протестить эту прогу я не могу на своем компе. вкрадце , она подключается к серверу в интернете, который передает потоковое аудио и потом записывает полученный поток в файл mp3 или wav , используя библиотеку bass:
http://www.un4seen.com/

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 13.01.2006 (Пт) 18:29

так, Конст, мне не нужен mp3 файл мне нужно автоматическое воспроизведение цепочки байт, которая является звуковым потоком.
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 13.01.2006 (Пт) 21:05

Под массивом со звуком я понимаю то что ты получил по винсоку, расщепленное на байты :) или как пишешь ты
цепочки байт, которая является звуковым потоком.

Правда поток должен быть wave...
Если всё делать своими ручками, они скоро отвалятся !

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 14.01.2006 (Сб) 12:30

Тогда кову есть еще вопрос что есть MoveMemory??? чета я не нашел такой API у себя не мог бы кинуть описание...
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 14.01.2006 (Сб) 12:50

То же что и CopyMemory :)
Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As Any, pSource As Any, ByVal dwLength As Long)
Если всё делать своими ручками, они скоро отвалятся !

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 14.01.2006 (Сб) 12:50

Kiryusha писал(а):Тогда кову есть еще вопрос что есть MoveMemory??? чета я не нашел такой API у себя не мог бы кинуть описание...

http://www.microsoft.com/Rus/Msdn/Activ/MSVB/Archive/WindowsAPI/CopyMemory/171.mspx
Нет ничего невозможного для человека с интеллектом.

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 14.01.2006 (Сб) 13:37

Млин че та я запутался........ :(
Растолкуйте плз следующее:
Код: Выделить всё

    Dim curPos As Long
    Dim curs As DSCURSORS
    Dim dataBuf() As Byte
    Dim dataSize As Long

    objDSCaptureBuffer.GetCurrentPosition curs
    curPos = curs.lWrite
    dataSize = curPos - lastPos
    If dataSize < 0 Then
        dataSize = (CaptureDesc.lBufferBytes - lastPos) + curPos
    End If
    ReDim dataBuf(dataSize - 1)
    objDSCaptureBuffer.ReadBuffer lastPos, dataSize, dataBuf(0), DSCBLOCK_DEFAULT
    Put #1, , dataBuf


почему сначала с dataBuf работают как с массивом (dataBuf(0)) а потом как с обычной переменной (put #1, ,dataBuf)???? И где тогда вообще хранится звук???? :?
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 14.01.2006 (Сб) 18:47

Насколько я понимаю звук хранится в dataBuf(), приведи полный код, там наверняка открывают файл для Output'a :)
Если всё делать своими ручками, они скоро отвалятся !

Kiryusha
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 216
Зарегистрирован: 30.08.2005 (Вт) 10:56
Откуда: УР, Ижевск

Сообщение Kiryusha » 15.01.2006 (Вс) 15:03

Кову ты все правильно понял я почему эту тему и поднял. Мне не нужно записывать в файл а надо их сразу отправить на другой комп и воспроизвести.
Судебно-медицинское вскрытие показало, что чукча умер в
результате судебно-медицинского вскрытия.

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

    TopList  
cron