mirror of
https://code.videolan.org/videolan/vlc
synced 2024-08-27 04:21:53 +02:00
Add libvlc_media_new_fd
This commit is contained in:
parent
a67fbfcd73
commit
8ff2e66fce
@ -202,6 +202,35 @@ VLC_PUBLIC_API libvlc_media_t *libvlc_media_new_path(
|
||||
libvlc_instance_t *p_instance,
|
||||
const char *path );
|
||||
|
||||
/**
|
||||
* Create a media for an already open file descriptor.
|
||||
* The file descriptor shall be open for reading (or reading and writing).
|
||||
*
|
||||
* Regular file descriptors, pipe read descriptors and character device
|
||||
* descriptors (including TTYs) are supported on all platforms.
|
||||
* Block device descriptors are supported where available.
|
||||
* Directory descriptors are supported on systems that provide fdopendir().
|
||||
* Sockets are supported on all platforms where they are file descriptors,
|
||||
* i.e. all except Windows.
|
||||
*
|
||||
* \note This library will <b>not</b> automatically close the file descriptor
|
||||
* under any circumstance. Nevertheless, a file descriptor can usually only be
|
||||
* rendered once in a media player. To render it a second time, the file
|
||||
* descriptor should probably be rewound to the beginning with lseek().
|
||||
*
|
||||
* \see libvlc_media_release
|
||||
*
|
||||
* \version LibVLC 1.1.5 and later.
|
||||
*
|
||||
* \param p_instance the instance
|
||||
* \param fd open file descriptor
|
||||
* \return the newly created media or NULL on error
|
||||
*/
|
||||
VLC_PUBLIC_API libvlc_media_t *libvlc_media_new_fd(
|
||||
libvlc_instance_t *p_instance,
|
||||
int fd );
|
||||
|
||||
|
||||
/**
|
||||
* Create a media as an empty node with a given name.
|
||||
*
|
||||
|
@ -340,6 +340,14 @@ libvlc_media_t *libvlc_media_new_path( libvlc_instance_t *p_instance,
|
||||
return m;
|
||||
}
|
||||
|
||||
libvlc_media_t *libvlc_media_new_fd( libvlc_instance_t *p_instance, int fd )
|
||||
{
|
||||
char mrl[16];
|
||||
snprintf( mrl, sizeof(mrl), "fd://%d", fd );
|
||||
|
||||
return libvlc_media_new_location( p_instance, mrl );
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* Create a new media descriptor object
|
||||
**************************************************************************/
|
||||
|
@ -101,6 +101,7 @@ libvlc_media_list_remove_index
|
||||
libvlc_media_list_retain
|
||||
libvlc_media_list_set_media
|
||||
libvlc_media_list_unlock
|
||||
libvlc_media_new_fd
|
||||
libvlc_media_new_location
|
||||
libvlc_media_new_path
|
||||
libvlc_media_new_as_node
|
||||
|
Loading…
Reference in New Issue
Block a user