>_ rehablogger
Система работает
← Все сессии
СЕССИЯ УСТРОЙСТВА

rehabapp_2026-09-08_10-01-31

Подключение…
Rehab Logger console · история загружается порциями по 250 записей
INFO [console] e: true, is_monitored: true, components: [{id: 55, component_side: right, segment_type: null, parts: [{id: 132, sequence_number: 1, body_point: {id: 27, mediapipe_index: 26, movenet_index: 14}, line_type: null, part_type: point}, {id: 133, sequence_number: 2, body_point: {id: 29, mediapipe_index: 28, movenet_index: 16}, line_type: null, part_type: point}, {id: 134, sequence_number: 3, body_point: {id: 33, mediapipe_index: 32, movenet_index: null}, line_type: null, part_type: point}]}, {id: 56, component_side: left, segment_type: null, parts: [{id: 135, sequence_number: 1, body_point: {id: 26, mediapipe_index: 25, movenet_index: 13}, line_type: null, part_type: point}, {id: 136, sequence_number: 2, body_point: {id: 28, mediapipe_index: 27, movenet_index: 15}, line_type: null, part_type: point}, {id: 137, sequence_number: 3, body_point: {id: 32, mediapipe_index: 31, movenet_index: null}, line_type: null, part_type: point}]}], commands: [{id: 56, command_side: right, position_number: 1, p
INFO [console] osition_message: Оставайтесь лежать правым боком камере, потяните носки стоп на себя, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Вращайте стопы в большей амплитуде}, {id: 57, command_side: left, position_number: 1, position_message: Оставайтесь лежать левым боком камере, потяните носки стоп на себя, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Вращайте стопы в большей амплитуде}, {id: 58, command_side: right, position_number: 2, position_message: Теперь потяните носки от себя, положение должно быть комфортным, fixation_message: Фиксируем значение, держите стопы от себя, error_message: Вращайте стопы в большей амплитуде}, {id: 59, command_side: left, position_number: 2, position_message: Теперь потяните носки от себя, положение должно быть комфортным, fixation_message: Фиксируем значение, держите стопы от себя, error_message: Вращайте стопы в большей амплитуде}]}]}, {id: 40, sequence_number: 3, is_monitore
INFO [console] d: true, name: Круговые движения ногой - в и.п. лежа на спине, image: https://rehabilitation.most.team/storage/exercise/photos/01KQA5HT9XV5G51WZS4TZJVDQ6.png, by_body_side: by_side, execution_order_type: symmetric, approaches_count: 2, execution_count: 6, execution_time: null, instruction: {exercise_name: Круговые движения ногой - в и.п. лежа на спине, video: https://rehabilitation.most.team/storage/exercise/videos/01KQA5HTA1S14HGRG0J5HK6SYP.mov, inventory: null, warning: Не допускайте сильного напряжения или переразгиба в пояснице, general_description: В и.п. лежа на спине. Ноги максимально выпрямлены в коленных суставах, стопы "на себя", выполнить движения по часовой стрелке, далее против часовой стрелки. Цель - тренировка четырехглавых мышц, абдукторов/аддукторов, steps: [{exercise_id: 40, sequence_number: 1, step_text: Лягте на спину, расположитесь боком рабочей ноги к камере}, {exercise_id: 40, sequence_number: 2, step_text: Руки расположите вдоль туловища ладонями вниз или в стор
INFO [console] оны для устойчивости}, {exercise_id: 40, sequence_number: 3, step_text: Ноги полностью выпрямите в коленных суставах}, {exercise_id: 40, sequence_number: 4, step_text: Стопы потяните на себя (тыльное сгибание в голеностопном суставе)}, {exercise_id: 40, sequence_number: 5, step_text: Поясницу прижмите к полу, живот слегка подтяните, чтобы избежать излишнего прогиба в пояснице}, {exercise_id: 40, sequence_number: 6, step_text: Начните выполнять круговое движение рабочей выпрямленной ногой. Нога в верхней точке должна подниматься на уровень 30°-45° градусов от пола}, {exercise_id: 40, sequence_number: 7, step_text: Направление ноги (по часовой стрелке / против часовой стрелки) меняйте после каждого повторения}]}, camera_orientation: horizontal, neural_network_type: mediapipe, base_main_command: Выполняйте круговые движения правой ногой, left_main_command: null, calibration_parameters: [{id: 51, name: Калибровка угла в колене, sequence_number: 1, calibration_parameter_type: angle, fixatio
INFO [console] n_type: max_value, fixation_order: null, deviation_critical: 10, deviation_uncritical: null, check_on_next_calibrations: true, has_division_by_side: true, is_monitored: false, components: [{id: 73, component_side: right, segment_type: null, parts: [{id: 184, sequence_number: 1, body_point: {id: 25, mediapipe_index: 24, movenet_index: 12}, line_type: null, part_type: point}, {id: 185, sequence_number: 2, body_point: {id: 27, mediapipe_index: 26, movenet_index: 14}, line_type: null, part_type: point}, {id: 186, sequence_number: 3, body_point: {id: 29, mediapipe_index: 28, movenet_index: 16}, line_type: null, part_type: point}]}, {id: 74, component_side: left, segment_type: null, parts: [{id: 187, sequence_number: 1, body_point: {id: 24, mediapipe_index: 23, movenet_index: 11}, line_type: null, part_type: point}, {id: 188, sequence_number: 2, body_point: {id: 26, mediapipe_index: 25, movenet_index: 13}, line_type: null, part_type: point}, {id: 189, sequence_number: 3, body_point: {id: 28,
INFO [console] mediapipe_index: 27, movenet_index: 15}, line_type: null, part_type: point}]}], commands: [{id: 82, command_side: right, position_number: 1, position_message: Лягте на спину правым боком к камере. Ноги должны лежать на полу прямыми, fixation_message: Фиксируем угол в колене, оставайтесь в нужном положении, error_message: Держите рабочее колено выпрямленным}, {id: 83, command_side: left, position_number: 1, position_message: Лягте на спину левым боком к камере. Ноги должны лежать на полу прямыми, fixation_message: Фиксируем угол в колене, оставайтесь в нужном положении, error_message: Держите рабочее колено выпрямленным}]}, {id: 52, name: Калибровка угла в голеностопе, sequence_number: 2, calibration_parameter_type: angle, fixation_type: min_value, fixation_order: null, deviation_critical: 10, deviation_uncritical: null, check_on_next_calibrations: true, has_division_by_side: true, is_monitored: false, components: [{id: 75, component_side: right, segment_type: null, parts: [{id: 190, s
INFO [console] equence_number: 1, body_point: {id: 27, mediapipe_index: 26, movenet_index: 14}, line_type: null, part_type: point}, {id: 191, sequence_number: 2, body_point: {id: 29, mediapipe_index: 28, movenet_index: 16}, line_type: null, part_type: point}, {id: 192, sequence_number: 3, body_point: {id: 33, mediapipe_index: 32, movenet_index: null}, line_type: null, part_type: point}]}, {id: 76, component_side: left, segment_type: null, parts: [{id: 193, sequence_number: 1, body_point: {id: 26, mediapipe_index: 25, movenet_index: 13}, line_type: null, part_type: point}, {id: 194, sequence_number: 2, body_point: {id: 28, mediapipe_index: 27, movenet_index: 15}, line_type: null, part_type: point}, {id: 195, sequence_number: 3, body_point: {id: 32, mediapipe_index: 31, movenet_index: null}, line_type: null, part_type: point}]}], commands: [{id: 84, command_side: right, position_number: 1, position_message: Потяните носок правой ноги на себя до комфортного рабочего положения, fixation_message: Фиксируе
INFO [console] м угол в голеностопе, оставайтесь в нужном положении, error_message: Стопа должна быть повернута на себя}, {id: 85, command_side: left, position_number: 1, position_message: Потяните носок левой ноги на себя до комфортного рабочего положения, fixation_message: Фиксируем угол в голеностопе, оставайтесь в нужном положении, error_message: Стопа должна быть повернута на себя}]}, {id: 53, name: Калибровка амплитуды рабочего угла, sequence_number: 3, calibration_parameter_type: angle_amplitude, fixation_type: alternate, fixation_order: max_at_first, deviation_critical: 20, deviation_uncritical: 10, check_on_next_calibrations: false, has_division_by_side: true, is_monitored: true, components: [{id: 77, component_side: right, segment_type: null, parts: [{id: 196, sequence_number: 1, body_point: {id: 13, mediapipe_index: 12, movenet_index: 6}, line_type: null, part_type: point}, {id: 197, sequence_number: 2, body_point: {id: 25, mediapipe_index: 24, movenet_index: 12}, line_type: null, part_typ
INFO [console] e: point}, {id: 198, sequence_number: 3, body_point: {id: 29, mediapipe_index: 28, movenet_index: 16}, line_type: null, part_type: point}]}, {id: 78, component_side: left, segment_type: null, parts: [{id: 199, sequence_number: 1, body_point: {id: 12, mediapipe_index: 11, movenet_index: 5}, line_type: null, part_type: point}, {id: 200, sequence_number: 2, body_point: {id: 24, mediapipe_index: 23, movenet_index: 11}, line_type: null, part_type: point}, {id: 201, sequence_number: 3, body_point: {id: 28, mediapipe_index: 27, movenet_index: 15}, line_type: null, part_type: point}]}], commands: [{id: 86, command_side: right, position_number: 1, position_message: Оставайтесь лежать на спине правым боком к камере, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Поднимайте ногу на необходимый уровень}, {id: 87, command_side: left, position_number: 1, position_message: Оставайтесь лежать на спине левым боком к камере, fixation_message: Фиксируем значение, ост
INFO [console] авайтесь в нужном положении, error_message: Поднимайте ногу на необходимый уровень}, {id: 88, command_side: right, position_number: 2, position_message: Теперь поднимите правую ногу в вверх до комфортного положения, примерный уровень: 15°-40° градусов от пола, fixation_message: Фиксируем значение, не опускайте ногу, error_message: Поднимайте ногу на необходимый уровень}, {id: 89, command_side: left, position_number: 2, position_message: Теперь поднимите левую ногу в вверх до комфортного положения, примерный уровень: 15°-40° градусов от пола, fixation_message: Фиксируем значение, не опускайте ногу, error_message: Поднимайте ногу на необходимый уровень}]}]}, {id: 41, sequence_number: 4, is_monitored: true, name: Отведение прямой ноги в сторону - В и.п. сидя с прямыми ногами с опорой руками назад за спиной, image: https://rehabilitation.most.team/storage/exercise/photos/01KQC6319E6D4MPZ50SGTNW1Q6.png, by_body_side: by_side, execution_order_type: symmetric, approaches_count: 2, execution_c
INFO [console] ount: 6, execution_time: null, instruction: {exercise_name: Отведение прямой ноги в сторону - В и.п. сидя с прямыми ногами с опорой руками назад за спиной, video: https://rehabilitation.most.team/storage/exercise/videos/01KQC6319HS0NS6B4PRV3WH9FT.mov, inventory: null, warning: Следить за тем, чтобы бедро не ротировалось (вращалось) наружу, носок стопы отведённой ноги должен “смотреть вверх”, general_description: Спина относительно поверхности может находиться от 90 до 45 градусов к полу (например, упираясь не прямыми руками, а предплечьями, отклонившись больше назад). Приподнять прямую рабочую ногу от поверхности и отвести её в сторону на сколько возможно, не опуская ногу, и вернуться в исходное положение. Можно выполнять без пауз между повторениями. Цель – тренировка мышц абдукторов бедра., steps: [{exercise_id: 41, sequence_number: 1, step_text: Сядьте на пол лицом к камере. Ноги выпрямите перед собой}, {exercise_id: 41, sequence_number: 2, step_text: Корпус отклоните назад. Спина до
INFO [console] лжна находиться под углом от 90 до 45 градусов относительно пола. Для удобства и стабильности можно опираться не на прямые руки, а на предплечья, согнув руки в локтях}, {exercise_id: 41, sequence_number: 3, step_text: Приподнимите рабочую ногу на 5-10 см }, {exercise_id: 41, sequence_number: 4, step_text: На выдохе отведите рабочую ногу в сторону (наружу) на максимально возможную амплитуду, которую позволяет ваша подвижность и физическое состояние. Движение должно происходить за счёт работы мышц бедра}, {exercise_id: 41, sequence_number: 5, step_text: На вдохе так же плавно верните ногу в исходное положение (перед собой), но не кладите её на пол до окончания подхода. Нога остаётся на весу}, {exercise_id: 41, sequence_number: 6, step_text: Повторите движение ногой заданное количество раз}]}, camera_orientation: horizontal, neural_network_type: mediapipe, base_main_command: Отводите правую ногу, left_main_command: null, calibration_parameters: [{id: 54, name: Калибровка амплитуды сегмент
INFO [console] а, sequence_number: 1, calibration_parameter_type: segment_amplitude, fixation_type: alternate, fixation_order: min_at_first, deviation_critical: 20, deviation_uncritical: 10, check_on_next_calibrations: false, has_division_by_side: true, is_monitored: true, components: [{id: 79, component_side: right, segment_type: null, parts: [{id: 202, sequence_number: 1, body_point: {id: 30, mediapipe_index: 29, movenet_index: null}, line_type: null, part_type: point}, {id: 203, sequence_number: 2, body_point: {id: 31, mediapipe_index: 30, movenet_index: null}, line_type: null, part_type: point}]}, {id: 80, component_side: left, segment_type: null, parts: [{id: 204, sequence_number: 1, body_point: {id: 30, mediapipe_index: 29, movenet_index: null}, line_type: null, part_type: point}, {id: 205, sequence_number: 2, body_point: {id: 31, mediapipe_index: 30, movenet_index: null}, line_type: null, part_type: point}]}], commands: [{id: 90, command_side: right, position_number: 1, position_message: Сядьт
INFO [console] е на пол лицом к камере. Ноги выпрямите перед собой, держите их вместе. Приподнимите правую ногу на 5-10 см, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Делайте движения в нужной амплитуде}, {id: 91, command_side: left, position_number: 1, position_message: Сядьте на пол лицом к камере. Ноги выпрямите перед собой, держите их вместе. Приподнимите левую ногу на 5-10 см, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Делайте движения в нужной амплитуде}, {id: 92, command_side: right, position_number: 2, position_message: Теперь отведите правую ногу в сторону до комфортного рабочего положения, fixation_message: Фиксируем значение, не отпускайте ногу, error_message: Делайте движения в нужной амплитуде}, {id: 93, command_side: left, position_number: 2, position_message: Теперь отведите левую ногу в сторону до комфортного рабочего положения, fixation_message: Фиксируем значение, не отпускайте ногу, error_message: Д
INFO [console] елайте движения в нужной амплитуде}]}]}, {id: 42, sequence_number: 5, is_monitored: true, name: Подъём прямой ноги в сторону - В и.п. лёжа на боку, image: https://rehabilitation.most.team/storage/exercise/photos/01KQC78495HZ7HDF3FGQ104G16.png, by_body_side: by_side, execution_order_type: isolated, approaches_count: 2, execution_count: 6, execution_time: null, instruction: {exercise_name: Подъём прямой ноги в сторону - В и.п. лёжа на боку, video: https://rehabilitation.most.team/storage/exercise/videos/01KQC78499GQQ5WEFZWRN07YFK.mov, inventory: null, warning: Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к животу, general_description: Лёжа на боку отвести верхнюю ногу в сторону (поднять). Верхняя нога не должна сильно сгибаться в бедре, т.е. отклоняться вперёд к животу. Представьте, что вы лежите на боку и прижимаетесь спиной к стене, а далее скользите пяткой верхней ноги по стене вверх. Цель – тренировка мышц абдукторов/аддукторов бедра., steps: [{exercise_id
INFO [console] : 42, sequence_number: 1, step_text: Лягте на бок так, чтобы рабочая нога была сверху}, {exercise_id: 42, sequence_number: 2, step_text: Убедитесь, что вы лежите ровно. Голова может лежать на руке или на подушке}, {exercise_id: 42, sequence_number: 3, step_text: Нижнюю ногу слегка согните в колене и тазобедренном суставе для устойчивости}, {exercise_id: 42, sequence_number: 4, step_text: Верхнюю ногу полностью выпрямите. Она должна находиться строго над нижней ногой, образуя одну линию с туловищем}, {exercise_id: 42, sequence_number: 5, step_text: Положите верхнюю руку на талию или на матрас перед собой для равновесия}, {exercise_id: 42, sequence_number: 6, step_text: На выдохе: Медленно поднимите (отведите) прямую ногу вверх. Движение должно происходить строго в плоскости тела, как будто вы отводите ногу в сторону. Нога не должна сгибаться в тазобедренном суставе и отклоняться вперёд по направлению к животу или назад по направлению к спине}, {exercise_id: 42, sequence_number: 7, step_
INFO [console] text: В верхней точке задержитесь на 1-2 секунды, сохраняя ногу прямой и чувствуя напряжение в боковой поверхности бедра и ягодице}, {exercise_id: 42, sequence_number: 8, step_text: На вдохе: Плавно, без рывка, опустите ногу в исходное положение. Старайтесь не класть ногу полностью на нижнюю, а остановитесь чуть выше, чтобы сохранить напряжение в мышцах}, {exercise_id: 42, sequence_number: 9, step_text: Повторите необходимое количество раз }]}, camera_orientation: horizontal, neural_network_type: mediapipe, base_main_command: Поднимайте и опускайте правую ногу, left_main_command: null, calibration_parameters: [{id: 55, name: Калибровка сегмента ноги, sequence_number: 1, calibration_parameter_type: one_segment, fixation_type: max_value, fixation_order: null, deviation_critical: 10, deviation_uncritical: null, check_on_next_calibrations: true, has_division_by_side: true, is_monitored: false, components: [{id: 81, component_side: right, segment_type: null, parts: [{id: 206, sequence_numbe
INFO [console] r: 1, body_point: {id: 25, mediapipe_index: 24, movenet_index: 12}, line_type: null, part_type: point}, {id: 207, sequence_number: 2, body_point: {id: 29, mediapipe_index: 28, movenet_index: 16}, line_type: null, part_type: point}]}, {id: 82, component_side: left, segment_type: null, parts: [{id: 208, sequence_number: 1, body_point: {id: 24, mediapipe_index: 23, movenet_index: 11}, line_type: null, part_type: point}, {id: 209, sequence_number: 2, body_point: {id: 28, mediapipe_index: 27, movenet_index: 15}, line_type: null, part_type: point}]}], commands: [{id: 94, command_side: right, position_number: 1, position_message: Лягте на левый бок, левую ногу согните для устойчивости. Правая нога должна лежать на другой ноге и быть продолжением корпуса, fixation_message: Фиксируем длину ноги, оставайтесь в нужном положении, error_message: Не заваливайте ногу в сторону}, {id: 95, command_side: left, position_number: 1, position_message: Лягте на правый бок, правую ногу согните для устойчивост
INFO [console] и. Левая нога должна лежать на другой ноге и быть продолжением корпуса, fixation_message: Фиксируем длину ноги, оставайтесь в нужном положении, error_message: Не заваливайте ногу в сторону}]}, {id: 56, name: Калибровка рабочего угла (угол между прямой таза и ногой), sequence_number: 2, calibration_parameter_type: angle_amplitude, fixation_type: alternate, fixation_order: min_at_first, deviation_critical: 20, deviation_uncritical: 10, check_on_next_calibrations: false, has_division_by_side: true, is_monitored: true, components: [{id: 83, component_side: right, segment_type: null, parts: [{id: 210, sequence_number: 1, body_point: {id: 24, mediapipe_index: 23, movenet_index: 11}, line_type: null, part_type: point}, {id: 211, sequence_number: 2, body_point: {id: 25, mediapipe_index: 24, movenet_index: 12}, line_type: null, part_type: point}, {id: 212, sequence_number: 3, body_point: {id: 27, mediapipe_index: 26, movenet_index: 14}, line_type: null, part_type: point}]}, {id: 84, component_s
INFO [console] ide: left, segment_type: null, parts: [{id: 213, sequence_number: 1, body_point: {id: 25, mediapipe_index: 24, movenet_index: 12}, line_type: null, part_type: point}, {id: 214, sequence_number: 2, body_point: {id: 24, mediapipe_index: 23, movenet_index: 11}, line_type: null, part_type: point}, {id: 215, sequence_number: 3, body_point: {id: 26, mediapipe_index: 25, movenet_index: 13}, line_type: null, part_type: point}]}], commands: [{id: 96, command_side: right, position_number: 1, position_message: Оставайтесь лежать на боку, правая нога - продолжение туловища, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Поднимайте ногу на необходимый уровень}, {id: 97, command_side: left, position_number: 1, position_message: Оставайтесь лежать на боку, левая нога - продолжение туловища, fixation_message: Фиксируем значение, оставайтесь в нужном положении, error_message: Поднимайте ногу на необходимый уровень}, {id: 98, command_side: right, position_number: 2,
INFO [console] position_message: Теперь поднимите правую ногу вверх до комфортной вам рабочей высоты, fixation_message: Фиксируем значение, не опускайте ногу, error_message: Поднимайте ногу на необходимый уровень}, {id: 99, command_side: left, position_number: 2, position_message: Теперь поднимите левую ногу вверх до комфортной вам рабочей высоты, fixation_message: Фиксируем значение, не опускайте ногу, error_message: Поднимайте ногу на необходимый уровень}]}]}]}}
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 new FlutterSoundPlayer (package:flutter_sound/public/flutter_sound_player.dart:200:13)
INFO [console] │ #1 new _OnboardingTrainingPageState (package:testapp/features/training/presentation/pages/onboarding_training_page.dart:24:43)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 ctor: FlutterSoundPlayer()
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._openPlayer (package:flutter_sound/public/flutter_sound_player.dart:727:13)
INFO [console] │ #1 FlutterSoundPlayer.openPlayer.<anonymous closure> (package:flutter_sound/public/flutter_sound_player.dart:721:11)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 FS:---> _openPlayer
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer.openPlayerCompleted (package:flutter_sound/public/flutter_sound_player.dart:281:13)
INFO [console] │ #1 MethodChannelFlutterSoundPlayer.channelMethodCallHandler.<anonymous closure> (package:flutter_sound_platform_interface/method_channel_flutter_sound_player.dart:84:21)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 ---> openPlayerCompleted: true
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer.openPlayerCompleted (package:flutter_sound/public/flutter_sound_player.dart:296:13)
INFO [console] │ #1 MethodChannelFlutterSoundPlayer.channelMethodCallHandler.<anonymous closure> (package:flutter_sound_platform_interface/method_channel_flutter_sound_player.dart:84:21)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 <--- openPlayerCompleted: true
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._openPlayer (package:flutter_sound/public/flutter_sound_player.dart:780:13)
INFO [console] │ #1 <asynchronous suspension>
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 FS:<--- _openPlayer
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._closePlayer (package:flutter_sound/public/flutter_sound_player.dart:822:13)
INFO [console] │ #1 FlutterSoundPlayer.closePlayer.<anonymous closure> (package:flutter_sound/public/flutter_sound_player.dart:817:14)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 FS:---> closePlayer
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._stop (package:flutter_sound/public/flutter_sound_player.dart:1826:13)
INFO [console] │ #1 FlutterSoundPlayer._closePlayer (package:flutter_sound/public/flutter_sound_player.dart:830:11)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 FS:---> _stop
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer.stopPlayerCompleted (package:flutter_sound/public/flutter_sound_player.dart:360:13)
INFO [console] │ #1 MethodChannelFlutterSoundPlayer.channelMethodCallHandler.<anonymous closure> (package:flutter_sound_platform_interface/method_channel_flutter_sound_player.dart:98:21)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 ---> stopPlayerCompleted: true
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer.stopPlayerCompleted (package:flutter_sound/public/flutter_sound_player.dart:375:13)
INFO [console] │ #1 MethodChannelFlutterSoundPlayer.channelMethodCallHandler.<anonymous closure> (package:flutter_sound_platform_interface/method_channel_flutter_sound_player.dart:98:21)
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 <--- stopPlayerCompleted: true
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._stop (package:flutter_sound/public/flutter_sound_player.dart:1885:13)
INFO [console] │ #1 <asynchronous suspension>
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] │ 🐛 FS:<--- _stop
INFO [console] └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
INFO [console] │ #0 FlutterSoundPlayer._closePlayer (package:flutter_sound/public/flutter_sound_player.dart:858:13)
INFO [console] │ #1 <asynchronous suspension>
INFO [console] ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_ROT: sensorOrient=270 deviceOrient=DeviceOrientation.landscapeRight rotDeg=180 img=720x480 -> 720x480
INFO [console] POSE_DIAG: sensorOrient=270 imgSize=720 x 480 imgFormat=35 planes=3 pixelStride=1 rowStride=768 screenSize=853x394
INFO [console] POSE_LM: [0 frame=(457,214)] [11 frame=(600,370)] [12 frame=(342,362)] [23 frame=(604,752)] [24 frame=(399,771)] frameSize=720 x 480 screenSize=853x394
INFO [console] POSE_MAP: [0 norm=(0.365,0.420)] [11 norm=(0.166,0.892)] [12 norm=(0.525,0.866)] [23 norm=(0.161,1.000)] [24 norm=(0.446,1.000)]
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-629.2,-249.7) -> (1650.3,2029.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(44.3,-159.9) -> (880.4,676.2) clamped=(44.3,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(11.9,-159.2) -> (901.6,730.6) clamped=(11.9,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-712.9,-308.7) -> (1709.5,2113.7) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-624.6,-332.0) -> (1678.7,1971.3) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-666.0,-373.7) -> (1766.6,2058.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-629.9,-316.2) -> (1692.5,2006.2) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-713.9,-358.4) -> (1761.6,2117.1) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=30(29.2fps) processed=14(13.6fps) replaced=14(13.6fps) buildMs=27.99 estimatorMs=117.07 totalMs=117.99 actualFps=13.6
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-653.6,-325.4) -> (1692.4,2020.6) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-673.9,-329.1) -> (1711.4,2056.2) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(32.9,-171.2) -> (873.0,668.9) clamped=(32.9,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-669.4,-298.9) -> (1694.9,2065.5) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-569.1,-267.8) -> (1660.6,1962.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(15.4,-126.5) -> (862.7,720.8) clamped=(15.4,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-19.7,-109.9) -> (864.1,774.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] ROI_DEBUG: corners computed rawRect=(-190.2,-659.6) -> (2488.7,2019.3) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=19(18.4fps) processed=16(15.5fps) replaced=3(2.9fps) buildMs=21.92 estimatorMs=58.98 totalMs=59.60 actualFps=15.5
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-1349.7,-125.9) -> (1425.9,2649.7) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (480.0,720.0) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-145.1,32.9) -> (557.1,735.0) clamped=(0.0,32.9) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE_METRICS: received=6(5.7fps) processed=5(4.8fps) replaced=1(1.0fps) buildMs=57.81 estimatorMs=114.05 totalMs=115.21 actualFps=4.8
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-194.2,50.4) -> (469.2,713.8) clamped=(0.0,50.4) -> (469.2,713.8) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-946.0,7.3) -> (1073.7,2027.0) clamped=(0.0,7.3) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (480.0,720.0) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-158.2,62.5) -> (517.1,737.8) clamped=(0.0,62.5) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-202.1,64.3) -> (469.3,735.7) clamped=(0.0,64.3) -> (469.3,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-255.2,68.5) -> (420.6,744.3) clamped=(0.0,68.5) -> (420.6,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-250.6,136.6) -> (397.8,784.9) clamped=(0.0,136.6) -> (397.8,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-242.5,177.5) -> (390.6,810.6) clamped=(0.0,177.5) -> (390.6,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-1417.0,-275.6) -> (1195.7,2337.1) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-1558.4,-574.2) -> (902.3,1886.5) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (480.0,720.0) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE_METRICS: received=16(14.2fps) processed=14(12.4fps) replaced=2(1.8fps) buildMs=26.29 estimatorMs=76.97 totalMs=77.87 actualFps=12.4
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-217.5,17.9) -> (716.3,951.7) clamped=(0.0,17.9) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] ROI_DEBUG: corners computed rawRect=(-898.2,-437.6) -> (1808.3,2268.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-816.1,-100.3) -> (1600.1,2315.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=8(7.7fps) processed=8(7.7fps) replaced=0(0.0fps) buildMs=39.55 estimatorMs=77.29 totalMs=78.01 actualFps=7.7
INFO [console] ROI_DEBUG: corners computed rawRect=(186.0,-90.6) -> (1194.3,917.7) clamped=(186.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=21(20.5fps) processed=19(18.6fps) replaced=2(2.0fps) buildMs=24.64 estimatorMs=53.61 totalMs=53.78 actualFps=18.6
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(189.0,-68.9) -> (1145.9,888.0) clamped=(189.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(195.8,-55.5) -> (1137.1,885.8) clamped=(195.8,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(214.5,-27.1) -> (1144.2,902.6) clamped=(214.5,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-187.5,-951.7) -> (1513.7,749.4) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-158.2,-744.2) -> (1442.5,856.5) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-148.2,-759.4) -> (1420.1,808.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=18(17.7fps) processed=19(18.7fps) replaced=0(0.0fps) buildMs=27.20 estimatorMs=53.06 totalMs=53.33 actualFps=18.7
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-138.8,-746.3) -> (1397.2,789.7) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(373.5,235.7) -> (817.9,680.1) clamped=(373.5,235.7) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(380.5,239.7) -> (802.8,662.1) clamped=(380.5,239.7) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] ROI_DEBUG: corners computed rawRect=(-972.2,-42.6) -> (1026.3,1955.8) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (480.0,720.0) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-258.2,-34.6) -> (492.1,715.7) clamped=(0.0,0.0) -> (480.0,715.7) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-242.1,-40.1) -> (545.7,747.6) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE_METRICS: received=16(14.1fps) processed=12(10.6fps) replaced=4(3.5fps) buildMs=27.01 estimatorMs=86.53 totalMs=87.35 actualFps=10.6
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-172.5,-36.8) -> (653.8,789.5) clamped=(0.0,0.0) -> (480.0,720.0) frame=480x720 screen=394x853
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-138.4,-36.1) -> (712.9,815.2) clamped=(0.0,0.0) -> (712.9,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-90.6,-44.9) -> (774.5,820.3) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-85.1,-50.9) -> (798.1,832.3) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-87.9,-37.8) -> (823.4,873.4) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-83.1,-22.5) -> (830.2,890.9) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-82.3,-24.6) -> (835.8,893.5) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-79.1,-19.4) -> (842.3,902.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-87.1,-20.4) -> (849.6,916.3) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=9(8.8fps) processed=10(9.8fps) replaced=0(0.0fps) buildMs=27.83 estimatorMs=69.11 totalMs=70.48 actualFps=9.8
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-93.8,-13.5) -> (856.1,936.4) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-100.7,-16.4) -> (854.8,939.1) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-109.4,-19.1) -> (851.6,942.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(-846.9,-198.4) -> (1654.3,2302.7) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE: landmarks=33 → emitting points
INFO [console] ROI_DEBUG: corners computed rawRect=(0.0,0.0) -> (720.0,480.0) clamped=(0.0,0.0) -> (720.0,480.0) frame=720x480 screen=853x394
INFO [console] POSE_METRICS: received=19(18.7fps) processed=17(16.8fps) replaced=1(1.0fps) buildMs=23.45 estimatorMs=50.42 totalMs=50.78 actualFps=16.8
$
250 строкUTF-8LIVE