Skip to content

Technical Plugin PlayerSkins

Daniel Neto edited this page Oct 29, 2026 · 1 revision

Technical: PlayerSkins plugin

Configures player skins and related media presentation/hooks.

Audience: developers, advanced administrators and AI-assisted diagnosis. Plugin catalog.

Source baseline

  • Review date: 2026-10-29. Method: static source analysis; runtime/provider behavior was not exercised.
  • Code ownership: AVideo Streamer repository.
  • Reported version: 1.1.
  • Source revision: 7d48f2dfc0289236718a3f9fba7c5ffecff4a37f.
  • Entry class file: PlayerSkins.php.

Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.

Dependencies

No literal dependency declaration was extracted. This does not prove the plugin is standalone.

Literal runtime plugin references: CustomizeAdvanced, CustomizeUser. These calls do not mean every referenced plugin is mandatory.

Hook integration

Override Implementation
getTags() PlayerSkins.php:11
getHeadCode() PlayerSkins.php:259
getStart() PlayerSkins.php:431
getFooterCode() PlayerSkins.php:457
getVideoTags($videos_id) PlayerSkins.php:902
getWatchActionButton($videos_id) PlayerSkins.php:993
getGalleryActionButton($videos_id) PlayerSkins.php:999
executeEveryHour() PlayerSkins.php:1005

Configuration assignments

These are direct assignments inside getEmptyDataObject(), not evaluated effective defaults. Stored plugins.object_data, globals, structured values and conditional branches may alter runtime behavior. Private/default credential values are omitted.

Field Literal default or expression type Literal source label/help Evidence
skin "avideo" — source
playbackRates Computed/structured; inspect source — source
playerCustomDataSetup "" — source
showSocialShareOnEmbed true — source
showLoopButton true — source
showPictureInPicture true — source
showFullscreenToggle Computed/structured; inspect source — source
showLogo false — source
showShareSocial true — source
showShareAutoplay true — source
forceAlwaysAutoplay false — source
showLogoOnEmbed false — source
showLogoAdjustScale "0.4" — source
showLogoAdjustLeft "-74px" — source
showLogoAdjustTop Computed/structured; inspect source — source
disableEmbedTopInfo false — source
contextMenuDisableEmbedOnly false — source
contextMenuLoop true — source
contextMenuCopyVideoURL true — source
contextMenuCopyVideoURLCurrentTime true — source
contextMenuCopyEmbedCode true — source
contextMenuShare true — source
playerFullHeight false — source
playsinline true — source
showVideoSEOViewForBots true — source
hideButtonFromPlayerIfIsSmallPictureInPicture true — source
hideButtonFromPlayerIfIsSmallPlayerLogo true — source
hideButtonFromPlayerIfIsSmallSeek true — source
hideButtonFromPlayerIfIsSmallLoop true — source
hideButtonFromPlayerIfIsSmallAutoplay true — source
autoGenerateAndCacheEPG false — source
chromeCast false — source
airPlay false — source

Files and request surface

This inventory distinguishes implementation files from an API specification. Includes, templates, callbacks and CLI workers are not interchangeable HTTP endpoints. Request-field names below are direct source references, not a complete schema or permission declaration.

File Source role Direct request fields observed
PlayerSkins.php plugin entry class autoplay, catName, evideo, hideAutoplaySwitch, isEmbedded, isMediaPlaySite, mute, playlist_index, playlists_id, t, u, videoName
actionButton.php PHP page/include/worker; inspect caller —
actionButtonGallery.php PHP page/include/worker; inspect caller —
allowAutoplay/chrome.php PHP page/include/worker; inspect caller —
allowAutoplay/firefox.php PHP page/include/worker; inspect caller —
allowAutoplay/index.php PHP page/include/worker; inspect caller —
allowAutoplay/safari.php PHP page/include/worker; inspect caller —
autoplayButton.js browser/worker JavaScript; verify loader —
buffering.debug.php PHP page/include/worker; inspect caller —
contextMenu.php PHP page/include/worker; inspect caller disableContextMenu
epg.php PHP page/include/worker; inspect caller json, rowCount, videos_id
epgButton.js browser/worker JavaScript; verify loader —
events/playerAdsEvents.js browser/worker JavaScript; verify loader —
events/playerAdsEventsMobile.js browser/worker JavaScript; verify loader —
events/playerAdsFunctions.js browser/worker JavaScript; verify loader —
events/playerReady.js browser/worker JavaScript; verify loader —
events/playerReadyMobile.js browser/worker JavaScript; verify loader —
events/playerReadyMuted.js browser/worker JavaScript; verify loader —
events/playerReadyUnmuted.js browser/worker JavaScript; verify loader —
events/vmap_ad_scheduler.js browser/worker JavaScript; verify loader —
fixCurrentSources.js browser/worker JavaScript; verify loader —
fullscrenCheck.js browser/worker JavaScript; verify loader —
logo.js browser/worker JavaScript; verify loader —
loopbutton.js browser/worker JavaScript; verify loader —
mediaSession.json.php JSON entry point; inspect caller and guard —
mediaSession.php PHP page/include/worker; inspect caller —
pipButton.js browser/worker JavaScript; verify loader —
player.js browser/worker JavaScript; verify loader —
playerSample.php PHP page/include/worker; inspect caller playerSkin
saveThumbnail.php PHP page/include/worker; inspect caller —
seo.php PHP page/include/worker; inspect caller —
shareButton.js browser/worker JavaScript; verify loader —
skipintro.js browser/worker JavaScript; verify loader —

Data and migrations

No CREATE TABLE names were extracted from available plugin SQL. The plugin can still use core tables, PHP-created schema or another component's data. Apply installation/update behavior through the owning plugin; this reference is not a script for running historical migrations manually.

Main-file named symbols

Visibility and implementation semantics must be checked in source. Nonempty string defaults are represented as . This is a symbol reference, not a stable public API promise.

Function or method Source
getTags() 11
getDescription() 20
getName() 38
getUUID() 43
getPluginVersion() 48
getEmptyDataObject() 53
getPlaysinline() 102
isYoutubeIntegrationEnabled() 111
getMediaTag($filename, $htmlMediaTag = false) 124
getHeadCode() 259
showAutoplay() 425
getStart() 431
showSkipIntro() 445
getFooterCode() 457
includeFullscreenBlock() 560
getDataSetup($str = "") 573
getStartPlayerJS($onPlayerReady = "'<string>'", $noReadyFunction = false) 616
addOnPlayerReady($onPlayerReady) 627
getStartPlayerJSCode($noReadyFunction = false, $currentTime = 0) 632
getCurrentTime() 746
setIMAADTag($tag) 779
playerJSCodeOnLoad($videos_id, $nextURL = "") 785
prepareStartPlayerJS($onPlayerReady = "'<string>'") 867
isAutoplayEnabled() 886
getVideoTags($videos_id) 902
createMarker($markersList, $width = 10, $color = '<string>') 953
getWatchActionButton($videos_id) 993
getGalleryActionButton($videos_id) 999
executeEveryHour() 1005

Supporting PHP declarations

These symbols are grouped by source file; inspect the class declaration and visibility before calling them.

epg.php

Named symbol Source
getEPGCacheFolder() 208
setEPGCache($name, $content) 214
getEPGCache($name) 225
cmpPrograms($a, $b) 247
cmpChannels($a, $b) 256
getDurationInMinutes($start, $stop) 260
setMaxDate($date) 270
setMinDate($date) 283
createEPG($channel) 296

seo.php

Named symbol Source
extractKeywords($description) 10

Diagnostics and validation

  1. Check the installed/enabled version and the dependencies/settings above.
  2. Identify the actual failing page, request, callback or worker and correlate its timestamp with the AVideo log.
  3. Follow the linked method and caller. Check business-state changes and output artifacts as well as HTTP status.
  4. Reproduce the relevant workflow in a test environment. External provider, Encoder, live-server, storage, payment and authenticated flows require their real integrations.

Shared diagnostic workflow. This page is not a security audit or a claim of end-to-end validation.

Clone this wiki locally