[FFmpeg-cvslog] avformat/file: increase min/max packet size to 256k for written files

Marton Balint git at videolan.org
Sat Jun 24 20:13:04 EEST 2017


ffmpeg | branch: master | Marton Balint <cus at passwd.hu> | Sun Jun  4 04:25:43 2017 +0200| [db9e87dd8c1ce11d37edc16f9380ee8dee68891b] | committer: Marton Balint

avformat/file: increase min/max packet size to 256k for written files

Buffering more than one packet can be a huge performance improvement for
encoding files with small packets (e.g. wav) over SMB/CIFS.

Acked-by: Michael Niedermayer <michael at niedermayer.cc>
Signed-off-by: Marton Balint <cus at passwd.hu>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=db9e87dd8c1ce11d37edc16f9380ee8dee68891b
---

 libavformat/file.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavformat/file.c b/libavformat/file.c
index 3db9cd0b9e..1d321c4205 100644
--- a/libavformat/file.c
+++ b/libavformat/file.c
@@ -229,6 +229,11 @@ static int file_open(URLContext *h, const char *filename, int flags)
 
     h->is_streamed = !fstat(fd, &st) && S_ISFIFO(st.st_mode);
 
+    /* Buffer writes more than the default 32k to improve throughput especially
+     * with networked file systems */
+    if (!h->is_streamed && flags & AVIO_FLAG_WRITE)
+        h->min_packet_size = h->max_packet_size = 262144;
+
     return 0;
 }
 



More information about the ffmpeg-cvslog mailing list