Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Embarcadero RAD Studio

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322

Открыть новую тему     Написать ответ в эту тему

V1s1ter



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
         
Обсуждаем новые возможности и баги
 
Просьба писать про Embarcadero RAD Studio XE5, XE6, XE7, XE8, 10.x (Seattle, Berlin,Tokyo)
  По вопросам скачивания - Тема в Варезнике (lite-версии тут)
  Вопросы по неюникодным версиям Delphi — шестая бумага
  Бесплатные Компоненты и утилиты для Delphi/BCB/FreePascal/Lazarus
  Коммерческие компоненты и утилиты для Delphi/BCB
  Вопросы по компонентам для Delphi, C++ Builder разных версий
  Новые языковые возможности, начиная с Delphi 2005 по XE4 — здесь, и New!здесь еще
  Англоязычный официальный форум Embarcadero — здесь
  Embarcadero Quality Central, веб интерфейс — здесь, новый Quality Portal тут
  Программирование на Delphi — викиверситет
  Другие ресурсы
   Предыдущие бумаги
 
     Вопросы ..XE4       Вопросы ..XE3    Вопросы ..XE2      
  Вопросы ..2009-XE    Вопросы ..<2009 / ч.5    Вопросы ..<2009 / ч.4      
  Вопросы ..<2009 / ч.3    Вопросы ..Delphi 2 / ч.2    Вопросы ..Delphi  

  Выключение встроенного эксперта Castalia  для XE8 (иногда помогает при вылетах и тормозах)  
  Полезные плагины(эксперты)

Всего записей: 948 | Зарегистр. 06-02-2007 | Отправлено: 15:25 11-09-2013 | Исправлено: Komandor, 18:58 18-03-2022
asutp2

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Steepe_Hare
 

Цитата:
Господа, как создать avi или видео в другом формате из bmp-картинок? Помню, что для VCL был компонент TAviWriter. А для Firemonkey?

 
Используй библиотеку FFVCL, она правда платная, но твою задачу решит в 5 строк кода

Всего записей: 785 | Зарегистр. 22-10-2004 | Отправлено: 18:19 21-10-2016
antonpv



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sulphide
stanzdor
Спасибо за ответы по стримингу видео. Есть тут кто-то, кто для этих задач (видетрансляция) использовал FFVCL или RvMedia. Еще нашел вот такого зверя - https://www.medialooks.com/mformats/ - очень солидный функционал, вот что умеет в стартовой редакции за 899 баксов:
- Grab video from a web cam or other DirectShow-based source.
- Share a single video source between several processes or applications.
- Mix several video streams and use transition effects.
- Overlay simple text and images (.GIF, .JPG, .PNG).
- Play and write to MP4, QuickTime, MPEG-2, DV, MKV, AVI and other file formats.
- Receive and stream to RTMP, HTTP, UDP and other network streaming formats.
 
За $2850 умеет хардварно кодировать/декодировать.

Всего записей: 65 | Зарегистр. 18-10-2012 | Отправлено: 15:11 24-10-2016 | Исправлено: antonpv, 15:12 24-10-2016
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
antonpv
Еще такая либа есть: http://www.mitov.com/products/videolab И упрощенный вариант: http://www.mitov.com/products/basicvideo

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 15:40 24-10-2016 | Исправлено: Frodo_Torbins, 15:52 24-10-2016
antonpv



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
Она  умеет стримить видео вместе с аудиопотоком? Вообще я где-то 8-9 лет назад пользовался компонентами товарища Бояна Митова, только для работы со звуковыми файлами, даже переписывались с ним какое-то время... Тогда можно было бесплатно его либы качать и использовать (только без исходников), насколько я помню. В любом случае спасибо, буду посмотреть.

Всего записей: 65 | Зарегистр. 18-10-2012 | Отправлено: 15:52 24-10-2016
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
antonpv
Аудио тоже умеет, но для особых хотелок есть отдельная либа. Для комуникации по сети может понадобится либа CommunicationLab.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 16:01 24-10-2016
Sulphide

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Еще нашел вот такого зверя - https://www.medialooks.com/mformats/ - очень солидный функционал, вот что умеет в стартовой редакции за 899 баксов:

Я так понял это для какого-то их же хардварного решения SDK... а не просто набор компонентов. Эх вот бы абракадабровцы (или кто они там теперь) взяли на вооружение ffpmeg для дельфи и c++ с хардварным воспроизведением для всех платформ... цены бы такому решению не было... Правда учитывая с какой скоростью меняется sdk ffmpeg с каждой версией вплоть до кардинально противоположного, работы там непочатый край конечно переводить сишные хедеры на паскакаль...

Всего записей: 277 | Зарегистр. 20-03-2008 | Отправлено: 22:35 24-10-2016 | Исправлено: Sulphide, 22:43 24-10-2016
antonpv



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sulphide
Не совсем так, просто там нужно либо готовый медиасервер использовать, либо писать свой с передаче через UDP, например. То есть, они позиционируют свой продукт как нечто, предназначенное для стриминга, броадкаста, что не есть видеочат, но задачи похожие.  
В общем, пока мне больше всего подходит RvMedia + они заявляют, что умеют работать с ffmpeg & gstreamer, что меня несказанно радует. Да цена в 300 бакинских как бы приятнее. Короче, я в печали раздумьях...

Всего записей: 65 | Зарегистр. 18-10-2012 | Отправлено: 10:17 25-10-2016
ItsJustMe

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую вас, гуру поделок Абракадабры!
В папке Studio\18.0\source лежат исходники некоторых модулей. В папке Studio\18.0\lib\win32(64) лежат dcu. Я поменял один из исходников, удалил соответствующие dcu из lib, но все равно это девелоперское позорище компилирует так, как и компилировало со старым неизмененным модулем. Вероятно, надо что-то еще где-то поменять.
Вопрос: что надо сделать, чтобы изменить ее "системный" модуль? Модуль, который поставляется вместе с ней и исходники которого лежат в Studio\18.0\source?
 
Да, и как этот измененный модуль откомпилировать? Я взял модуль из source (pas файл), поменял его, включил в свой проект, собрал проект, но dcu для этого pas в папке проекта не появился. Похоже, при сборке проекта она брала (естественно) "системный" свой модуль с таким же названием, и посчитала, что тот pas, что включен в проект, компилировать вовсе не нужно. Такое поведение - не компиляция pas файла в проекте - вообще странно. Ошибок никаких нет, но и dcu тоже нет. Для всех других файлов в проекте dcu есть, а для этого нет.

Всего записей: 2025 | Зарегистр. 02-09-2005 | Отправлено: 10:30 26-10-2016 | Исправлено: ItsJustMe, 14:44 26-10-2016
kaz_av

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ItsJustMe
Добавь директорию с исходниками в search paths проекта.

Всего записей: 437 | Зарегистр. 15-02-2006 | Отправлено: 11:32 26-10-2016
asutp2

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ItsJustMe, с таким отношением поменяй платформу разработки и будет тебе счастье

Всего записей: 785 | Зарегистр. 22-10-2004 | Отправлено: 12:42 26-10-2016
Alexey_Gawrilow



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ItsJustMe
Сколько желчи...Зачем таки есть кактус?
 
Последователи проклянут - править системныебазовые библиотеки дело неблагодарное.
 
Есть несколько способов изменить поведение классов/библиотек на уровне приложения.
 
Простые/легальные
- class inheritance/method override
- windows message (Sub|Super)Class'ing
 
Простые/когда понимаешь как работает твой компилятор
- class friend
- class interposer, в Рунете AKA "Метод Geo"
- proc interposer
Inteposer работает сверху вниз.
Экранируешь класс/функцию.
 
Nobody stop me/нужно знать как устроено
- class VMT hack/подмена методов
- proc hack/подмена процедур
 
Добавлено:

Цитата:
поделок

Недостатки есть во всех языках/платформах/средах/бд.
 
И зависит от точки зрения.
 
Хейтят обычно то, что не понимают / или не умеют готовить.
 
Было где-то классно показано(то ли  SQL.RU, или RSDN.ru), когда одному человеку(спецу по A) дают заценить/сравнить с B:
- тут не так,
- то не этак
- здесь неудобно
.. и так ведь понятно, что фигня.
 
Короче к объективным оценка отношения не имеет никакого.
Только привычки, только предвзятость.
 


----------
C уважением, Алексей.
-----------------------------------------------
Хороших %s не бывает — бывает не худший вариант.

Всего записей: 640 | Зарегистр. 08-09-2003 | Отправлено: 13:38 26-10-2016
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ItsJustMe
Если мне нужно править системный модуль, то я просто ложу подправленный pas рядом с файлом проекта (dpr). Компилятор сам все подхватывает. Но это только если компилить без рантайм пакетов. Если с рантайм пакетами, то либо использовать способы, которые предложил Alexey_Gawrilow, либо перекомпилировать нужные пакеты. Но с rtlX.bpl не все так просто, нужно инструкцию в инете смотреть.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 15:17 26-10-2016
ItsJustMe

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins

Цитата:
Если мне нужно править системный модуль, то я просто ложу подправленный pas рядом с файлом проекта (dpr).

Да, я так и сделал. То есть, я взял pas файл из папки source (Winapi.D3D11_1.pas), поменял в нем, что мне нужно, положил его в папку с dpr, включил в проект, попробовал собрать проект. Проект не собрался, так как все равно подключался старый модуль (откуда не знаю, что я и хочу понять), и код, который использовал код из измененного модуля, выдавал ошибку. Ладно, я его закомментировал, собрал проект. Проект собрался. Захожу в папку Win32\Debug - есть все dcu из pas файлов проекта, кроме(!) dcu этого файла (Winapi.D3D11_1.pas). Так что первый вопрос: почему он не откомпилировался?
Если его переименовать, например, Winapi.D3D11_1_m.pas (и, соответственно, все uses заменить на Winapi.D3D11_1_m), то все собирается и dcu появляется. Но я хочу откомпилировать его с его оригинальным именем, чтобы потом заменить "системный" Winapi.D3D11_1 на этот новый. Как заменить, я пока не знаю, простое удаление Winapi.D3D11_1.dcu из lib эффекта не имело, abomination все равно откуда-то брала этот модуль.
Поэтому я и ищу вашей помощи. Как откомпилировать с оригинальным именем и как потом заменить.

Всего записей: 2025 | Зарегистр. 02-09-2005 | Отправлено: 19:21 26-10-2016 | Исправлено: ItsJustMe, 19:45 26-10-2016
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ItsJustMe
Если у вас стоит IDEFixPack, или нечто подобное, то отключите его. Потом через Process Monitor гляньте, откуда компиль берет этот файл. В папке lib он должен повторятся четыре раза: в debug и release версии для 32-х и 64-х бит. Но подменять там ничего не надо, просто со своим рабочим проектом держите подправленую версию.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 21:16 26-10-2016
VadimLou



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Так что первый вопрос: почему он не откомпилировался?  

Как раньше писали - скорее всего этот модуль в пакетах. Нужно отключить пакеты.

Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 20:37 27-10-2016
ItsJustMe

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VadimLou

Цитата:
Нужно отключить пакеты.

Их, вроде, не отключить, если делаешь package (bpl). The abomination is such an abomination.
(Но попробую чуть позже.)

Всего записей: 2025 | Зарегистр. 02-09-2005 | Отправлено: 21:53 28-10-2016 | Исправлено: ItsJustMe, 21:54 28-10-2016
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Их, вроде, не отключить, если делаешь package (bpl).

С этого и надо было начинать, тогда бы вам еще в среду ответ дали. Хотя он бы вам не понравился потому, что варианты только те, которые перечислил Alexey_Gawrilow. Хотя, если пишете для себя, то можно и системные пакеты перекомпилить.

Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 22:07 28-10-2016
ItsJustMe

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins

Цитата:
С этого и надо было начинать,

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

Цитата:
тогда бы вам еще в среду ответ дали.

Я видел ваши ответы и, конечно же, принял к сведению. Пока просто еще не приступил к их практической реализации.
То есть, насколько я понял, откомпилировать модуль с оригинальным именем можно, только включив его в application, а не package. Хорошо, понятно, значит, получить dcu таки можно будет.
Но второй вопрос пока остался без решения: как заменить.
Цитата:
Хотя, если пишете для себя, то можно и системные пакеты перекомпилить.

Можно поподробнее: как?

Всего записей: 2025 | Зарегистр. 02-09-2005 | Отправлено: 22:48 28-10-2016
VadimLou



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Их, вроде, не отключить
 
Не отключишь !!! По аналогии - вы же не можете изменить содержимое  c++ runtime dll. Или скажем user32.dll.
Хотя иногда это делать приходится
Фактически вам нужен codehook.
Сложность зависит от задачи.
Попробуй взять delphi-detours-library: https://github.com/MahdiSafsafi/delphi-detours-library
Но задача несколько усложняется в реализации, т.к. теперь это будет не замена на уровне исходников, а рантайм перехват/подмена ...

Всего записей: 702 | Зарегистр. 22-07-2004 | Отправлено: 23:48 28-10-2016 | Исправлено: VadimLou, 23:48 28-10-2016
ItsJustMe

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VadimLou
Вообще, изначально, я думал, что достаточно подправить нужный pas, удалить из lib соответствующие dcu, и будет счастьё - abomination не сможет найти dcu и будет вынуждена откомпилировать pas. Не тут-то было. Насколько я понимаю, все эти dcu, что лежат в lib, еще и лежат в rtlXXX.bpl и vclXXX.bpl. Ну, или еще в каких-то bpl. Зачем же тогда эти dcu отдельно лежат в lib, раз они все равно никак не используются?

Цитата:
По аналогии - вы же не можете изменить содержимое  c++ runtime dll.

И нет такой необходимости - c++ runtime dll делали руками и головой, поэтому там все работает. Чем делали те pas, что лежат в source у лучшей IDE планеты, я догадываюсь. Приходится править. Но даже тут шедевр программерской мысли сопротивляется.

Всего записей: 2025 | Зарегистр. 02-09-2005 | Отправлено: 02:01 29-10-2016
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Embarcadero RAD Studio


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru