|
Прочитать байты из файла (wav) с известной позиции и ими заполнить структуру
|
|||
---|---|---|---|
#18+
Структура: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Зачем нужны последние 12 байтов, сейчас не помню (в MDSN их нет, пока закомментировал), но видимо чтоб не сглючил следующий код, который на VB6 выглядит так: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
GetWavFileInfo.wavformat - это структура WAVEFORMATEX позицию в файле, с которой читать .start (ну и .length, но он особо и не нужен) я нашел Понятно что пихание тупо байтов из файла аккурат в структуру это трюк но вот как его исполнить на .Net ? Такой "синтаксис" как в VB6 в .Net похоже не поддерживается. Ну и еще не понятно как быть с Код: vbnet 1. 2.
хотя Try Catch похоже будет достаточно. VB6-Модуль я здесь 19670843 полностью выкладывал. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.09.2016, 04:12 |
|
Прочитать байты из файла (wav) с известной позиции и ими заполнить структуру
|
|||
---|---|---|---|
#18+
Сойдет? Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.
Хотя помойму в .cbSize я кладу бред сивой кобылы, но он мне и не нужен, все красивые слова про описание формата (PCM/ADPCM, моно/стерео, Bit/kHz) берутся из того что до, счас задача отобразить свойства wav-а. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.09.2016, 05:40 |
|
Прочитать байты из файла (wav) с известной позиции и ими заполнить структуру
|
|||
---|---|---|---|
#18+
Дмитрий77Сойдет?Да, если работает. Дмитрий77 Код: c# 1.
Для этого есть FileStream.Seek. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.09.2016, 05:43 |
|
Прочитать байты из файла (wav) с известной позиции и ими заполнить структуру
|
|||
---|---|---|---|
#18+
Да, работает. Проверяет что это wav- через mmioOpen...mmioClose + не спотыкаемся на заполнении структуры(можно работать с файлом), ну и пишет для юзера типа "PCM 8,000 kHz; 8 Bit; Mono"после форматирования: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42.
А, не сообразил что стримом надо двигать, а не ридером. Тогда так Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Да там 20 байт всего перед "fmt ". Хотя как вы написали конечно корректней. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.09.2016, 06:52 |
|
|
start [/forum/topic.php?fid=20&gotonew=1&tid=1400347]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
46ms |
get topic data: |
11ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 163ms |
0 / 0 |