Advanced search  

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Pages: [1] 2   Go Down

Author Topic: превью фидео и флешек  (Read 19936 times)

0 Members and 1 Guest are viewing this topic.

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
превью фидео и флешек
« on: August 09, 2008, 12:14:25 pm »

как можно зделать чтоб заместо стандартного обозначения (картинка) флеш или видео файла было так как на примерах?
Примеры:
флеш http://www.umora.ru/contlist.cgi?s=flash
видео http://www.umora.ru/contlist.cgi?s=video
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Makc666

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 1614
  • Русский (ISO-8859-1) - Russian - Русский (Windows)
    • Makc's home page
Re: превью фидео и флешек
« Reply #1 on: August 09, 2008, 05:15:53 pm »

как можно зделать чтоб заместо стандартного обозначения (картинка) флеш или видео файла было так как на примерах?
Примеры:
флеш http://www.umora.ru/contlist.cgi?s=flash
видео 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
« Last Edit: November 19, 2008, 01:21:46 pm by Makc666 »
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #2 on: August 09, 2008, 10:03:36 pm »

спасибо Makc666 , а есть на руусском манул?, а то  с английским я не дуружу да и переводчек переводит хрень((( я просто только начал, ели установил и насторил апач-пхп-мускул
только не нужно говорить кули полез раз нихрена не соображаешь даже в простейших вещах все с чегото начинают=))
 
Logged
Что бы Ктулху не воскрес, подпишись на RSS

only_dig

  • Coppermine newbie
  • Offline Offline
  • Posts: 3
Re: превью фидео и флешек
« Reply #3 on: August 09, 2008, 11:16:42 pm »

Automatic video thumbnail creation (Requires ffmpeg)
Logged

Makc666

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 1614
  • Русский (ISO-8859-1) - Russian - Русский (Windows)
    • Makc's home page
Re: превью фидео и флешек
« Reply #4 on: August 10, 2008, 01:28:11 am »

а есть на руусском манул?
На русском, к сожалению, нет...
Я, на данный момент, к сожалению с переводом помочь не в силах.
« Last Edit: November 19, 2008, 01:22:34 pm by Makc666 »
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #5 on: October 12, 2008, 11:50:46 pm »

only_dig  Big thanks for the reference  :)

А теперь всё на русском напишу

1- устанавливаем FFMPEG (у меня установлен сюда usr\local\FFMPEG ) если у кого возникнут проблемы с FFMPEG  то качайте мой Скачать файл FFMPEG.rar
 распаковывайте например usr\local\FFMPEG

2- открываем picmgmt.inc в папке gallery\include

3- находим

Code: [Select]
// 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)

Code: [Select]
/**
 * 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- находим

Code: [Select]
    } else {
        $imagesize[0] = $iwidth;
        $imagesize[1] = $iheight;
    }

6- выше него вставляем

Code: [Select]
    } 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. не разобрался как редактировать сообщение, предыдущее удалите плз.
« Last Edit: October 17, 2008, 11:59:04 pm by Makc666 »
Logged
Что бы Ктулху не воскрес, подпишись на RSS

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #6 on: October 12, 2008, 11:53:17 pm »

сори, забыл прекрипить picmgmt.inc
Logged
Что бы Ктулху не воскрес, подпишись на RSS

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #7 on: October 13, 2008, 02:09:26 am »

вот уже отловил косяк, после проделаных выше описаных операций  перестали загружатся флеш файлы и 3гп ???  т.е. после загрузки и выбора альбома пишет

Предыдущий файл не может быть добавлен.
Вы успешно разместили все файлы.   

хотя файлы загрузились и находятся в альбоме, кто знает как это поправить?
p.s.   фотки загружаются нормально.                                                                                     
Logged
Что бы Ктулху не воскрес, подпишись на RSS

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #8 on: October 14, 2008, 06:05:00 pm »

Вот самое главное кто использует винду, то  чтобы заработал 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

перезапускаем апач и радуемся))
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Makc666

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 1614
  • Русский (ISO-8859-1) - Russian - Русский (Windows)
    • Makc's home page
Re: превью фидео и флешек
« Reply #9 on: October 18, 2008, 12:08:32 am »

вот уже отловил косяк, после проделаных выше описаных операций  перестали загружатся флеш файлы и 3гп ???  т.е. после загрузки и выбора альбома пишет

Предыдущий файл не может быть добавлен.
Вы успешно разместили все файлы.   

хотя файлы загрузились и находятся в альбоме, кто знает как это поправить?
p.s.   фотки загружаются нормально.                                                                                     
Видно потому что данный "скрипт" не предназначен для данного типа файлов.

Если посмотрите, там используется функция:
is_movie

Функция эта описана в файле:
media.functions.inc.php

Выглядит как:
Code: [Select]
function is_movie(&$file)
{
    return cpg_get_type($file,'movie');
}

Функция cpg_get_type выглядит как:
Code: [Select]
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, которая задаётся как раз чуть выше в коде:
Code: [Select]
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);

Таким образом всё зависит от того, что у Вас прописано в
"Конфиг" -> "Дополнительные настройки файлов и миниатюр" 
  • Разрешенные типы изображений
  • Разрешенные типы видео файлов

Я так думаю :)
 
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #10 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 то флешки загружаются нормально
« Last Edit: November 19, 2008, 01:30:13 pm by Makc666 »
Logged
Что бы Ктулху не воскрес, подпишись на RSS

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #11 on: October 22, 2008, 10:21:18 pm »

сори, ошибочка. После возвращения в исходный вид файла picmgmt.inc

p.s. Где кнопка правки соощения???
Logged
Что бы Ктулху не воскрес, подпишись на RSS

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #12 on: November 10, 2008, 07:36:17 pm »

Народ ну неужели нет решения? =(( если кто найдёт решение с меня пиво =)
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Makc666

  • Moderator
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 1614
  • Русский (ISO-8859-1) - Russian - Русский (Windows)
    • Makc's home page
Re: превью фидео и флешек
« Reply #13 on: November 19, 2008, 01:37:26 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 прописано в аудио файлах?

А что же у Вас прописано в "Разрешенные типы изображений"?
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #14 on: November 19, 2008, 05:39:49 pm »

Вот как у меня
Разрешенные типы изображений = 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
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Petrovichalt

  • Coppermine novice
  • *
  • Offline Offline
  • Posts: 20
Re: превью фидео и флешек
« Reply #15 on: November 24, 2008, 05:01:26 pm »

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 прилагаю.
В чем состоит проблема, не подскажешь?
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #16 on: November 24, 2008, 08:36:07 pm »

А это только при avi ?
попробуй изменить
Code: [Select]
$CONFIG['ffmpeg_path'] = 'g:\WebServers\usr\local\ffmpeg\ffmpeg.exe';на
Code: [Select]
$CONFIG['ffmpeg_path'] = '/usr/local/FFMPEG/';
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Petrovichalt

  • Coppermine novice
  • *
  • Offline Offline
  • Posts: 20
Re: превью фидео и флешек
« Reply #17 on: November 27, 2008, 05:15:54 pm »

Так-с, с одной проблемой разобрался.
Изменил путь (неверно был указан диск), заработала функция создания превью.
Используя различные настройки в типах файлов, и заливая различные форматы, пришел к выводу что не все форматы файлов поддерживаются именно ffmpeg утилитой, т.е. не для всех типов файлов она может создать jpg-превью.
Еще один нюанс с которым столкнулся, имена файлов на русском языке.
Имена для файлов thumb создаются также на русском языке, а (я так предполагаю) в базу записываются в UTF, возможно поэтому потом в альбомах нет сопоставления thumb'a к ролику, т.к. из базы название выглядит "крякозябрами".
Следующий вопрос, ролики загруженные в галерею не проигрываются...
Logged

MISHA

  • Coppermine frequent poster
  • ***
  • Country: ru
  • Offline Offline
  • Gender: Male
  • Posts: 262
Re: превью фидео и флешек
« Reply #18 on: November 27, 2008, 05:43:43 pm »

я тоже заметил, что не все форматы обрабатываются, возможно это можно исправить в настройках ffmpeg
 также не  будут загружатся  флешки
По поводу русских имён файлов это сюда http://forum.coppermine-gallery.net/index.php/topic,43506.0.html но у этого способа есть минус, при групповом добавлении файлов русские имена не меняются, но других способов я не видел
Logged
Что бы Ктулху не воскрес, подпишись на RSS

Petrovichalt

  • Coppermine novice
  • *
  • Offline Offline
  • Posts: 20
Re: превью фидео и флешек
« Reply #19 on: November 28, 2008, 07:30:14 am »

Vob не поддерживается.
На локалхосте галерея по-умолчанию стоит в ютф, в глобе в вин 1251. Я так понимаю в глобе проблем не будет при загрузке файлов с русскими именами?
Logged
Pages: [1] 2   Go Up
 

Page created in 0.032 seconds with 21 queries.