Skip to content

Thumbnails in backend#1708

Open
Arnei wants to merge 4 commits into
opencast:developfrom
Arnei:thumbnails-in-backend
Open

Thumbnails in backend#1708
Arnei wants to merge 4 commits into
opencast:developfrom
Arnei:thumbnails-in-backend

Conversation

@Arnei

@Arnei Arnei commented Jun 3, 2026

Copy link
Copy Markdown
Member

THIS PR WILL BREAK THUMBNAIL GENERATION WITHOUT THE RELATED BACKEND PR: opencast/opencast#7698

Fixes #814.

Currently when generating a thumbnail, we create it here in the frontend and then send it to the backend. With this patch, we instead send the time stamp it was generated from to the backend.

The goal is to let the backend generate the actual thumbnail, instead of the frontend. This avoids quality issues when generating thumbnails from low resolution videos in the frontend. It also allows for respecting institution specific thumbnail settings (e.g. encoding profiles).

The downside is that this relies on workflow properties. As such, admins will have to adapt their workflows or thumbnail generation will be broken for them.

This change should not impact the user experience of using the editor frontend.

How to test this

Requires changes in the backend. Can otherwise be tested as is.

Currently when generating a thumbnail, we create it here
in the frontend and then send it to the backend. With this
patch, we instead send the timestamp it was generated from
to the backend.

The goal is to let the backend generate the actual thumbnail,
instead of the frontend. This avoids quality issues when
generating thumbnails from low resolution videos in the
frontend. It also allows for respecting institituion specific
thumbnail settings (e.g. encoding profiles).

The downside is that this relies on workflow properties. As
such, admins will have to adapt their workflows or thumbnail
generation will be broken for
them.

This change should not impact the user experience of using
the editor frontend.
@Arnei Arnei added the type:enhancement New feature or request label Jun 3, 2026
@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown

This pull request is deployed at test.editor.opencast.org/1708/2026-06-03_15-05-20/ .
It might take a few minutes for it to become available.

@snoesberger snoesberger left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your work! I tested the PR together with the corresponding backend PR opencast/opencast#7698 locally in different scenarios and found some issues:

  • direct publish Presenter/Presentation/Dual stream events -> thumbnail resolution 1280 x 720 ✅
  • Presenter video with Editor generated thumbnail -> thumbnail resolution 1280 x 720 ✅
  • Presentation video with Editor generated thumbnail -> thumbnail resolution 1280 x 720 ✅
  • Dual stream with Editor generated Presenter thumbnail -> thumbnail resolution 1280 x 720 ✅
  • Dual stream with Editor generated Presentation thumbnail "use for all tracks" -> thumbnail resolution 640 x 360 ❌
  • Changing the Presenter or Presentation video generated thumbnail for a published event afterwards with a newly generated thumbnail ✅
  • Discard Presenter or Presentation video generated thumbnail for a published event afterwards -> nothing happens if I press the button "Discard" ❌
  • Upload a new thumbnail image for a published Presenter, Presentation or Dual stream event which already has a generated thumbnail -> picture upload dialogue opens, but the picture isn't added ❌
  • Changing Dual stream Presenter thumbnail for a published event afterwards with a newly generated Presentation thumbnail ("use for all tracks") -> newly generated Presentation thumbnail is ignored and old Presenter thumbnail still being used ❌
  • Changing Dual stream Presentation thumbnail for a published event afterwards with a newly generated Presenter thumbnail ("use for all tracks") -> newly generated Presenter thumbnail is ignored and old Presentation thumbnail still being used ❌
  • Thumbnail picture isn't shown in correct resolution in Paella 8 (probably a Paella player issue and not related to this issue) ❌

To summarize my observations: changing the thumbnails for an already published event and the handling of thumbnails for dual stream events has some issues and needs improvements.

Arnei added 2 commits June 16, 2026 10:26
Was not working for timestamp thumbnails, because I
forgot to adapt the code for that
@Arnei

Arnei commented Jun 16, 2026

Copy link
Copy Markdown
Member Author

Dual stream with Editor generated Presentation thumbnail "use for all tracks" -> thumbnail resolution 640 x 360

Should be fixed in the backend now.

Discard Presenter or Presentation video generated thumbnail for a published event afterwards -> nothing happens if I press the button "Discard"

"Discard" button should be properly enabled/disabled again (note that "discard" only allows you to undo all changes made to the thumbnail during the current editor session)

Upload a new thumbnail image for a published Presenter, Presentation or Dual stream event which already has a generated thumbnail -> picture upload dialogue opens, but the picture isn't added

Should be fixed now.

Changing Dual stream Presenter thumbnail for a published event afterwards with a newly generated Presentation thumbnail ("use for all tracks") -> newly generated Presentation thumbnail is ignored and old Presenter thumbnail still being used

Should now use correct thumbnail, same for the other way around

Thumbnail picture isn't shown in correct resolution in Paella 8 (probably a Paella player issue and not related to this issue)

I did not take a look at this.

@snoesberger

Copy link
Copy Markdown
Contributor

Dual stream with Editor generated Presentation thumbnail "use for all tracks" -> thumbnail resolution 640 x 360

Should be fixed in the backend now.

It's not quite fixed yet, but the behaviour has changed. If I generate a thumbnail from the presentation track and press "use for all tracks", it looks fine in the editor, but in the published event, the presenter thumbnail, for the time chosen in the presentation track, is shown as the preview instead of the presentation thumbnail.

Discard Presenter or Presentation video generated thumbnail for a published event afterwards -> nothing happens if I press the button "Discard"

"Discard" button should be properly enabled/disabled again (note that "discard" only allows you to undo all changes made to the thumbnail during the current editor session)

Thanks for the clarification, "Discard" now works as described.

Upload a new thumbnail image for a published Presenter, Presentation or Dual stream event which already has a generated thumbnail -> picture upload dialogue opens, but the picture isn't added

Should be fixed now.

Yes.

Changing Dual stream Presenter thumbnail for a published event afterwards with a newly generated Presentation thumbnail ("use for all tracks") -> newly generated Presentation thumbnail is ignored and old Presenter thumbnail still being used

Should now use correct thumbnail, same for the other way around

Same problem as described in the first point.

Not only sends the timestamp a thumbnail should be generated from,
but also the flavor type of the video it should be generated from.
This is necessary when "useWithAllTracks" is used,
because it adds a thumbnail from one video to other videos.
@Arnei

Arnei commented Jun 19, 2026

Copy link
Copy Markdown
Member Author

Thanks for catching that yet again. "UseForAllTracks" should now also work fine for the published event.

@snoesberger snoesberger left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching that yet again. "UseForAllTracks" should now also work fine for the published event.

Thanks @Arnei for also fixing the issue with "UseForAllTracks". I have now been able to successfully test all of my thumbnail use cases. But I haven't looked at the source code, perhaps someone else could check that it looks reasonable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Alternate approach of creating the thumbnails on the client side

2 participants