Message ID | 20170618220254.21682-4-cus@passwd.hu |
---|---|
State | Accepted |
Commit | db9e87dd8c1ce11d37edc16f9380ee8dee68891b |
Headers | show |
On Mon, Jun 19, 2017 at 12:02:54AM +0200, Marton Balint wrote: > Buffering more than one packet can be a huge performance improvement for > encoding files with small packets (e.g. wav) over SMB/CIFS. > > Signed-off-by: Marton Balint <cus@passwd.hu> > --- > 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; Acked-by: Michael thx [...]
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; }
Buffering more than one packet can be a huge performance improvement for encoding files with small packets (e.g. wav) over SMB/CIFS. Signed-off-by: Marton Balint <cus@passwd.hu> --- libavformat/file.c | 5 +++++ 1 file changed, 5 insertions(+)