static int mpjpeg_write_header(AVFormatContext *s)
{
- uint8_t buf1[256];
-
- snprintf(buf1, sizeof(buf1), "--%s\n", BOUNDARY_TAG);
- avio_write(s->pb, buf1, strlen(buf1));
+ avio_printf(s->pb, "--%s\n", BOUNDARY_TAG);
avio_flush(s->pb);
return 0;
}
static int mpjpeg_write_packet(AVFormatContext *s, AVPacket *pkt)
{
- uint8_t buf1[256];
-
- snprintf(buf1, sizeof(buf1), "Content-type: image/jpeg\n\n");
- avio_write(s->pb, buf1, strlen(buf1));
+ avio_printf(s->pb,
+ "Content-length: %i\n"
+ "Content-type: image/jpeg\n\n",
+ pkt->size);
avio_write(s->pb, pkt->data, pkt->size);
- snprintf(buf1, sizeof(buf1), "\n--%s\n", BOUNDARY_TAG);
- avio_write(s->pb, buf1, strlen(buf1));
- avio_flush(s->pb);
+ avio_printf(s->pb, "\n--%s\n", BOUNDARY_TAG);
return 0;
}
AVOutputFormat ff_mpjpeg_muxer = {
.name = "mpjpeg",
- .long_name = NULL_IF_CONFIG_SMALL("MIME multipart JPEG format"),
+ .long_name = NULL_IF_CONFIG_SMALL("MIME multipart JPEG"),
.mime_type = "multipart/x-mixed-replace;boundary=" BOUNDARY_TAG,
.extensions = "mjpg",
- .audio_codec = CODEC_ID_NONE,
- .video_codec = CODEC_ID_MJPEG,
+ .audio_codec = AV_CODEC_ID_NONE,
+ .video_codec = AV_CODEC_ID_MJPEG,
.write_header = mpjpeg_write_header,
.write_packet = mpjpeg_write_packet,
.write_trailer = mpjpeg_write_trailer,
+ .flags = AVFMT_NOTIMESTAMPS,
};