A controller-mounted USB drive does not automatically make video available to a visualization. Locate the playback client, then choose a supported client-local media path or a reachable media host. Check file access, decoding support and controller load separately.
A USB stick connected to a controller does not automatically make its video files available to a visualization. The playback component needs a supported way to read those files. If the visualization runs in a browser on another device, a controller-side USB path is not a path on that device.
For PLC visualization video storage, start by locating the playback client. Then choose either media stored locally to that client or a media host the client can reach. Adding storage to the controller only helps if the runtime provides a documented delivery path.
Locate the process that plays the video
A visualization can involve several devices with different jobs:
- The controller executes the control program.
- A visualization server supplies pages, graphics or application data.
- A client renders the interface and, where supported, decodes the video.
Those jobs may run on one device or on separate devices. A browser on a panel can display a controller-hosted visualization while decoding the video on the panel itself. In that arrangement, the controller may deliver the file, but the browser determines whether its media format can play.
An integrated visualization runtime may instead render and decode media on the controller or panel. A desktop HMI application has its own supported file paths and playback components.
Identify the actual runtime before choosing storage. Record where the visualization executes, where the video is decoded and which device owns the proposed USB connection. A successful preview on an engineering workstation does not establish any of those details for the installed client.
Separate storage access from media access
There are three separate questions: can the controller see the file, can the visualization expose it, and can the playback client retrieve it?
A removable drive might be mounted successfully in the controller file system yet remain outside the visualization's published media directory. That can be an intentional boundary. A visualization server should not expose every file the controller can read.
A controller-side path is also not a network address. Entering that path into a browser-based media element does not transfer access to the browser. The element normally needs a supported URL, or another access method explicitly supported by its runtime.
Check the runtime documentation for removable-storage support, media-directory rules and supported source properties. If the server can publish files from removable storage, use its documented configuration. Do not assume that a mounted drive is automatically served, or expose the controller's whole file system to make one video reachable.
Choose between client-local files and a media host
Client-local storage is often the simpler choice for one fixed playback device. A media host becomes more useful when several clients need the same file or updates need a central location.
| Question | Client-local media | Reachable media host |
|---|---|---|
| Where does the file live? | On storage attached to the playback device | On a server accessible to the playback device |
| What must the visualization support? | An approved local-file or packaged-media method | A supported media URL or network access method |
| What happens when the network is unavailable? | Playback may remain available if all required media and application resources are local | Playback depends on documented buffering or caching behavior |
| How are updates handled? | Each client needs an update process | The host holds the media, but clients may retain cached copies |
| What is the main dependency? | Stable paths, permissions and local storage availability | Routing, name resolution, access permissions and server availability |
Client-local does not necessarily mean a loose file opened directly by a browser. Some runtimes package media with the application. Others use a local media service. Choose a method the installed runtime supports.
A network file share is not automatically interchangeable with a web URL. A desktop application might support the share directly, while a browser element may require an HTTP or HTTPS media endpoint.
The controller can be a media host only if that use is supported and its storage and resource limits permit it. If the aim is to avoid controller storage and delivery load, a separate host makes the boundary clearer.
Size the file and delivery path
File size and playback demand are related, but they are not the same limit. Storage holds the complete file. The delivery path must supply data quickly enough for playback.
For an approximate encoded payload size using decimal megabytes:
size in MB = average total bitrate in Mbit/s × duration in seconds ÷ 8
At an average combined audio and video bitrate of 4 Mbit/s, a 120-second clip contains roughly 60 MB of encoded payload, before container overhead. Use the exported file's actual size for the final storage check.
Reducing bitrate reduces file size for the same duration. Reducing resolution or frame rate may allow a lower bitrate at acceptable quality, but inspect text, diagrams and moving details on the intended client.
Also account for simultaneous playback. Several clients requesting separate copies can multiply host traffic. Buffering and seeking can create bursts above the average bitrate, so nominal link speed alone does not establish suitability.
Check the playback component separately
A reachable file can still fail to play. The client must support the container, the encoded audio and video formats, and the media element used by the visualization.
Changing an embedded playback control does not automatically change file access. A desktop-only control cannot be assumed to work in a browser or an embedded runtime. Likewise, wrapping an existing media library does not establish that the visualization can load the wrapper.
Before changing components, check the runtime documentation for:
- Supported media elements and client types.
- Accepted local paths and URL schemes.
- Supported codecs and containers.
- Component registration and process architecture requirements, where applicable.
- Authentication and browser security restrictions.
A short clip in a documented format is useful for separating component compatibility from file size. If that clip plays from the supported location but the full video does not, investigate encoding, storage capacity and delivery performance rather than replacing the whole visualization approach.
Verify the path on the installed client
Verification should follow the same route the installed visualization will use. Opening a file on an engineering workstation proves only that the workstation can access and decode it.
Check the following under approved commissioning conditions:
- Reachability: Open the intended media address from the playback device, not just from a development computer.
- Permissions: Confirm that the visualization can read the media without granting write access or exposing unrelated controller files.
- Playback: Try the beginning, middle and end of the clip, including seeking if the interface allows it.
- Restart behavior: Confirm that local paths, storage mounts and media addresses remain valid after a normal restart.
- Updates: Replace a test asset through the planned update process and check whether caching delays its appearance.
- Unavailable media: Check that a missing drive, unreachable host or unsupported file produces a clear fallback rather than obscuring essential controls.
If the controller serves the video, monitor its diagnostic information during playback. Compare task timing, resource use and communications behavior with the project's accepted limits. Unexpected timing changes or resource warnings are reasons to stop the test and reassess the hosting arrangement, not to relax control protections.
Keep video faults away from machine control
Instructional video should not be the only way to obtain a safety-critical instruction. Required operating information and machine controls need to remain available when media cannot play. Keep existing interlocks and safety functions unchanged.
If the clip is only for training, explanation or general production information, consider whether it belongs inside the control interface at all. The distinction between a factory status display and an operator HMI helps define which information can sit apart from machine operation.
The practical decision is straightforward: use client-local media when a fixed client has a supported local playback method. Use a reachable media host when shared access and centralized updates matter. Use controller-attached removable storage only when the runtime documents how those files reach the playback client and the resulting load is acceptable.
Questions
Can a PLC visualization play video from a controller USB stick?
Not automatically. The controller must recognize the drive, the runtime must support access to its files, and the playback client must have a supported way to retrieve them. A browser on a separate panel cannot use a controller-side file path as though the drive were attached locally.
Should visualization video be stored locally or on a media host?
A supported client-local media method suits a fixed playback device, especially when network independence matters. A reachable media host suits several clients or centrally managed updates. In both cases, verify the installed client's supported paths, media formats, permissions and behavior when the file is unavailable.
Why does a video play on the engineering workstation but not on the panel?
The workstation may have different codecs, permissions, playback components and network access. It may also resolve a path that means nothing on the installed panel. Check the same media source through the actual visualization runtime on the target client before drawing conclusions about compatibility.
Will a different embedded media control solve the storage problem?
A different control may address format compatibility, but it does not automatically expose controller storage to the client. First establish a supported file path or media URL. Then confirm that the control is supported by the installed runtime and can decode the chosen file.
Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.