|
|
@ -33,7 +33,7 @@ typedef enum { |
|
|
|
NUV_AUDIO = 'A', |
|
|
|
NUV_AUDIO = 'A', |
|
|
|
NUV_SEEKP = 'R', |
|
|
|
NUV_SEEKP = 'R', |
|
|
|
NUV_MYTHEXT = 'X' |
|
|
|
NUV_MYTHEXT = 'X' |
|
|
|
} frametype_t; |
|
|
|
} nuv_frametype; |
|
|
|
|
|
|
|
|
|
|
|
static int nuv_probe(AVProbeData *p) { |
|
|
|
static int nuv_probe(AVProbeData *p) { |
|
|
|
if (!memcmp(p->buf, "NuppelVideo", 12)) |
|
|
|
if (!memcmp(p->buf, "NuppelVideo", 12)) |
|
|
@ -55,7 +55,7 @@ static int nuv_probe(AVProbeData *p) { |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
static int get_codec_data(ByteIOContext *pb, AVStream *vst, |
|
|
|
static int get_codec_data(ByteIOContext *pb, AVStream *vst, |
|
|
|
AVStream *ast, int myth) { |
|
|
|
AVStream *ast, int myth) { |
|
|
|
frametype_t frametype; |
|
|
|
nuv_frametype frametype; |
|
|
|
if (!vst && !myth) |
|
|
|
if (!vst && !myth) |
|
|
|
return 1; // no codec data needed
|
|
|
|
return 1; // no codec data needed
|
|
|
|
while (!url_feof(pb)) { |
|
|
|
while (!url_feof(pb)) { |
|
|
@ -191,7 +191,7 @@ static int nuv_packet(AVFormatContext *s, AVPacket *pkt) { |
|
|
|
NUVContext *ctx = s->priv_data; |
|
|
|
NUVContext *ctx = s->priv_data; |
|
|
|
ByteIOContext *pb = s->pb; |
|
|
|
ByteIOContext *pb = s->pb; |
|
|
|
uint8_t hdr[HDRSIZE]; |
|
|
|
uint8_t hdr[HDRSIZE]; |
|
|
|
frametype_t frametype; |
|
|
|
nuv_frametype frametype; |
|
|
|
int ret, size; |
|
|
|
int ret, size; |
|
|
|
while (!url_feof(pb)) { |
|
|
|
while (!url_feof(pb)) { |
|
|
|
int copyhdrsize = ctx->rtjpg_video ? HDRSIZE : 0; |
|
|
|
int copyhdrsize = ctx->rtjpg_video ? HDRSIZE : 0; |
|
|
|