Virtual assets for assets source


(Alexander Kappler) #1

Hi everyone,

we are currently developing a vimeo implementation for asset source and we discovered some issues. We have a workaround to use vimeo like an image asset source, but we don’t have the feeling that this is a good way. Feels somehow hacky…

We tried first to use a new media type “vimeo/video” to differentiate between the source (vimeo) and the classes which should get used with it. But unfortunately at one point, the media type gets checked again and therefore our configuration is not working. So we decided to use vimeo like an image asset source.

What we are actually missing or haven’t just not found yet, is something we call a “virtual asset”. To explain this approach more, think of vimeo video. Vimeo delivers all data from their CDN, poster image, video embed url, etc. So actually, we don’t want to store any document, video or image asset. We just want to store the data of a video and pass it to a content element, when it’s get selected from the editor.

So the idea would be to have a predefined virtual asset, which does only say you have to deliver e.g.:

  1. Title
  2. Thumbnails Image (Url or Asset)
  3. “Media Type”
  4. (File)-Icon

As this are the minimum information to get a rendered list of all (virtual) assets.
Also any additional information could be stored to an asset and passed to fusion.

This would make the approach of asset source so much more usefull, as you could e.g. also import data from any system like a product information management system (PIM), youtube, … .

Maybe this all is already possible and we just haven’t seen it, so we would be glad for any hints. :slight_smile:

Thank you!


(Christian Müller) #2

That is a new concept that could be useful to have but needs a good consideration and plan to get in. Right now it’s not really possible within the asset “universe”.


(Alexander Kappler) #3

Okay, I had already the feeling that this might be the case.

Thank you @christianm for your feedback.


(Daniel Lienert) #4

As I understand, displaying a video needs more as the core provides currently. It needs some HTML / JS snippet usually provided by 3rd party extension.

An approach could be to display the preview images in the media module and when selected in an also provided vimeo video node type, the vimeo URL is fetched and used instaed of the preview.


(Sebastian Helzle) #5

Doesn’t sound that different from what I did with my Slideshare Asset Source.
It the Media module I have the preview thumbnail and in the frontend I render some HTML which will then embed the interactive slides.

The code is not online yet as there were some bugs in there, but maybe it helps you.
Can put it online later this evening.


(Alexander Kappler) #6

@daniellienert this is how we will solve it now. We see a vimeo video as an image, probably use the vimeo unique id as filename and therefore have all information to use it in a vimeo video player nodetype.

It just felt wrong that we had to import an image and also show an image file icon in the Media Module, eventhough the content is actually a video and all files are delivered by an external CDN.

We got it almost working with defining a new media query, till that point when Neos checks the media type again and fails as the imported resource is an image. Maybe we try to spend some more time and try to override the media type map function with a special case for vimeo/video media type.

In the end, I think we just understood the concept of an asset source a bit wrong. We thought it is a more general approach so that you can add any data source, select it in the media module and use it in a node type like you do for image, with out the need of importing a file.

We will release the vimeo asset source package as soon as we are finished with it.

Thank you everyone


(Robert Lemke) #7

Actually, the general concept of asset sources is meant to support your use case, too. But it’s not yet implemented. So, if there’s an opportunity in the scope of some project, we should work together on making that happen.