как можно зделать чтоб заместо стандартного обозначения (картинка) флеш или видео файла было так как на примерах?
Примеры:
флеш http://www.umora.ru/contlist.cgi?s=flash (http://www.umora.ru/contlist.cgi?s=flash)
видео http://www.umora.ru/contlist.cgi?s=video (http://www.umora.ru/contlist.cgi?s=video)
Quote from: MISHA on August 09, 2008, 12:14:25 PM
как можно зделать чтоб заместо стандартного обозначения (картинка) флеш или видео файла было так как на примерах?
Примеры:
флеш http://www.umora.ru/contlist.cgi?s=flash (http://www.umora.ru/contlist.cgi?s=flash)
видео http://www.umora.ru/contlist.cgi?s=video (http://www.umora.ru/contlist.cgi?s=video)
В документации предлагаются вот такой способ:
http://coppermine-gallery.net/demo/cpg14x/docs/index.htm#cust_thmb
Можно установить вот этот мод:
http://forum.coppermine-gallery.net/index.php/topic,28367.0.html
Как я понимаю, там подобный механизм упрощен.
Quote-Custom thumb tool (for all file types - upload an image and let the system create a thumb/ manually crop the thumb)
more info: http://forum.coppermine-gallery.net/index.php?topic=47538.0
спасибо Makc666 , а есть на руусском манул?, а то с английским я не дуружу да и переводчек переводит хрень((( я просто только начал, ели установил и насторил апач-пхп-мускул
только не нужно говорить кули полез раз нихрена не соображаешь даже в простейших вещах все с чегото начинают=))
Quote from: http://forum.coppermine-gallery.net/index.php/topic,38774.0.htmlAutomatic video thumbnail creation (Requires ffmpeg)
Quote from: MISHA on August 09, 2008, 10:03:36 PM
а есть на руусском манул?
На русском, к сожалению, нет...
Я, на данный момент, к сожалению с переводом помочь не в силах.
only_dig Big thanks for the reference :)
А теперь всё на русском напишу
1- устанавливаем FFMPEG (у меня установлен сюда usr\local\FFMPEG ) если у кого возникнут проблемы с FFMPEG то качайте мой Скачать файл FFMPEG.rar (http://dump.ru/file/1120155)
распаковывайте например usr\local\FFMPEG
2- открываем picmgmt.inc в папке gallery\include
3- находим
// Add a picture to an album
function add_picture($aid, $filepath, $filename, $position = 0, $title = '', $caption = '', $keywords = '', $user1 = '', $user2 = '', $user3 = '', $user4 = '', $category = 0, $raw_ip = '', $hdr_ip = '', $iwidth = 0, $iheight = 0)
4- веше него вставляем
(ТОЛЬКО НЕ ЗАБУДТЕ ПОДПРАВИТЬ В КОДЕ НИЖЕ СТРОКУ
$CONFIG['ffmpeg_path'] = '/usr/local/bin/';
// Change the path according to your server.
где /usr/local/bin/ путь к вашему ffmpeg)
/**
* Function to create video thumbnail using ffmpeg
*/
function create_movie_thumb($src_file)
{
global $CONFIG, $ERROR;
$CONFIG['ffmpeg_path'] = '/usr/local/bin/'; // Change the path according to your server.
$src_file = $src_file;
$dest_file = $CONFIG['fullpath']."edit/".md5(uniqid(time()))."%d.jpg";
if (preg_match("#[A-Z]:|\\\\#Ai", __FILE__)) {
// get the basedir, remove '/include'
$cur_dir = substr(dirname(__FILE__), 0, -8);
$src_file = '"' . $cur_dir . '\\' . strtr($src_file, '/', '\\') . '"';
$ff_dest_file = '"' . $cur_dir . '\\' . strtr($dest_file, '/', '\\') . '"';
} else {
$src_file = escapeshellarg($src_file);
$ff_dest_file = escapeshellarg($dest_file);
}
$output = array();
if (eregi("win",$_ENV['OS'])) {
// Command to create video thumb
$cmd = "\"".str_replace("\\","/", $CONFIG['ffmpeg_path'])."ffmpeg\" -i ".str_replace("\\","/" ,$src_file )." -an -ss 00:00:05 -r 1 -vframes 1 -y ".str_replace("\\","/" ,$ff_dest_file);
exec ("\"$cmd\"", $output, $retval);
} else {
// Command to create video thumb
$cmd = "{$CONFIG['ffmpeg_path']}ffmpeg -i $src_file -an -ss 00:00:05 -r 1 -vframes 1 -y $ff_dest_file";
exec ($cmd, $output, $retval);
}
if ($retval) {
$ERROR = "Error executing FFmpeg - Return value: $retval";
if ($CONFIG['debug_mode']) {
// Re-execute the command with the backtick operator in order to get all outputs
// will not work if safe mode is enabled
$output = `$cmd 2>&1`;
$ERROR .= "<br /><br /><div align=\"left\">Cmd line : <br /><span style=\"font-size:120%\">" . nl2br(htmlspecialchars($cmd)) . "</span></div>";
$ERROR .= "<br /><br /><div align=\"left\">The ffmpeg program said:<br /><span style=\"font-size:120%\">";
$ERROR .= nl2br(htmlspecialchars($output));
$ERROR .= "</span></div>";
}
@unlink($dest_file);
return false;
}
$return = str_replace("%d", "1", $dest_file);
@chmod($return, octdec($CONFIG['default_file_mode'])); //silence the output in case chmod is disabled
return $return;
}
5- находим
} else {
$imagesize[0] = $iwidth;
$imagesize[1] = $iheight;
}
6- выше него вставляем
} elseif (is_movie($image)) {
preg_match("/(.+)\.(.*?)\Z/", $filename, $matches);
$thumb = $CONFIG['fullpath'] . $filepath . $CONFIG['thumb_pfx'] . $matches[1].".jpg";
$videoThumb = create_movie_thumb($image);
if ($videoThumb) {
if (!resize_image($videoThumb, $thumb, $CONFIG['thumb_width'], $CONFIG['thumb_method'], $CONFIG['thumb_use'])) {
return false;
}
@unlink($videoThumb);
$imagesize = getimagesize($thumb);
} else {
return false;
}
вот и всё готово=) нише я закрепил свой picmgmt.inc
p.s. не разобрался как редактировать сообщение, предыдущее удалите плз.
сори, забыл прекрипить picmgmt.inc
вот уже отловил косяк, после проделаных выше описаных операций перестали загружатся флеш файлы и 3гп ??? т.е. после загрузки и выбора альбома пишет
Предыдущий файл не может быть добавлен.
Вы успешно разместили все файлы.
хотя файлы загрузились и находятся в альбоме, кто знает как это поправить?
p.s. фотки загружаются нормально.
Вот самое главное кто использует винду, то чтобы заработал ffmpeg нужно проделать следущее:
Скопировать dll в C:\WINDOWS\system32
avcodec-51.dll
avcodec.dll
avformat-51.dll
avformat.dll
avutil-49.dll
pthreadGC2.dll
скопировать php_ffmpeg.dll в папку php/ext или по другому php/extensions (у кого как)
добавляем в php.ini следующие строки
extension=php_ffmpeg.dll
extension=php_gd2.dll
путь прописывем плоть по ffmpeg.exe например F:\Server\diskw\usr\ffmpeg.exe
перезапускаем апач и радуемся))
Quote from: MISHA on October 13, 2008, 02:09:26 AM
вот уже отловил косяк, после проделаных выше описаных операций перестали загружатся флеш файлы и 3гп ??? т.е. после загрузки и выбора альбома пишет
Предыдущий файл не может быть добавлен.
Вы успешно разместили все файлы.
хотя файлы загрузились и находятся в альбоме, кто знает как это поправить?
p.s. фотки загружаются нормально.
Видно потому что данный "скрипт" не предназначен для данного типа файлов.
Если посмотрите, там используется функция:is_movieФункция эта описана в файле:media.functions.inc.phpВыглядит как:function is_movie(&$file)
{
return cpg_get_type($file,'movie');
}
Функция cpg_get_type выглядит как:function cpg_get_type($filename,$filter=null)
{
global $FILE_TYPES;
if (!is_array($filename))
$filename = explode('.',$filename);
$EOA = count($filename)-1;
$filename[$EOA] = strtolower($filename[$EOA]);
if (!is_null($filter) && $FILE_TYPES[$filename[$EOA]]['content']==$filter)
return $FILE_TYPES[$filename[$EOA]];
elseif (is_null($filter))
return $FILE_TYPES[$filename[$EOA]];
else
return null;
}
Данная функция зависит от переменной $FILE_TYPES, которая задаётся как раз чуть выше в коде:global $FILE_TYPES;
// Map content types to corresponding user parameters
$content_types_to_vars = array('image'=>'allowed_img_types','audio'=>'allowed_snd_types','movie'=>'allowed_mov_types','document'=>'allowed_doc_types');
$CONFIG['allowed_file_extensions'] = '';
if (count($FILE_TYPES)==0) {
$result = cpg_db_query('SELECT extension, mime, content, player FROM '.$CONFIG['TABLE_FILETYPES'].';');
while ($row = mysql_fetch_array($result)) {
// Only add types that are in both the database and user defined parameter
if ($CONFIG[$content_types_to_vars[$row['content']]]=='ALL' || is_int(strpos('/'.$CONFIG[$content_types_to_vars[$row['content']]].'/','/'.$row['extension'].'/')))
{
$FILE_TYPES[$row['extension']] = $row;
$CONFIG['allowed_file_extensions'].= '/'.$row['extension'];
} }
mysql_free_result($result);
}
$CONFIG['allowed_file_extensions'] = substr($CONFIG['allowed_file_extensions'],1);
Таким образом всё зависит от того, что у Вас прописано в
"Конфиг" -> "Дополнительные настройки файлов и миниатюр"
- Разрешенные типы изображений
- Разрешенные типы видео файлов
Я так думаю :)
Макс вот в томто и дело, что у меня прописано:
Разрешенные типы аудио файлов: mp3/midi/mid/wma/wav/ogg/MKV/swf
Разрешенные типы документов: doc/txt/rtf/pdf/xls/pps/ppt/zip/gz/mdb/3gp/swf/rar/7zip/MKV
а как только возращаю в исходный вид media.functions.inc picmgmt.inc то флешки загружаются нормально
сори, ошибочка. После возвращения в исходный вид файла picmgmt.inc
p.s. Где кнопка правки соощения???
Народ ну неужели нет решения? =(( если кто найдёт решение с меня пиво =)
Quote from: MISHA on October 22, 2008, 09:22:41 PM
Макс вот в томто и дело, что у меня прописано:
Разрешенные типы аудио файлов: mp3/midi/mid/wma/wav/ogg/MKV/swf
Разрешенные типы документов: doc/txt/rtf/pdf/xls/pps/ppt/zip/gz/mdb/3gp/swf/rar/7zip/MKV
а как только возращаю в исходный вид media.functions.inc picmgmt.inc то флешки загружаются нормально
У Вас
MKV/swf прописано в аудио файлах?
А что же у Вас прописано в "Разрешенные типы изображений"?
Вот как у меня
Разрешенные типы изображений = ALL
Разрешенные типы видео файлов = ALL
Разрешенные типы аудио файлов = mp3/midi/mid/wma/wav/ogg/MKV/swf
Разрешенные типы документов = doc/txt/rtf/pdf/xls/pps/ppt/zip/gz/mdb/3gp/swf/rar/7zip/MKV
MISHA, использую denwer3 для тестирования на localhoste.
Установил все согласно инструкции, dll-ки залил, модуль лежит по пути G:\WebServers\usr\local\ffmpeg\
php_ffmpeg - G:\WebServers\usr\local\php5\ext\.
При попытке залить видео ролик (avi) вываливается следующая ошибка: "Error executing FFmpeg - Return value: 1".
Файл picmgmt.inc прилагаю.
В чем состоит проблема, не подскажешь?
А это только при avi ?
попробуй изменить
$CONFIG['ffmpeg_path'] = 'g:\WebServers\usr\local\ffmpeg\ffmpeg.exe';
на $CONFIG['ffmpeg_path'] = '/usr/local/FFMPEG/';
Так-с, с одной проблемой разобрался.
Изменил путь (неверно был указан диск), заработала функция создания превью.
Используя различные настройки в типах файлов, и заливая различные форматы, пришел к выводу что не все форматы файлов поддерживаются именно ffmpeg утилитой, т.е. не для всех типов файлов она может создать jpg-превью.
Еще один нюанс с которым столкнулся, имена файлов на русском языке.
Имена для файлов thumb создаются также на русском языке, а (я так предполагаю) в базу записываются в UTF, возможно поэтому потом в альбомах нет сопоставления thumb'a к ролику, т.к. из базы название выглядит "крякозябрами".
Следующий вопрос, ролики загруженные в галерею не проигрываются...
я тоже заметил, что не все форматы обрабатываются, возможно это можно исправить в настройках ffmpeg
также не будут загружатся флешки
По поводу русских имён файлов это сюда http://forum.coppermine-gallery.net/index.php/topic,43506.0.html но у этого способа есть минус, при групповом добавлении файлов русские имена не меняются, но других способов я не видел
Vob не поддерживается.
На локалхосте галерея по-умолчанию стоит в ютф, в глобе в вин 1251. Я так понимаю в глобе проблем не будет при загрузке файлов с русскими именами?
Quote from: Petrovichalt on November 28, 2008, 07:30:14 AM
Я так понимаю в глобе проблем не будет при загрузке файлов с русскими именами?
А что такое глоб?
Проблемы с русскими именами были всегда, есть и будут.
Теперь мне поребовалось сделелать, что бы отображался не просто кадр сделаный с видео, а серия кадров взятых с видео допустим 5-10-30-120-180 сек и они должны отображаться в привью по очереди или чтоб склеились в gif и эта гифка отображалась как превьюшка.
Есть готовое решение? или может кто поможет так замутить=)