]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/blobdiff - libavformat/libnut.c
frsh: Export information about the last RTP contract and VRES
[frescor/ffmpeg.git] / libavformat / libnut.c
index 6f0142113ed40ae0a30ffd6265aac510b169534a..86cf6a5ec7ea266240e3759ce945c720624de38e 100644 (file)
@@ -20,7 +20,7 @@
  */
 
 /**
- * @file libnut.c
+ * @file libavformat/libnut.c
  * NUT demuxing and muxing via libnut.
  * @author Oded Shimon <ods15@ods15.dyndns.org>
  */
@@ -33,8 +33,8 @@
 #define ID_LENGTH (strlen(ID_STRING) + 1)
 
 typedef struct {
-    nut_context_t * nut;
-    nut_stream_header_t * s;
+    nut_context_tt * nut;
+    nut_stream_header_tt * s;
 } NUTContext;
 
 static const AVCodecTag nut_tags[] = {
@@ -44,7 +44,7 @@ static const AVCodecTag nut_tags[] = {
     { 0, 0 },
 };
 
-#ifdef CONFIG_MUXERS
+#if CONFIG_LIBNUT_MUXER
 static int av_write(void * h, size_t len, const uint8_t * buf) {
     ByteIOContext * bc = h;
     put_buffer(bc, buf, len);
@@ -54,8 +54,8 @@ static int av_write(void * h, size_t len, const uint8_t * buf) {
 
 static int nut_write_header(AVFormatContext * avf) {
     NUTContext * priv = avf->priv_data;
-    ByteIOContext * bc = &avf->pb;
-    nut_muxer_opts_t mopts = {
+    ByteIOContext * bc = avf->pb;
+    nut_muxer_opts_tt mopts = {
         .output = {
             .priv = bc,
             .write = av_write,
@@ -66,7 +66,7 @@ static int nut_write_header(AVFormatContext * avf) {
         .max_distance = 32768,
         .fti = NULL,
     };
-    nut_stream_header_t * s;
+    nut_stream_header_tt * s;
     int i;
 
     priv->s = s = av_mallocz((avf->nb_streams + 1) * sizeof*s);
@@ -83,8 +83,8 @@ static int nut_write_header(AVFormatContext * avf) {
         else fourcc = codec_get_tag(nut_tags, codec->codec_id);
 
         if (!fourcc) {
-            if (codec->codec_type == CODEC_TYPE_VIDEO) fourcc = codec_get_bmp_tag(codec->codec_id);
-            if (codec->codec_type == CODEC_TYPE_AUDIO) fourcc = codec_get_wav_tag(codec->codec_id);
+            if (codec->codec_type == CODEC_TYPE_VIDEO) fourcc = codec_get_tag(codec_bmp_tags, codec->codec_id);
+            if (codec->codec_type == CODEC_TYPE_AUDIO) fourcc = codec_get_tag(codec_wav_tags, codec->codec_id);
         }
 
         s[i].fourcc_len = 4;
@@ -123,7 +123,7 @@ static int nut_write_header(AVFormatContext * avf) {
 
 static int nut_write_packet(AVFormatContext * avf, AVPacket * pkt) {
     NUTContext * priv = avf->priv_data;
-    nut_packet_t p;
+    nut_packet_tt p;
 
     p.len = pkt->size;
     p.stream = pkt->stream_index;
@@ -137,7 +137,7 @@ static int nut_write_packet(AVFormatContext * avf, AVPacket * pkt) {
 }
 
 static int nut_write_trailer(AVFormatContext * avf) {
-    ByteIOContext * bc = &avf->pb;
+    ByteIOContext * bc = avf->pb;
     NUTContext * priv = avf->priv_data;
     int i;
 
@@ -151,7 +151,7 @@ static int nut_write_trailer(AVFormatContext * avf) {
 }
 
 AVOutputFormat libnut_muxer = {
-    "nut",
+    "libnut",
     "nut format",
     "video/x-nut",
     "nut",
@@ -163,10 +163,10 @@ AVOutputFormat libnut_muxer = {
     nut_write_trailer,
     .flags = AVFMT_GLOBALHEADER,
 };
-#endif //CONFIG_MUXERS
+#endif /* CONFIG_LIBNUT_MUXER */
 
 static int nut_probe(AVProbeData *p) {
-    if (p->buf_size >= ID_LENGTH && !memcmp(p->buf, ID_STRING, ID_LENGTH)) return AVPROBE_SCORE_MAX;
+    if (!memcmp(p->buf, ID_STRING, ID_LENGTH)) return AVPROBE_SCORE_MAX;
 
     return 0;
 }
@@ -187,8 +187,8 @@ static off_t av_seek(void * h, long long pos, int whence) {
 
 static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) {
     NUTContext * priv = avf->priv_data;
-    ByteIOContext * bc = &avf->pb;
-    nut_demuxer_opts_t dopts = {
+    ByteIOContext * bc = avf->pb;
+    nut_demuxer_opts_tt dopts = {
         .input = {
             .priv = bc,
             .seek = av_seek,
@@ -200,8 +200,8 @@ static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) {
         .read_index = 1,
         .cache_syncpoints = 1,
     };
-    nut_context_t * nut = priv->nut = nut_demuxer_init(&dopts);
-    nut_stream_header_t * s;
+    nut_context_tt * nut = priv->nut = nut_demuxer_init(&dopts);
+    nut_stream_header_tt * s;
     int ret, i;
 
     if ((ret = nut_read_headers(nut, &s, NULL))) {
@@ -235,19 +235,19 @@ static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) {
         switch(s[i].type) {
         case NUT_AUDIO_CLASS:
             st->codec->codec_type = CODEC_TYPE_AUDIO;
-            if (st->codec->codec_id == CODEC_ID_NONE) st->codec->codec_id = codec_get_wav_id(st->codec->codec_tag);
+            if (st->codec->codec_id == CODEC_ID_NONE) st->codec->codec_id = codec_get_id(codec_wav_tags, st->codec->codec_tag);
 
             st->codec->channels = s[i].channel_count;
             st->codec->sample_rate = s[i].samplerate_num / s[i].samplerate_denom;
             break;
         case NUT_VIDEO_CLASS:
             st->codec->codec_type = CODEC_TYPE_VIDEO;
-            if (st->codec->codec_id == CODEC_ID_NONE) st->codec->codec_id = codec_get_bmp_id(st->codec->codec_tag);
+            if (st->codec->codec_id == CODEC_ID_NONE) st->codec->codec_id = codec_get_id(codec_bmp_tags, st->codec->codec_tag);
 
             st->codec->width = s[i].width;
             st->codec->height = s[i].height;
-            st->codec->sample_aspect_ratio.num = s[i].sample_width;
-            st->codec->sample_aspect_ratio.den = s[i].sample_height;
+            st->sample_aspect_ratio.num = s[i].sample_width;
+            st->sample_aspect_ratio.den = s[i].sample_height;
             break;
         }
         if (st->codec->codec_id == CODEC_ID_NONE) av_log(avf, AV_LOG_ERROR, "Unknown codec?!\n");
@@ -258,7 +258,7 @@ static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) {
 
 static int nut_read_packet(AVFormatContext * avf, AVPacket * pkt) {
     NUTContext * priv = avf->priv_data;
-    nut_packet_t pd;
+    nut_packet_tt pd;
     int ret;
 
     ret = nut_read_next_packet(priv->nut, &pd);
@@ -272,7 +272,7 @@ static int nut_read_packet(AVFormatContext * avf, AVPacket * pkt) {
     if (pd.flags & NUT_FLAG_KEY) pkt->flags |= PKT_FLAG_KEY;
     pkt->pts = pd.pts;
     pkt->stream_index = pd.stream;
-    pkt->pos = url_ftell(&avf->pb);
+    pkt->pos = url_ftell(avf->pb);
 
     ret = nut_read_frame(priv->nut, &pd.len, pkt->data);
 
@@ -298,8 +298,8 @@ static int nut_read_close(AVFormatContext *s) {
 }
 
 AVInputFormat libnut_demuxer = {
-    "nut",
-    "nut format",
+    "libnut",
+    NULL_IF_CONFIG_SMALL("NUT format"),
     sizeof(NUTContext),
     nut_probe,
     nut_read_header,