Продолжим тему «кубиков».
Для скачивания видео с YouTube к себе на компьютер можно воспользоваться двумя способами:
Архив категории ‘Программирование’
Консольная загрузка видео с YouTube
Python: Youtube uploader (загрузку на Youtube с консоли)
Один из «кубиков» который я использую или собираюсь использовать в своих проектах «Youtube uploader» — Linux консольный скрипт на Python позволяющий осуществить загрузку на Youtube. К сожалению скрипт не использует API для работы, поэтому лучше обезопасить аккаунт google при помощи двухэтапной аутентификации и выдав приложению для работы отдельный пароль.
Проект доступен на https://code.google.com/p/youtube-upload/
Установка на CentOS под катом…
Delphi XE5: The Problem of Invalid Platform
Технологии в мире развиваются семимильными шагали, посему решил потестить Delphi XE5, в качестве возможной замены Delphi 7. Удивительно, но простейшую программу с единственной кнопкой на форме скомпилить так и не удалось, компилятор ругался на «[Error Error] Invalid PLATFORM variable «MCD». PLATFORM must…».
VMWare & PHP: Импорт списка виртуальных машин
Достаточно долго искал решение на PHP для импорта из vSphere (ESXi) списка виртуальных машин с различными параметрами. В результате из нескольких проектов удалось собрать решение для себя.
Как обычно выкладываю результат на https://github.com/spions/vmware_import_host_list.
Smarty: Расширяем возможности strip_tags
Удаляем из Smarty\libs\plugins\ файл modifiercompiler.strip_tags.php на его место записываем файл modifier.strip_tags.php (обратите внимание, что файлы отличаются в названиях)
В результате получаем расширенный функционал «strip_tags»:
- {$string|strip_tags} strips all tags and replaces them with a space
- {$string|strip_tags:false} strips all tags without replacing them with a space
- {$string|strip_tags:'<b><br>’} strips all tags except b and br tags and replaces them with a space
- {$string|strip_tags:false:'<b><br>’} strips all tags except b and br tags without replacing them with a space
Delphi: динамические массивы
Некоторые полезности при работе с динамическими массивами:
Очистить переменную в оперативной памяти
ZeroMemory(@l_synchronizations, SizeOf(Tl_synchronizations));
Процедура SetLength изменяет размер строки, одномерного динамического массива или многомерного динамического массива
1) В корне неверное решение, массив на то и динамически, чтобы не иметь ограничений setlength(analiz_programs_out, 1000); 2) Инициируем массив, по размеру массива данных. Верно до первого условия, при котором какое-либо значение исходного массива отбрасывается. setlength(analiz_programs_out, Length(b)); 3) Не будет работать для разорванного заполения массивов setlength(analiz_film.names, ii + 1); 4) Наиболее правильный из придуманных решений setlength(analiz_film.Genres, Length(analiz_film.Genres) + 1); Добавляем следующий элемент. analiz_film.Genres[Length(analiz_film.Genres) - 1] := database_Genre_Add(b[i, 1], 1);
FFmpeg базовые команды
В прошлом посте я рассказал как установить FFmpeg на CentOS 6.4.
В данном посте я рассмотрю базовые команды, которые существенно облегчат работу с FFMpeg. Огромное количество информации содержится в мануалах, они как известно рулез, так что если какая-то информация оказалась за пределами поста, «man ffmpeg» вам в помощь.
Для понимания, более простых конструкций, например такой:
ffmpeg -ss 5 -i a.mp4 -aspect 4:3 -f image2 -r 1 -vframes 300 a%2d.jpg
чуть ниже я перечислю наиболее часто используемые опции.