Is there a way to obtain a thumbnail from a video in Lightroom? i.e. a small jpeg file.
The Any File plugin uses the Windows and Mac thumbnail services to get thumbnails for any file type they understand, including video (Windows Explorer on Windows, the Quick Look functionality on Mac). On Mac OS, the command-line tool "qlimage" will retrieve thumbails for any file type. On Windows, I had to write a small program that accesses the thumbnails of Windows Explorer. More than a little painful.
But in your case, perhaps you could use "ffmpeg" on Windows and "qlmanage" on Mac.
Looking at the Video Asset Management plugin, it appears that it uses MPlayer, the Netpbm library, and perl scripts to glue it all together:
I just remembered that there is an undocumented module LrPhotoPictureView:
http://forums.adobe.com/message/4140432#4140432
In a quick test, it shows a thumbnail for .mov files in the catalog:
--[[--------------------------------------------------------------------------
Shows a 400 x 400 thumbnail for the selected file.
----------------------------------------------------------------------------]]
local Require = require 'Require'.path ("../common")
local Debug = require 'Debug'.init ()
require 'strict'
local LrApplication = import 'LrApplication'
local LrDialogs = import 'LrDialogs'
local LrFunctionContext = import 'LrFunctionContext'
local LrPhotoPictureView = import 'LrPhotoPictureView'
local LrView = import 'LrView'
local showErrors = Debug.showErrors
local function main (context)
local f = LrView.osFactory()
local catalog = LrApplication.activeCatalog ()
local photo = catalog:getTargetPhoto ()
if #photo == nil then
LrDialogs.message ("No photo selected")
return
end
local pictureView = LrPhotoPictureView.makePhotoPictureView ({
width = 400, height = 400, photo = catalog:getTargetPhoto ()})
local result = LrDialogs.presentModalDialog {
title = "Thumbnail test", contents = f:column {
f:static_text {title = photo:getFormattedMetadata ("fileName")},
pictureView}}
end
LrFunctionContext.postAsyncTaskWithContext ("test",
showErrors (function (context) main (context) end))
North America
Europe, Middle East and Africa
Asia Pacific