Russian Qt Forum
Апрель 27, 2024, 04:32 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Qt + QT  (Прочитано 8568 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« : Июль 08, 2014, 19:49 »

Добрый день

Имею обильный нативный код QT (QuickTime) (под Mac и Вындоуз) и ОЧЕНЬ хочу избавиться от его нативности. Трудно поддерживать и он глухо 32-битный. Но куда/как соскочить? Ничего кросс-платформенного не видно, гугление натыкается на объяснение разницы QT/t - и дальше этого дело не идет. Поэтому здесь принимаются советы и на уровне слухов, что сказала одна бабушка и.т.п.  Улыбающийся

Спасибо
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #1 : Июль 08, 2014, 21:38 »

Добрый день

Имею обильный нативный код QT (QuickTime) (под Mac и Вындоуз) и ОЧЕНЬ хочу избавиться от его нативности. Трудно поддерживать и он глухо 32-битный. Но куда/как соскочить? Ничего кросс-платформенного не видно, гугление натыкается на объяснение разницы QT/t - и дальше этого дело не идет. Поэтому здесь принимаются советы и на уровне слухов, что сказала одна бабушка и.т.п.  Улыбающийся

Спасибо

Смотря что надо. Qt Multimedia, или в тяжелом случае FFMPEG, тебе помогут.
« Последнее редактирование: Июль 08, 2014, 21:40 от navrocky » Записан

Гугль в помощь
Bepec
Гость
« Ответ #2 : Июль 08, 2014, 22:52 »

Я от одной бабушки слышал, что нужно всё переписать и оно поможет Веселый

PS и от ревматизма тоже ^.^
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Июль 09, 2014, 09:32 »

Смотря что надо. Qt Multimedia, или в тяжелом случае FFMPEG, тебе помогут.
По поводу "что надо". Крутить мувики - ну надо, но в году раз. Др дело QT очень мощный загрузчик. Дал ему файл напр .pdf - он загрузил. Дал tiff 2 байта на канал - загрузил. Вообще формат о котором и не слышал - грузит. Ну и вывод в .mov файл никто не отменял.

Поэтому речь идет не о замене/переписывании этого ф-ционала, а о "кросс-платформенной обертке" (типа Qt). Но увы, что-то такой не видно  Плачущий

Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #4 : Июль 09, 2014, 10:53 »

Кросс-платформенный универсальный комбайн...
Хм... это фантастика)

Хотя, наверное, слон типа WebView осилит это.
« Последнее редактирование: Июль 09, 2014, 10:56 от GreatSnake » Записан

Qt 5.11/4.8.7 (X11/Win)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #5 : Июль 09, 2014, 11:47 »

Кросс-платформенный универсальный комбайн...
Хм... это фантастика)

Хотя, наверное, слон типа WebView осилит это.
Там есть SDK и под Вындоуз (на Mac он родной), но все это очень "развесисто", много веток что уже deprecated/legacy, взамен новые. Напр сейчас латаю (на Вындоуз)
Код
C++ (Qt)
GrafPtr oldWindow;
 
::GetPort (&oldWindow);
::MacSetPort ((GrafPtr) GetWindowPort(mMovieData->mQTMovieWindow));
::MCDraw(mMovieData->mQTMovieController, mMovieData->mQTMovieWindow);
if (oldWindow != NULL)
::MacSetPort(oldWindow);
 
MCDraw рисует бегунок мувика со всеми кнопарями - хорошо, но он выводит это на экран, а тут QPainter ..  Плачущий Попробовал WA_PaintOnScreen - не проходит.
Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #6 : Июль 11, 2014, 14:09 »

очевидно же либо использовать встроенные в QtWidgets виджеты либо свои писать.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #7 : Июль 11, 2014, 14:48 »

очевидно же либо использовать встроенные в QtWidgets виджеты либо свои писать.
Это подход типа "с грыжей на танк", в чем убеждает беглый просмотр документации
Записан
vulko
Гость
« Ответ #8 : Июль 18, 2014, 13:37 »

если я правильно понял постановку вопроса, то нужно сделать обертку вокруг изначально не кроссплатформенного кода, чтобы он магически стал кроссплатформенным...

такое в общем невозможно.

нужно писать либо разные имплиментации большинства модулей (все что завязано на железяках и дровах - мультимедиа и т.п.), а уж потом обернуть это можно чем угодно, либо если имплементации уже есть, нужно делать абстрактные обертки для всех таких API и использовать нужные в зависимости от ОС.
но тут ещё с билд процедурой прибавиться гемора...
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #9 : Июль 18, 2014, 14:13 »

если я правильно понял постановку вопроса, то нужно сделать обертку вокруг изначально не кроссплатформенного кода, чтобы он магически стал кроссплатформенным...

такое в общем невозможно.
Вполне понятное желание пофилософствовать (отдыхая от трудового дня), а заодно и показать силу своего логического мЫшления, объясняя "дважды два" Улыбающийся Впрочем тут такая безнадюга что я бы послушал и это - было бы хоть отдаленное представление о QT

нужно писать либо разные имплиментации большинства модулей (все что завязано на железяках и дровах - мультимедиа и т.п.), а уж потом обернуть это можно чем угодно, либо если имплементации уже есть, нужно делать абстрактные обертки для всех таких API и использовать нужные в зависимости от ОС.
но тут ещё с билд процедурой прибавиться гемора...
Я без понятия как писать "свои имплементации" - самому переписать сотню-другую (одних только) кодеков - фантастика.

Почти весь используемый QT код кросс-платформенный. Пример что я приводил выше компилится как на Mac так и на Вындоуз. Беда в том что оно клинит (как тот же пример) и что это все 32-bit. Надо искать замену - но в упор не видно на что. Apple в своем стиле - похерил все предыдущее и предоставил новый фреймворк (не помню сейчас как называется, не суть). Там все 32/64 и наверняка "по последнему слову". Но на Вындоуз ничего нового не видно. Cделать 32bit exe и звать ее через shared memory из приложения 64 - др ходов пока не видно.

В общем вопрос был чисто шкурный, типа где чего достать.
Записан
vulko
Гость
« Ответ #10 : Июль 18, 2014, 14:51 »

Цитировать
Я без понятия как писать "свои имплементации" - самому переписать сотню-другую (одних только) кодеков - фантастика.,
Кодеки не нужно переписывать, они должны быть в .dll/.a виде для винды и osx соотв.

А вот работу с ними, возможно придется. По крайней мере работа с теми же аудио девайсами на win и osx совершенно разная. Речь шла именно о переписывании подобных модулей в приложении, а не переписывании кодеков.

Цитировать
Почти весь используемый QT код кросс-платформенный. Пример что я приводил выше компилится как на Mac так и на Вындоуз. Беда в том что оно клинит (как тот же пример) и что это все 32-bit

не вижу никаких проблем с 32-х битными приложениями на винде. никто не отменял обратную аппаратную совместимость.
проблема тут скорее всего в другом, а именно неверном использовании quick time.

пример этот вообще ниочем. тут все-таки форум о qt, а не форум по quick time и использованию их api.

Цитировать
Cделать 32bit exe и звать ее через shared memory из приложения 64 - др ходов пока не видно.

ааа... взрыв мозга... нахрена 64 бита вообще? адресного пространства катастрофически не хватает?
Записан
andrew.k
Гость
« Ответ #11 : Август 21, 2014, 17:01 »

Я от одной бабушки слышал, что нужно всё переписать и оно поможет Веселый

PS и от ревматизма тоже ^.^

Прошло пару лет, а сообщения вереса, все такие же бесполезные. Никакого развития.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #12 : Август 21, 2014, 17:12 »

Прошло пару лет, а сообщения вереса, все такие же бесполезные. Никакого развития.
Ну у того кто упорно пытается его критиковать - развития никак не больше Улыбающийся Получается Бивис и Баттхед  Улыбающийся
Записан
Bepec
Гость
« Ответ #13 : Август 21, 2014, 18:13 »

Веселый Развитие есть, просто вам не видно - шорки на глазах Улыбающийся
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #14 : Август 21, 2014, 18:25 »

Веселый Развитие есть
Ну разве что "в обратную сторону". Навскидку я не могу припомнить ни одного поста где Вы сказали хоть что-то по делу. Или "масло масляное" или вообще не в тему или "что-то слышал" - но не к месту. Как человек пожилой я понимаю что обижаться на Вас глупо, а критиковать бесполезно Улыбающийся Но иногда (обычно когда работа не выходит) Вы своей болтовней раздражаете безумно  Плачущий
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.08 секунд. Запросов: 22.