Как сделать скриншот из flv файла
1. Ставим на сервер ffmpeg
> svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ./ffmpeg
> cd ./ffmpeg
> ./configure
> make
> make install
2. Для создания GD картинки можно использовать, например вот такую функцию:
function Video2GD($filename){ $descriptors = array( 0 => array("pipe","r"), 1 => array("pipe","w"), 2 => array("pipe","w") ); $cmd = 'ffmpeg -i '.$filename.' -vframes 1 -f image2 /dev/stdout'; $cwd = '/tmp'; $env = array(); $process = proc_open($cmd, $descriptors, $pipes ); if (is_resource($process)) { fclose($pipes[0]); $data = stream_get_contents($pipes[1]); fclose($pipes[1]); $error = stream_get_contents($pipes[2]); fclose($pipes[2]); return imagecreatefromstring($data); } return false; }
пример использования функции Video2Gd:
$im = Video2GD('/yourvideofile.flv'); header('Content-Type: image/png'); imagepng($im);
Перегрузка операторов в Python
Оказывается перегрузка операторов есть не только в C++, но и в Питоне тоже...
A class can implement certain operations that are invoked by special syntax (such as arithmetic operations or subscripting and slicing) by defining methods with special names.This is Python's approach to operator overloading, allowing classes to define their own behavior with respect to language operators.
Отладка PHP скриптов
Оказывается отлаживать приложения на PHP возможно если вы используете Eclipse c PDT, для этого необходимо скачать Studio Web Debugger - эта штука ставится как расширение PHP и позволяет эклипсу останавливаться на ваших точках остановки, проходить приложение по шагам, смотреть значения переменных и еще много чего. Радует то, что как Eclipse, так и Debugger доступны для различных платформ, и совершенно бесплатны, вот уж где коммунизм наступил...
Редактор для Python
Попробовав несколько разных радакторов пришел к выводу что для меня лучше чем Eclipse с плагином PyDev ничего не придумано.