Size: a a a

2020 September 17

AK

Anton Kirilenko in Embedded Group
какторасдавно я работал в компьютерном СЦ и какие-то два молоденьких пацана нам принесли ноут в ремонт. через день прибегают, морды красные, запыхаются - отдайте нам винт, пожалуйста!
источник

AK

Anton Kirilenko in Embedded Group
оказывается, это работники отдела К. у их начальника ноут помер, принесли нам.
источник

AK

Anton Kirilenko in Embedded Group
Dmitry Ponyatov
ты из Латвии пишешь?
ненене, из Россиянии же.
источник

A

Aleksandr Zharov in Embedded Group
Dmitry Rezvanov
У некоторых серий STM32(если речь про них) - есть настраиваемый тайм-аут, по которому выдаётся прерывание. В общем случае - по первому байту запускать таймер, по каждому следующему - сбрасывать.
У sam7 есть встроенный в uart таймер. Modbus одно удлвольствие делать
источник

u

uis in Embedded Group
Anton Kirilenko
оказывается, это работники отдела К. у их начальника ноут помер, принесли нам.
Что на винте было?
источник

AK

Anton Kirilenko in Embedded Group
я ж не знал, что это винт начальника из отдела К :) поэтому ничего не скопировал. а когда поцЫки прибежали - надо было сразу отдавать диск
источник

u

uis in Embedded Group
Anton Kirilenko
я ж не знал, что это винт начальника из отдела К :) поэтому ничего не скопировал. а когда поцЫки прибежали - надо было сразу отдавать диск
Нужна машина времени
источник

u

uis in Embedded Group
Anton Kirilenko
проверяются лицензии на ПО. никсы не требуют покупки лицензий.
Прост помню было время, когда тригерились на линуксы
источник

AK

Anton Kirilenko in Embedded Group
да ну... вряд ли у него была там отборная и достойная порнуха
источник

u

uis in Embedded Group
источник

MN

Mikhail Natalenko in Embedded Group
Всем прив! Тут наверняка есть люди, которые работали с RTP. Объясните, пожалуйста, как формируется timestamp и sequence number в заголовке. Я дебажу систему, в которой есть рабочий пример записанного RTP потока, видео отображается правильно, всё в порядке, но в поле timestamp у пакетов какая-то дичь: во-первых, несколько идущих подряд пакетов имеют один и тот же таймстемп, во-вторых, когда он всё-таки меняется, в этом нет никакой логики. Число может уменьшиться ( не похоже на  переполнение) может значительно увеличиться, может чуть-чуть увеличиться. И похожая хрень с  sequence number он должен увеличиваться на 1, но в реальности он увеличитвается на случайное значение в районе 200. WTF?
источник

SK

Stas Koynov in Embedded Group
Mikhail Natalenko
Всем прив! Тут наверняка есть люди, которые работали с RTP. Объясните, пожалуйста, как формируется timestamp и sequence number в заголовке. Я дебажу систему, в которой есть рабочий пример записанного RTP потока, видео отображается правильно, всё в порядке, но в поле timestamp у пакетов какая-то дичь: во-первых, несколько идущих подряд пакетов имеют один и тот же таймстемп, во-вторых, когда он всё-таки меняется, в этом нет никакой логики. Число может уменьшиться ( не похоже на  переполнение) может значительно увеличиться, может чуть-чуть увеличиться. И похожая хрень с  sequence number он должен увеличиваться на 1, но в реальности он увеличитвается на случайное значение в районе 200. WTF?
/*
* RTP_timestamp = 0; //for first frame
*
* RTP_timestamp += delta_ts; //for next frames
*
* delta_ts = 90000/fps //  90000 see RTSP/RTP protocol
*
* fps - frame per second
*
* fps  =  1/sec  == 1000 000 / usec
*
* sec\usec - number sec\usec between frames
*
* delta_ts = 90000/fps  == 90000 * usec /1000000
*
*/
uint32_t get_rtp_delta_ts(struct RTSP_Session *session)
{
   struct timeval  current_time, res_time;

   gettimeofday(&current_time, 0);
   timersub(&current_time, &session->time_last_frame, &res_time);
   session->time_last_frame = current_time;

   return  (90*TIME_IN_USEC2(res_time)/1024);
}
источник

AC

Anton Chulev in Embedded Group
обычно в timestamp берут 90000 "попугаев" в секунду
источник

AC

Anton Chulev in Embedded Group
т.е. если кадры идут с частотйо 25 fps, то ts будет увеличен на 90000/25 = 3600 единиц
источник

MN

Mikhail Natalenko in Embedded Group
Блин, ну это всё понятно. В этом то и вопрос, почему между валидными кадрами я вижу какую-то хрень, вместо дельты размером ~3600
источник

AC

Anton Chulev in Embedded Group
т.е. один кадр как парвило больше размера одного IP пакета, то они бьются на кусочки, и у все кусочков от одного кадра единый ts - по нему клиенты эти кадры потом и собирает, а seqno - просто инкрементальный счетчик, по нему можно понять "Где место пакет" и обнаружить "пропуск" (потерю пакета  про сети)
источник

AC

Anton Chulev in Embedded Group
ну вообще, строго говоря, на том же RTSP клиент и сервер могут договориться о каком-то другом значении, не о 90000 )на практике не встречал)
источник

MN

Mikhail Natalenko in Embedded Group
Я не нашёл пакетов, между которыми seq num  различался бы в единицу
источник

MN

Mikhail Natalenko in Embedded Group
Anton Chulev
ну вообще, строго говоря, на том же RTSP клиент и сервер могут договориться о каком-то другом значении, не о 90000 )на практике не встречал)
Я бы это увидел в SDP, там 90000
источник

MN

Mikhail Natalenko in Embedded Group
Другими словами - я наблюдаю аномалию?
источник