Створення мініатюр для відео


17

Я перевірив і прочитав багато публікацій про один-єдиний випуск, який набагато складніший, ніж здається.

У мене є веб-сайт, який використовує багато відео, знятих із веб-сайту, як в Інтернеті ^^ (такі сервіси, як youtube, vimeo, videobuzzy і т. Д.), І ми хотіли б створити на льоту мініатюру вбудованого відео.

Кожна служба використовує свій власний API, тому я повинен адаптувати код для кожного, який у нього занадто багато коду, і я ніколи не міг керувати кожною службою.

Веб-сервер пропонує щось подібне: http://embed.ly, але я спробував їх, і, наприклад, відео з videobuzzy не працює. Тож це часткове рішення.

Іншим рішенням було б скористатися послугою скріншоту, яка може запитати URL відео, рендерувати його, робити знімок та генерувати зображення. Заманливо, але результати, як правило, додають затримок, і я повинен знайти послугу знімків і генерувати код (ну, це може бути цікавою частиною).

Найпростіше було б зробити знімок екрана і створити зображення самостійно, а потім завантажити його.

Я б скоріше запропонував щось більш зручне для користувачів, але в мене немає більше підказки.

Хтось має поради з цього питання, і чи можу я зрозуміти картинку правильно?

Дякую.

ДОБАВЛЕННЯ **

Якби я міг замість ескізів просто вставити відео (як правило, кадр) у певний розмір, це могло б зробити трюк ...


Один із знайдених способів був за допомогою плагіна: wordtube. Як правило, охоплює JW Player .. але, можливо, корисно.
majicmike

Відповіді:


20

Ви можете використовувати функцію oEmbed, запечену в WordPress. Зазвичай будь-який відео-хост у цьому списку поверне вам мініатюру, використовуючи oembed.

Ось список постачальників послуг за замовчуванням, які WordPress використовує для автоматичного вбудовування в область вмісту. Я включив джерела без відео, а також для зручності інших.

Повний список можливих провайдерів задокументований у кодексі WordPress у розділі:
Вставлення - Гаразд, з яких сайтів я можу вставити?

Виберіть свого постачальника, а потім скористайтеся наступним для отримання інформації про відео.

require_once(ABSPATH.'wp-includes/class-oembed.php');
$oembed= new WP_oEmbed;
$url = 'http://www.youtube.com/watch?v=oHg5SJYRHA0';
//As noted in the comments below, you can auto-detect the video provider with the following
$provider = $oembed->discover($url);
//$provider = 'http://www.youtube.com/oembed';
$video = $oembed->fetch($provider, $url, array('width' => 300, 'height' => 175));
$title = $video->title;
$html = $video->html;
$thumb = $video->thumbnail_url;

Я розумію, що VideoBuzzy відсутній у списку. Схоже, це веб-сайт, який випадає на YouTube. Ви повинні запитати їх, чи є у них протоколи, на які покладено обов'язок. Якщо цього немає, ви можете зареєструвати оброблюваного користувача без використання wp_embed_register_handler().

Сподіваюся, це допомагає!


Звучить справді приємно! Але чи є швидкий спосіб отримати $ ur з посади замість того, щоб бути твердо кодованим?
Саймон

1
Зараз я просто використовую спеціальне поле, щоб розмістити свою URL-адресу відео. Добре працюю, продовжуй тестувати ... Велике спасибі, Брайан! Я просто адаптував код, додавши $ provider = $ oembed-> Discover ($ vid_url); тому мені не потрібно жорстко кодувати постачальника відео
Саймон

@Simon Чи можете ви поділитися кінцевим кодом, який допоміг реалізувати це? І ласкаво дайте нам детальну інформацію про те, як це здійснити? У мене такі ж вимоги, але не знаю, як це зробити на WP, я все ще новачок у WP. Спасибі
Крунал

@Krunal Так, я міг, це досить близько до рішення Брайана! Я щойно додав резервне зображення та оновлюю метадані, якщо oEmbed вдасться, тому мені не потрібно запитувати щоразу. Але я не можу надіслати це вам, оскільки я не можу додати код у коментарях, і я не вважаю, що варто нічого відповісти?
Саймон

1
@Sisir Власне, є. Ви можете подивитися тут: codex.wordpress.org/Function_Reference/… Спершу зареєструйте не-oEmbed обробник, а потім скористайтеся кодом вище. :)
Брайан Фегтер

3

Ви можете використовувати цей плагін Wordpress Video Plugin та відредагувати код цього плагіна та додати інші сайти в ньому.

АБО

Ви повинні інтегрувати FFMPEG в wordpress.


Дякую, я вважаю за краще уникати використання плагінів, коли я можу цього уникнути ^^
Simon

@Simon Це малося на увазі як посилання: Зайдіть у файли "_і редагуйте код цього плагіна". :)
кайзер

@kaiser - так, ти маєш рацію, код плагіна повинен забезпечувати розуміння та робочу реалізацію ^^
Саймон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.