Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155

Сжатие потока кадров

04.06.2013, 22:48. Показов 1378. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть клиент есть сервер.
Клиент передает изображения серверу, но уж очень много трафика просит.
Какими способами можно сжать этот поток изображений?

Сразу оговорюсь, что клиент обрабатывает кадры в одном потоке а отсылает в другом. все пакеты у меня группируются, т.е. если перый кадр не отослался и запасной кадр еще остается запасным, то запасной удаляется и заменяется новым. после того как первый кадр отсылается, запасной становится первым и так по кругу.
(кому надо поймет почему так пакеты организованы). То есть отсылать относительные изменения от предыдущего кадра не получится ибо часть пакетов может теряться по разным причинам.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.06.2013, 22:48
Ответы с готовыми решениями:

Сделать анимацию облаков из 1493 кадров размером 1920х1080 со скоростью 25 кадров в секунду
Пытаюсь сделать анимацию облаков из 1493 кадров размером 1920х1080 со скоростью 25 кадров в секунду. <Window...

Фрагментное сжатие последовательных кадров/Изображений на Qt
Мне нужно через интервал времени скринить дисплей на хосте и передавать изображение на другой хост, а вместе с этим уменьшить объём...

Обработка потока кадров dvb-s
Доброго времени суток, Уважаемые программисты. Столкнулся с такой проблемой: есть некий цифровой поток, известно, что поток содержит...

12
177 / 94 / 10
Регистрация: 27.05.2013
Сообщений: 290
05.06.2013, 01:00
архивировать lzma попробуй
0
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155
05.06.2013, 02:14  [ТС]
попробовал. время создания кадра выросло в 4 раза до 200мс. сжимает процентов на 20
0
177 / 94 / 10
Регистрация: 27.05.2013
Сообщений: 290
05.06.2013, 09:28
Скинь для примера пачку кадров
0
05.06.2013, 14:45

Не по теме:

А почему нельзя делать запасной вариант изменений относительно текущего кадра?

0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,233
05.06.2013, 14:58
Из вики: (сжатие без потерь)
RLE — используется в форматах PCX — в качестве основного метода и в форматах BMP, TGA, TIFF в качестве одного из доступных.
LZW — используется в формате GIF
LZ-Huffman — используется в формате PNG
перый кадр не отослался и запасной кадр еще остается запасным, то запасной удаляется и заменяется новым
мм, Запасной или просто последующий? Если последующий, то почему нельзя отправлять? Поясните, пожалуйста, этот момент.
Как понял, если это просто последующий, то что-то типа: потеря информации неприемлема.
0
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155
05.06.2013, 15:08  [ТС]
обьясняю систему.
Допустим мы отслыаем классу, который отвечает за работу с потоками кадр.
он становит его в очередь на отправку.
Тутже снова посылаем кадр. Тот самый класс делает его запасным, и отправить после отправки первого.
и допустим тутже снова посылаем кадр. Тогда класс заменяет запасной кадр новым запасным кадром.

Таким образом кадры передаются ровно в той степени, сколь их может отсылать тот самый класс.
Потому потери пакетов будут.
Есть конечно вариант сделать запрос получения кадра и ответ со всевозможными проверками, и тогда уже работать с разницей в кадрах, но это сильно замедлит всю работу.
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,233
05.06.2013, 15:08
Зачем вообще нужен запасной, если он удаляется при потере основного?
0
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155
05.06.2013, 15:10  [ТС]
основной не теряется. Основной отправляется. сразу за ним отправляется запасной
Подумай что будет с видео и тд если не будет запасного с самой новой инфой
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,233
05.06.2013, 15:13
Цитата Сообщение от Villain512 Посмотреть сообщение
Таким образом кадры передаются ровно в той степени, сколь их может отсылать тот самый класс.
Окай, это понял. Регулируем интенсивность отправки. Все-таки это следующий кадр.(?) А почему нельзя повторно отправить основной кадр? Важна непрерывность?
0
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155
05.06.2013, 15:14  [ТС]
зачем отправлять старый кадр если есть новый?
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,233
05.06.2013, 15:16
Цитата Сообщение от Villain512 Посмотреть сообщение
о это сильно замедлит всю работу.
А, ну все. Пробуйте сами реализовать алгоритмы сжатия. Если качеством можно слегка пренебречь, то можно и сжатие с потерями использовать.

Добавлено через 1 минуту
Цитата Сообщение от Villain512 Посмотреть сообщение
зачем отправлять старый кадр если есть новый?
Ну понял, важна непрерывность.(скорость)
0
2 / 2 / 1
Регистрация: 19.01.2013
Сообщений: 155
05.06.2013, 15:18  [ТС]
Я пока "решил" проблему добавив ползунок выбора качества жатия жпег.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.06.2013, 15:18
Помогаю со студенческими работами здесь

Сжатие и передача аудио/видео потока
Изучаю android программирование на практике. Пишу приложение, превращающее телефон в подключенную через internet камеру. 1. Недокамера,...

Создание кадров с периодичностью 1 секунда и последующая обработка кадров
Добрый день! Я в матлабе новичок и хотел бы попросить помощи для написания кода. Мне нужно, чтобы происходила кадровая съемка с...

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

Сжатие звука с потерями и обратно (или иное сжатие с потерями)
Доброго всем времени суток. Столкнулся с такой проблемой, есть канал связи с маленькой скоростью на одном конце SDR приемник (дает...

Не получается с вторичного потока обратиться напрямую к объекту из главного потока
Добрый день. Проблема заключается в том что не могу в WPF с вторичного потока обратится на прямую к объекту из главного потока. WPF пока...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru