X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fflvenc.c;h=d8d915e269fc8c5a2ce774281a7d6844d25cae8b;hb=0cb233cf46e057c4d4d9352470305de3f569a036;hp=3e933ce9221ea1b797d300625c7ff2d543844602;hpb=b4bcd1e2f1d603419ea9d4fdaab400b1ad35e58c;p=ffmpeg diff --git a/libavformat/flvenc.c b/libavformat/flvenc.c index 3e933ce9221..d8d915e269f 100644 --- a/libavformat/flvenc.c +++ b/libavformat/flvenc.c @@ -20,11 +20,13 @@ */ #include "libavutil/intreadwrite.h" +#include "libavutil/intfloat_readwrite.h" #include "avformat.h" #include "flv.h" #include "internal.h" #include "avc.h" #include "metadata.h" +#include "libavutil/dict.h" #undef NDEBUG #include @@ -179,7 +181,7 @@ static int flv_write_header(AVFormatContext *s) int i; double framerate = 0.0; int metadata_size_pos, data_size; - AVMetadataTag *tag = NULL; + AVDictionaryEntry *tag = NULL; for(i=0; inb_streams; i++){ AVCodecContext *enc = s->streams[i]->codec; @@ -276,7 +278,7 @@ static int flv_write_header(AVFormatContext *s) put_amf_double(pb, audio_enc->codec_tag); } - while ((tag = av_metadata_get(s->metadata, "", tag, AV_METADATA_IGNORE_SUFFIX))) { + while ((tag = av_dict_get(s->metadata, "", tag, AV_DICT_IGNORE_SUFFIX))) { put_amf_string(pb, tag->key); avio_w8(pb, AMF_DATA_TYPE_STRING); put_amf_string(pb, tag->value); @@ -440,24 +442,24 @@ static int flv_write_packet(AVFormatContext *s, AVPacket *pkt) av_free(data); - return 0; + return pb->error; } AVOutputFormat ff_flv_muxer = { - "flv", - NULL_IF_CONFIG_SMALL("FLV format"), - "video/x-flv", - "flv", - sizeof(FLVContext), + .name = "flv", + .long_name = NULL_IF_CONFIG_SMALL("FLV format"), + .mime_type = "video/x-flv", + .extensions = "flv", + .priv_data_size = sizeof(FLVContext), #if CONFIG_LIBMP3LAME - CODEC_ID_MP3, + .audio_codec = CODEC_ID_MP3, #else // CONFIG_LIBMP3LAME - CODEC_ID_ADPCM_SWF, + .audio_codec = CODEC_ID_ADPCM_SWF, #endif // CONFIG_LIBMP3LAME - CODEC_ID_FLV1, - flv_write_header, - flv_write_packet, - flv_write_trailer, + .video_codec = CODEC_ID_FLV1, + .write_header = flv_write_header, + .write_packet = flv_write_packet, + .write_trailer = flv_write_trailer, .codec_tag= (const AVCodecTag* const []){flv_video_codec_ids, flv_audio_codec_ids, 0}, .flags= AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS, };