|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
25.03.2017, 05:57 | #1 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
gnuradio, Может есть у кого код который записывает циклично семплы ?
Привет, Может есть у кого код который записывает циклично семплы ?
Что бы можно было записывать последнии 100 - 300 метров. Ато место на харде просто мгновенно сжирается.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
25.03.2017, 18:21 | #2 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Хотел добавить, что не обязательно это должно быть gnu-radio.
Любой код, на любом языке. Главное что бы он семблы не дробил. Работа с usb. Да нужно наверное сказать что это не дляпродажи или еще что. Я радио любитель, дак что это просто хобби!
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
25.03.2017, 21:31 | #3 |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
...циклично-то без проблем, достаточно писать в tfilestream и position переставлять на размер сэмпла, проверять сколько до конца. Бяка в том, что в RAW вы не узнаете потом, где же был конец и продолжение записи.
Более оптимальный путь - писать с эфира кусками с новой датой-временем создания в имени файлов и удалять самые старые записи по двум признакам: 1- либо контролировать превышение размера заданного каталога 2- либо контролировать оставшееся место на диске прямой доступ к SDR из Delphi |
25.03.2017, 22:41 | #4 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
А можно по подробнее про "tfilestream и position" ?
Так как не не важно знать начало и конец, по сути я и не знаю начало и конец. Время от времени есть некоторые сигналы, но они очень редие, и мне нужно из записать. Если бы их мог писать в рам циклично, к примеру 1 Гб это дас мне примерно 10 секунд по 100 мб/с. И я смогу уже по неким признакам программно или вручную тормазнуть запись. У не прервать на половине запись!
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
26.03.2017, 18:41 | #6 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Да, спасибо это я видел. Это не совсем то что я имел введу.
днный код просто затирает все что есть, при таком раскладе можно потерять данные. я же имел введу циклический сдвиг всего Гб если буфер переполнен Наверное такое ни кому не нужно было еще. Буду писать сам. Если тоже интересно, выложу тут. Правда чип у меня другой. Спасибо за помощь.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
26.03.2017, 21:47 | #7 | |
Форумчанин
Регистрация: 23.01.2016
Сообщений: 608
|
Данный код затирает данные, что после (выше) текущей позиции в файле и обеспечивает циклическую непрерывную запись плавающим окном размерностью буфера по файлу, обеспечивая сохранность последнего записанного "гигабайта".
Если же нужно обеспечить сохранность данных при перезапуске программы с предыдущей сессии, то достаточно три первых строки создания файла по fmcreate обернуть условием проверки существования файла - fileexists() и выработать критерий сохранения и восстановления позиции записи mem.position из предыдущей сессии (допустим в имени файла или создавать сразу файл со своей заданной структурой - шапкой-заголовком и данными). Такие пироги. Цитата:
|
|
27.03.2017, 00:41 | #8 | ||
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Цитата:
Как уже сказал, мне нужет сдвиг данных а не перезапись. И соотвестственно только в памяти напряму, без файлов, так как не имею в наличии супер быстрых hdd/ssd. Цитата:
если ежесекундно я молучаю 20 миллионов семплево а в памяти помещается 200 миллионов семплов, то двигать по 20 лямов в лево, а новый ставить в перед. Да, проблем то нет. Просто я думал можт кто уже писал такое, что бы не тратить время на то что уже написано и отлажено.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
||
27.03.2017, 07:26 | #9 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
Я одного не понял - зачем эти данные двигать?
Что мешает их читать в нужном порядке? Гляньте для интереса: https://msdn.microsoft.com/ru-ru/lib...(v=vs.85).aspx |
27.03.2017, 07:59 | #10 |
юзер как все
Участник клуба
Регистрация: 10.01.2012
Сообщений: 1,586
|
Если в 3х словах. Каждую секунду я получаю 100-120 МБ.
В какой момент я увижу что получил инфу кторая мне нужна, я не знаю. Это может быть 10 секунд, а можут быть 4 часа. Само собой не одного харда не хватит. Да и не правильно, просто так гонять так хард, для это есть быстрая рам. На мониторе я вижу текущую секунду и предидущие 9. Это как пример. И в тот момент когда я увидел что есть инфа которую я жду, я выхожу и программы, и у меня есть 9 секунд на это, прежде чем "моя нужная секунда" не сдвинется окончательно ха "горизонт событий". И все 10 секунд по 120 МБ каждая, сохраняются один раз на хард, для последующей обработки.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Таблицы Юнга, может у кого есть код? | nikcr7 | Помощь студентам | 0 | 01.02.2012 18:37 |
Может у кого есть исходники | Slimmi | C# (си шарп) | 3 | 29.03.2011 13:54 |
Исправить код , который записывает реквизиты заполненого документа в реестр | ХочуЗнать | Microsoft Office Excel | 0 | 03.12.2009 21:30 |