26 June, 2020
What's new in 5.2.0
Conversion engine improvements and optimizations:
- Conversion engine will no more copy and duplicate source files when using local conversion servers. This is designed to reduce filesystem load during content processing.
- Better conversion process logging: video logs will become much shorter and won't contain ffmpeg logs if everything works as planned.
- Background tasks that are executed on primary server over a big set of data are revamped using iterative approach. Such tasks, as creating a new screenshot format, will no more block conversion engine as it happened before for projects with tons of content.
- MP4 files post-processing was optimized: conversion engine will now check if the uploaded file needs any post-processing and will skip it if not needed. This should further reduce filesystem load which is very important when conversion is local.
- Video formats now support up to 2 different watermarks at the same time. You can use this to show your logo on top of video and moving text with your copyright in several fragments. In addition to that it will be possible to specify different max width % values for horizontal and vertical videos, so that you can fit watermark ideally in all cases.
- Video and album logs will be automatically merged into smaller compressed archives to reduce disk space usage.
- In video format ffmpeg options you can now specify your custom video filters in -vf option that will be combined together with the filters used by KVS.
Improvements in video screenshots:
- We changed the way how screenshot cropping is applied. Previously KVS applied cropping when creating screenshot formats, so that screenshot sources were not affected. We decided to change this concept for all new videos: KVS will now apply cropping to screenshot sources and will save them in the cropped form. Screenshot sources for old videos will be kept untouched.
- In screenshot crop settings you can now enable automatic trimming of black regions. This option will be switched on by default and will immediately affect all new videos.
- We also changed the way how manually uploaded screenshots are processed. KVS will now provide options to apply crop and watermarking to the manually uploaded screenshots as well, while previously it was not possible at all.
- With the help of these changes we also fixed old KVS problem, when creating new screenshot formats could result in applying crop and watermark to the manually uploaded screenshots, which could then lead to their quality loss for the new formats. This should never happen for new videos.
- A new screenshot group was added for posters with its own separate set of screenshot formats. Posters can only be uploaded manually in comparison to overview screenshots that can be either uploaded or created from source.
- Screenshots for vertical videos will be much better from now! First you can configure different resize options for vertical and horizontal videos in screenshot formats. Secondly when video aspect ratio is different from the required screenshot ratio (e.g. for vertical videos) KVS will create blurred background instead of black bars.
- We improved usability of the GUI when working with screenshots in admin panel.
- Manual screenshot creation feature will now consider LA and time limits configured in content settings for conversion engine, so that it is not possible to start these processes when these limits are hit. Typically these limits are set to reduce load on your primary server during peak periods.
- Mass edit GUI will now allow deleting overview screenshots (leaving only main screenshot) and also re-creating any screenshot formats for the given set of videos.
Exporting feed enhancements:
- It is now possible to export inactive videos via feeds.
- Added a set of static categorization filters, so that you can better control which content appears in feeds.
- Added support for multiple traffic tracking parameters (previously it was possible to specify only one). These parameters will be automatically attached to all URLs and embed codes served by feed.
- Added support for satellites and ability to generate satellite URLs to the content.
- Feed documentation page was enhanced to feed constructor form that will provide GUI to easily configure all feed settings and get data in the needed format.
- We changed how video format filters work in feeds. Previously these filters worked incorrectly and if a video didn't contain the needed format, this video would be exported with other available video file. With the new version feeds will return empty video files for all videos that don't have the asked format. Due to that we also changed the naming for these filters - there will be video_format_1 and video_format_2 instead of video_format_standard and video_format_premium. Any feed URLs that are using old parameter naming will stop working after the update. In order to fix them, you will have to open feed URL and re-select filters in the appearing form to get the new feed URL. You should also understand that when using these filters some videos in the feed may have empty video file and this should result in importing errors for these videos.
Importing feed enhancements:
- Importing feeds in KVS format become more useful. First they will allow you to choose what data you want them to import. Secondly, they will also support importing multiple video files for the same video, similar to manual import. This can be used to import main files and video previews from one site to another without the need to re-create them.
- Feed logging becomes better; you can also configure how long a feed should store its logs, and it will automatically clean them based on your settings.
- Feeds can now auto-delete videos imported by them. For CSV feeds you will have to specify deleted videos feed that provides video URLs to be deleted. This can only be used if in feed settings you selected video URL to be the key field. For feeds in KVS format you don't need to specify anything as they will automatically pull the needed data.
- In feed settings you can now specify filtering by duration, rating, popularity and terminology. You can use this to filter the imported data even if source feed doesn't support any filtering.
- Finally we also added support for grabbers in feeds. This can be used to either grab from RSS channels, or provide custom logic to generate the list of pages you want to grab from other sites.
KVS player and VAST enhancements:
- Our player will now support multiple VAST advertisers in the same VAST response. This is used by some advertising brokers to supply alternative advertisers for better conversion.
- Player will now create a bit different HTML structure when displaying VPAID ads to allow better integration with some advertisers that are sensitive to player HTML layout.
- VAST timeout configured in player settings will now be applied to individual advertisers and not to the whole VAST. This should allow alternate VAST advertisers to be displayed even if the primary advertiser works slowly and triggers timeout.
- Player settings will now allow specifying as many alternate VAST advertisers as needed. If this is set up, alternate advertisers will be tried one by one until any of them displays non-empty ad.
- Player will do better logging of advertising errors.
- VAST profiles are enhanced in multiple ways. For each advertiser in VAST profile you can now configure its specific alternate set of advertisers. Another important change is how you specify countries filtering. Previously you should have normally configured at least one advertiser without any countries filter, which would be used as default one. We considered this approach wrong and completely changed it. With the new version you should explicitly specify whether a certain advertising should be switched on for certain countries or should be switched off instead. So any advertiser with no countries will be switched on for all countries as if there is no filtering enabled for it.
- In addition to countries filtering we also added filtering by referrers to give you full control on when particular advertisers should be switched on or off. A common issue with some traffic partners is that they do not allow advertising of certain type or duration for their traffic. Such advertising typically has better rates, but you are not allowed to use it if you buy traffic from these traffic partners. With the new referrer filtering feature you will have freedom to use any advertising by adjusting it to be switched off for parts of traffic that has any of such limitations.
- Changing player settings will now automatically reset cache for video blocks. Therefore, new settings will be put into effect immediately as you save them. Previously it could take up to several hours for the updated player settings to be propagated to all your video pages.
- VAST subscription key will now be automatically updated from KVS repository, so that you don't have to manually update it in different player settings. It will also support aliases without the need to modify templates.
- Traffic and player stats will support segmentation by device type: desktops, phones and tablets. It can be enabled in stats settings.
- Player stats will support segmentation by embed code profiles. This is extremely useful if you use KVS embed codes on multiple other projects and you want to have separate traffic analysis for them.
- Traffic stats will also include video playbacks for having better outlook on traffic quality.
- Search stats that are added manually in admin panel will not be auto-cleaned with search stats collected from site users. Also in stats settings you can now force all user-submitted search queries to lower case.
- Brand new anti-spam module. It analyzes the history of posted data of the same type from a single IP / account, or from everyone. If this number exceeds the given limit (e.g. an IP will post more than 10 comments during last 300 seconds, or all users in general will post more than 10 comments during last 300 seconds), all future data of the same type (e.g. comments) from the given IP or from all users will be subject to the actions configured in settings. These actions include several levels of strictness: require captcha, deactivate on adding, silently delete or show an error.
- File upload switched to use chunked uploader that will allow supporting virtually any upload filesize limit configured on your server or proxy. This is very important for projects proxied by CloudFlare that imposes 100mb upload filesize limit. Earlier it was possible to move upload to a subdomain in such cases, but now this should not be an issue anymore. Admin panel will start using new upload concept automatically after the update, but in order to switch site uploader you will have to update theme JS file. We will describe this procedure later on theme forum.
- KVS switched to using the 'right' Memcached module. Earlier PHP5 supported 2 different similarly spelled modules and the one we used in KVS was dropped off with PHP7.
- Albums mass editing will allow re-creating any formats for the given set of albums individually. Earlier it was only possible to re-create album format for the whole set of albums.
- Browser filtering in advertising will now support Yandex and UCBrowser.
- Functionality to separate content between administrators was enhanced. It was possible to limit administrators to access only content where they are set as owners. But setting ownership was only allowed to superadmins and thus was not very convenient. This was changed, so that any admin with administration privilege can now adjust content ownership. Also, we added additional level to separate content using admin flags, which could be a better way to manage this. Finally, we also made it possible to deactivate admin users instead of deleting them.
- Content import options will now allow disabling validation performed by grabbers. This validation is actually not needed and can even result in some issues, for example it can take long time and it can expose your server IP to be blocked.
- Content stats plugin has a better GUI now. This plugin will now list executions from the recent period and its results will separate disk space used on different storage groups.
- Category avatars generation plugin will now use the best actual screenshot by CTR when you have screenshot rotation enabled. Earlier this plugin used main screenshot in all cases.
- KVS now supports integration with AWE Black Label via plugin. If you want to start using it, please contact our support.
- Storage servers testing was enhanced to validate SSL issues and report them as soon as they arise.
- Admin panel will now highlight inactive categorization objects in their selectors and will also allow filtering them out if needed.
- KVS was changed to delete comments when users are deleted. This should be done using special "Delete with content" action. Earlier comments were not deleted but instead were switched to anonymous user, which was wrong when deleting spam accounts.
- Captcha support was added to post_edit, playlist_edit and dvd_edit blocks.
- Invite friend block functionality was finally removed. We recommend removing this link from your site footer as it will stop working anyway.
- In logon block we added support for SSO feature (Single Sign-On). This feature will be extremely useful for those who integrate KVS with their other member zones, for example forums. The key point is that you don't need to integrate your users into KVS, but instead you can just build a signed link to KVS site and display it to user at your end. By clicking this link user will be automatically logged in KVS with their account, and if there is no such user yet - it will be automatically created. Therefore, users logged in to your other platform can be securely logged in to KVS without any other effort on their integration.
- The logic for randomize_positions option in list_videos block was slightly changed. This parameter is used to insert random videos into video lists sorted by CTR, so that CTR is also calculated for other videos as well. Now the insertion will not be totally random - you can customize sorting for the inserted videos via a separate parameter randomize_positions_sort_by. Also, the inserted videos will now shift the original videos instead of replacing them, and CTR of the whole block will not be reduced.
- In list_models block you can now filter by custom fields.
- In list_members block you can now filter by member status.
- Empty search results will not use system 404 page if search_empty_404 parameter is enabled. Instead, they will just return 404 status and show empty search results page.
Bugs that have been fixed:
- [SEVERE] Export GUI didn't allow selecting more than 5 fields (regression after 5.1.0).
- [SEVERE] Satellites displayed empty administrators in admin panel (regression after 5.1.1).
- [MEDIUM] Search stats considered same queries with lowercase or uppercase letters as different (regression after 5.1.1).
- [MEDIUM] URL upload from site area could result in error for slow downloads.
- [MEDIUM] Wrong show_model_groups behavior in list_models block.
- [MEDIUM] KVS sometimes could delete /tmp directory.
- [MEDIUM] NATS User Management postback could ignore some conversion events.
- [LOW] For really big imports their validation process could last for days.
- [LOW] In some cases stats could log future dates.
- [LOW] Stop words had higher priority than regex replacements.
- [LOW] Background tasks that have started their conversion would end up in error if conversion server was deactivated.