]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/s337m.c
avutil/opt: add AV_OPT_FLAG_CHILD_CONSTS
[ffmpeg] / libavformat / s337m.c
index 2e85d487b5ee932c6df8eb6809ee481bec2c6ede..36e1047af82429c5c57debd17258e8be836d59b2 100644 (file)
@@ -31,7 +31,7 @@
 #define IS_24LE_MARKER(state)   ((state & 0xFFFFFFFFFFFF) == MARKER_24LE)
 #define IS_LE_MARKER(state)     (IS_16LE_MARKER(state) || IS_20LE_MARKER(state) || IS_24LE_MARKER(state))
 
-static int s337m_get_offset_and_codec(AVFormatContext *s,
+static int s337m_get_offset_and_codec(void *avc,
                                       uint64_t state,
                                       int data_type, int data_size,
                                       int *offset, enum AVCodecID *codec)
@@ -50,8 +50,8 @@ static int s337m_get_offset_and_codec(AVFormatContext *s,
     }
 
     if ((data_type & 0x1F) != 0x1C) {
-        if (s)
-            avpriv_report_missing_feature(s, "Data type %#x in SMPTE 337M", data_type & 0x1F);
+        if (avc)
+            avpriv_report_missing_feature(avc, "Data type %#x in SMPTE 337M", data_type & 0x1F);
         return AVERROR_PATCHWELCOME;
     }
 
@@ -72,8 +72,8 @@ static int s337m_get_offset_and_codec(AVFormatContext *s,
         *offset = 1601;
         break;
     default:
-        if (s)
-            avpriv_report_missing_feature(s, "Dolby E data size %d in SMPTE 337M", data_size);
+        if (avc)
+            avpriv_report_missing_feature(avc, "Dolby E data size %d in SMPTE 337M", data_size);
         return AVERROR_PATCHWELCOME;
     }
 
@@ -82,7 +82,7 @@ static int s337m_get_offset_and_codec(AVFormatContext *s,
     return 0;
 }
 
-static int s337m_probe(AVProbeData *p)
+static int s337m_probe(const AVProbeData *p)
 {
     uint64_t state = 0;
     int markers[3] = { 0 };
@@ -174,7 +174,6 @@ static int s337m_read_packet(AVFormatContext *s, AVPacket *pkt)
     pkt->pos = pos;
 
     if (avio_read(pb, pkt->data, pkt->size) < pkt->size) {
-        av_packet_unref(pkt);
         return AVERROR_EOF;
     }
 
@@ -186,7 +185,6 @@ static int s337m_read_packet(AVFormatContext *s, AVPacket *pkt)
     if (!s->nb_streams) {
         AVStream *st = avformat_new_stream(s, NULL);
         if (!st) {
-            av_packet_unref(pkt);
             return AVERROR(ENOMEM);
         }
         st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO;