NAME

VideoLAN::LibVLC::Media - Playable media stream

VERSION

version 0.06

DESCRIPTION

This object wraps libvlc_media_t, which is an open stream of playable media. It can be created from a file descriptor, path, or URL ("location"). Specify one of those options to the constructor, and also a library instance in the "libvlc" attribute.

A quick and easy way to create media objects is with "new_media" in VideoLAN::LibVLC, which auto-detects the type of thing you are trying to open.

ATTRIBUTES

path

File name of media. One of 3 possible constructor parameters

location

URI of media. Does not need to be a URI object. One of 3 possible constructor parameters.

fd

File descriptor of media file. Must be a "real" file handle with a defined fileno.

metadata

Hashref of metadata tags extracted from the media file. These are not available (undef) until after the media has been parsed, which is a blocking operation that depends on the decoder thread. See "parse".

Some tags are only supported by newer versions of libvlc. The current possible list is:

Title
Artist
Genre
Copyright
Album
TrackNumber
Description
Rating
Date
Setting
URL
Language
NowPlaying
Publisher
EncodedBy
ArtworkURL
TrackID
TrackTotal
Director
Season
Episode
ShowName
Actors
AlbumArtist
DiscNumber
DiscTotal

METHODS

new

my $media= VideoLAN::LibVLC::Media->new(
  libvlc => $vlc,
  location => $url,      # 
  path     => $filename, # specify only one
  fd       => $handle,   # 
);

parse

Parse the media stream

AUTHOR

Michael Conrad <mike@nrdvana.net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2023 by Michael Conrad.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.