Ну, во-первых, просто не хочется кодировать видео в два разных формата, хочется один для всех. Во-вторых, я в этом вопросе плохо разбираюсь, но по-моему так просто кодировать в h.264 нельзя, нужно платить лицензионные отчисления за использование формата. Да и в любом случае попадаешь под зависимость владельца, они ведь могут внезапно запретить кодирование без отчислений.
Качество, понятное дело, будет настраиваться, а вот с кодеками я думаю лучше не заморачивать лишний раз пользователя, всё равно всем будет нужна поддержка всех браузеров, а значит и конфиг у всех будет одинаковый.
Как дополнение:
Если обе директории (источник и назначение) находится на одном диске, то более правильно создавать хард-линки на файлы (но не на директории, их нужно создавать самому), а не тупо создавать новый inode для файла и копировать туда данные. Большинство тулз для копирования именно так и работают, это позволяет сберечь диск и уменьшить фрагментацию.
Снизу кто-то предложил хорошую утилитку UPX. Насколько я понял, она реализует как раз предложенный вами принцип, т.е. запускается, распаковывается, снова запускается, но всё автоматизированно.
Не из exe, просто инсталлятор создаю из всего, что имею с помощью WiX
У меня инсталлятор сначала тянет файлы с github'а, с WiX'ом реально сделать что-то похожее?
QtCore + QtGui + QtNetwork + libssl + libtar = 15 метров.
Текущий каталог может быть недоступен для записи, так что распаковывать dll после старта не лучшая идея. Распаковывать куда-нибудь в temp и добавлять пути в PATH — тоже порочная практика, ибо засоряет глобальные переменные.
Я пробовал отказаться от QtNetwork, но всякие сторонние либы вроде curl просто вешают весь процесс до момента полной загрузки, а мне нужно отображать прогресс-бар. У QHttp как раз для этого есть нужный сигнал.
А чем вы msi создаёте из exe?
Искусство программирования — Д. Кнут. На раннем этапе полезно. Там правда материал довольно большой и так сразу за раз прочитать не получится. Хотя я сам ни одной книги ещё до конца не дочитал, все бросал ближе к середине.