Не подскажите, есть ключик у ffmpeg, чтобы в начале не выводилась информация о самом ffmpeg, а сразу о видео статистика была? Чтобы парсить поменьше.
Запускаю командой "ffmpeg -i video.avi" и сперва выдаётся вот эта лапша, которая вообще не нужна:
Антон Жилин: Я говорю не про MoveAssignable. Например, есть два объекта, ссылающиехся друг на друга по указателям. Их можно сперва разместить в векторе, затем уже связать друг с другом. Но, после этого уже нельзя изменить размер вектора, потому что указатели могут перестать указывать друг на друга.
Xano: move ничем не поможет, если есть ссылки на адреса элементов, например. Если, при изменении размера вектора, невозможно выделить память там же, где она была до этого (типа realloc), то ни emplace, ни move-семантика не поможет. Нетривиальный конструктор копирования как бы намекает, что вектор скорее всего не подойдёт. За исключением случаев, когда копируемый объект может быть разрушен и это не нарушит связи между объектами.
fshp: reserve выделяет память, но не разрешает её использовать, пока не будут добавлены элементы. reserve и resize вообще абсолютно разные проблемы решают. Если вызов конструктора копирования неприемлем, то вектор вообще лучше не использовать, а выбрать list,queue,set.
Антон Жилин: Не reserve, а resize. После reserve нельзя обращаться по индексу, только пушбэками.
Проверки доступа будут, если использовать at, вместо []. Лучше использовать at, чтобы потом меньше страдать.)
Из кодеков, которые есть на конкретной системе. Если есть видео, то пользователь его как-то смотрит, т.е. кодек в системе есть.
ffmpeg можно собрать без кодеков, чтобы использовал установленные в системе, как делают всякие media player'ы?
BaryhaLASH: (занудствующе повторяю) GA ставится за 15 секунд + перезагрузка. Не ленись.) И сразу в защищённом режиме загружайся, чтобы драйвер DirectX поставить.
Игорь Николаевич: В зависимости от того, как представлены уровни "ячейки" могут подразумевать совершенно разную реализацию.
Самое банальное, делишь всю карту на одинаковые квадраты и в каждом "квадрате" хранишь список объектов, которые в него частично или полностью попадают (сравнивая габариты объекта с габаритами "квадрата"). Так же можешь погуглить про BSP деревья и многое другое... Но банальное разделение на квадраты проще всего реализовать. При условии, что у тебя карта полностью сформирована и сразу вся подгружается, то нужный "квадрат" получается из координат объекта, даже искать ничего не нужно. Если уровень динамически подгружается, то чуть сложнее реализовать.
BaryhaLASH: Есть образы, оптимизированные для установки с флешки/диска. В виртуалке их невозможно загрузить, потому что нужны физические адреса файлов, а их нет. Если в описании образа написано, что он только для флэшек, то он только для флэшек.
Ульрих: После установки Guest Additional и DirectX (через защищённый режим), работает вполне сносно. Как раз на уровне тех компьютеров, которые были в год выпуска игры.) Главное не жадничать с оперативкой и процессорами для виртуалки.
Torvald3d: Тут блокирование в смысле разделения на блоки, для локализации данных в кэше. Например, картинка 1000*1000 пикселей разрезается на квадраты по 100*100. И для пяти слоёв берутся соответствующие квадратики, лежащие друг над другом. Почти все стандартные алгоритмы основаны на разделении цельной картинки на фрагменты, чтобы оптимизировать их размещение в памяти. Кстати, это хорошо видно на сложных фильтрах, когда картинка по кусочкам обновляется.
Я изучал SDK для Photoshop CS2. Сейчас может и поменялось что-то, но вряд ли существенно.
Neonoviiwolf: Спасибо! Непосредственно для анимации персонажей мне программа Spriter приглянулась. Тем более, что почти бесплатная. Там тоже и скелетная анимация и прочее. А вот всё скомпоновать... Попробую что-нибудь из adobe.
CC и AnimeStudio для векторной анимации, как я понял по ютубу. Всё очень круто, но мне нужно аналогичное для спрайтовой графики.)
After Effects может и подходит, на ютубе в основном на спецэффекты упор сделан, но он какой-то излишне монструозный. Это как стрельба из пушки по тараканам... И я пока не понял, можно ли анимированные гифки в нём использовать или наборы кадров(спрайтшиты или отдельные файлы для каждого кадра), без их переключения вручную на каждом кадре анимации.
MisterN: Ну да, всё зависит от вариантов использования. Под мои нужны организация по папкам оказалась самой эффективной.
Кстати, в каждой папке лежит файл cover.jpg и плеер обложку показывает при выборе папки. Разумеется, только при переключении вручную, поиск по картинке не сделать.
Запускаю командой "ffmpeg -i video.avi" и сперва выдаётся вот эта лапша, которая вообще не нужна:
ffmpeg version N-80256-g0a9e781 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.4.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 24.100 / 55. 24.100
libavcodec 57. 45.100 / 57. 45.100
libavformat 57. 37.101 / 57. 37.101
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 46.101 / 6. 46.101
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100