Browse Source

libavformat/avio: Utility function to return URLContext

tags/n4.0
Jeyapal, Karthick Steven Liu 8 years ago
parent
commit
62f63b24bf
2 changed files with 21 additions and 0 deletions
  1. +8
    -0
      libavformat/avio_internal.h
  2. +13
    -0
      libavformat/aviobuf.c

+ 8
- 0
libavformat/avio_internal.h View File

@@ -132,6 +132,14 @@ int ffio_open_dyn_packet_buf(AVIOContext **s, int max_packet_size);
*/
int ffio_fdopen(AVIOContext **s, URLContext *h);

/**
* Return the URLContext associated with the AVIOContext
*
* @param s IO context
* @return pointer to URLContext or NULL.
*/
URLContext *ffio_geturlcontext(AVIOContext *s);

/**
* Open a write-only fake memory stream. The written data is not stored
* anywhere - this is only used for measuring the amount of data


+ 13
- 0
libavformat/aviobuf.c View File

@@ -980,6 +980,19 @@ fail:
return AVERROR(ENOMEM);
}

URLContext* ffio_geturlcontext(AVIOContext *s)
{
AVIOInternal *internal;
if (!s)
return NULL;

internal = s->opaque;
if (internal && s->read_packet == io_read_packet)
return internal->h;
else
return NULL;
}

int ffio_ensure_seekback(AVIOContext *s, int64_t buf_size)
{
uint8_t *buffer;


Loading…
Cancel
Save