Changed default write chunk size for BD to 64 KiB
This commit is contained in:
parent
78a888db0b
commit
5ee47c93af
@ -2,7 +2,7 @@
|
|||||||
.\" First parameter, NAME, should be all caps
|
.\" First parameter, NAME, should be all caps
|
||||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||||
.\" other parameters are allowed: see man(7), man(1)
|
.\" other parameters are allowed: see man(7), man(1)
|
||||||
.TH CDRSKIN 1 "Version 1.3.1, Jul 08, 2013"
|
.TH CDRSKIN 1 "Version 1.3.1, Aug 04, 2013"
|
||||||
.\" Please adjust this date whenever revising the manpage.
|
.\" Please adjust this date whenever revising the manpage.
|
||||||
.\"
|
.\"
|
||||||
.\" Some roff macros, for reference:
|
.\" Some roff macros, for reference:
|
||||||
@ -1070,7 +1070,6 @@ media dependend transaction size. With DVD-RAM, BD-RE, DVD+RW this is 2k, with
|
|||||||
overwriteable DVD-RW it is 32k.
|
overwriteable DVD-RW it is 32k.
|
||||||
.TP
|
.TP
|
||||||
.BI dvd_obs= default|32k|64k
|
.BI dvd_obs= default|32k|64k
|
||||||
Linux specific:
|
|
||||||
Set the number of bytes to be transmitted with each write operation to DVD
|
Set the number of bytes to be transmitted with each write operation to DVD
|
||||||
or BD media. With most write types, tracks get padded up to the next multiple
|
or BD media. With most write types, tracks get padded up to the next multiple
|
||||||
of this write size (see option --obs_pad).
|
of this write size (see option --obs_pad).
|
||||||
|
@ -1 +1 @@
|
|||||||
#define Cdrskin_timestamP "2013.07.29.091415"
|
#define Cdrskin_timestamP "2013.08.04.100247"
|
||||||
|
@ -221,14 +221,14 @@ CFLAGS="$LIBBURN_O_DIRECT_DEF $CFLAGS"
|
|||||||
|
|
||||||
dnl ts A91116
|
dnl ts A91116
|
||||||
AC_ARG_ENABLE(dvd-obs-64k,
|
AC_ARG_ENABLE(dvd-obs-64k,
|
||||||
[ --enable-dvd-obs-64k 64 KB default size for DVD/BD writing, default=no],
|
[ --enable-dvd-obs-64k 64 KB default size for DVD writing, default=no],
|
||||||
, enable_dvd_obs_64k=no)
|
, enable_dvd_obs_64k=no)
|
||||||
if test x$enable_dvd_obs_64k = xyes; then
|
if test x$enable_dvd_obs_64k = xyes; then
|
||||||
LIBBURN_DVD_OBS_64K="-DLibburn_dvd_obs_default_64K"
|
LIBBURN_DVD_OBS_64K="-DLibburn_dvd_obs_default_64K"
|
||||||
echo "enabled write size default 64 KB on DVD and BD"
|
echo "enabled write size default 64 KB on DVD"
|
||||||
else
|
else
|
||||||
LIBBURN_DVD_OBS_64K=
|
LIBBURN_DVD_OBS_64K=
|
||||||
echo "disabled write size default 64 KB on DVD and BD"
|
echo "disabled write size default 64 KB on DVD"
|
||||||
fi
|
fi
|
||||||
CFLAGS="$LIBBURN_DVD_OBS_64K $CFLAGS"
|
CFLAGS="$LIBBURN_DVD_OBS_64K $CFLAGS"
|
||||||
|
|
||||||
|
@ -76,11 +76,15 @@ extern struct libdax_msgs *libdax_messenger;
|
|||||||
|
|
||||||
/* The size to be used with BD-RE media in normal, not streamed mode.
|
/* The size to be used with BD-RE media in normal, not streamed mode.
|
||||||
*/
|
*/
|
||||||
#define Libburn_bd_re_obS (32 * 1024)
|
#define Libburn_bd_re_obS (64 * 1024)
|
||||||
|
|
||||||
/* The size to be used with BD-RE media in streamed mode.
|
/* The size to be used with BD-R media in normal, not streamed mode.
|
||||||
*/
|
*/
|
||||||
#define Libburn_bd_re_streamed_obS (64 * 1024)
|
#define Libburn_bd_r_obS (64 * 1024)
|
||||||
|
|
||||||
|
/* The size to be used with BD-RE and BD-R media in streamed mode.
|
||||||
|
*/
|
||||||
|
#define Libburn_bd_streamed_obS (64 * 1024)
|
||||||
|
|
||||||
|
|
||||||
static int type_to_ctrl(int mode)
|
static int type_to_ctrl(int mode)
|
||||||
@ -2307,7 +2311,7 @@ int burn_dvd_write_sync(struct burn_write_opts *o,
|
|||||||
if (o->obs_pad < 2)
|
if (o->obs_pad < 2)
|
||||||
o->obs_pad = 1;
|
o->obs_pad = 1;
|
||||||
if (d->current_profile == 0x43) /* BD-RE */
|
if (d->current_profile == 0x43) /* BD-RE */
|
||||||
o->obs = Libburn_bd_re_streamed_obS;
|
o->obs = Libburn_bd_streamed_obS;
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (d->current_profile == 0x13) {
|
} else if (d->current_profile == 0x13) {
|
||||||
@ -2385,10 +2389,12 @@ int burn_dvd_write_sync(struct burn_write_opts *o,
|
|||||||
}
|
}
|
||||||
/* ??? padding needed ??? cowardly doing it for now */
|
/* ??? padding needed ??? cowardly doing it for now */
|
||||||
if (o->obs_pad < 2)
|
if (o->obs_pad < 2)
|
||||||
o->obs_pad = 1; /* fill-up track's last 32k buffer */
|
o->obs_pad = 1; /* fill-up track's last obs buffer */
|
||||||
|
if (d->current_profile == 0x41) /* BD-R */
|
||||||
|
o->obs = Libburn_bd_r_obS;
|
||||||
if (d->do_stream_recording) {
|
if (d->do_stream_recording) {
|
||||||
if (d->current_profile == 0x41) /* BD-R */
|
if (d->current_profile == 0x41) /* BD-R */
|
||||||
o->obs = Libburn_bd_re_streamed_obS;
|
o->obs = Libburn_bd_streamed_obS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2418,10 +2424,10 @@ int burn_dvd_write_sync(struct burn_write_opts *o,
|
|||||||
|
|
||||||
if (d->do_stream_recording &&
|
if (d->do_stream_recording &&
|
||||||
(d->current_profile == 0x43 || d->current_profile == 0x41) &&
|
(d->current_profile == 0x43 || d->current_profile == 0x41) &&
|
||||||
o->obs < Libburn_bd_re_streamed_obS) {
|
o->obs < Libburn_bd_streamed_obS) {
|
||||||
/* LG GGW-H20 writes junk with stream recording and obs=32k */
|
/* LG GGW-H20 writes junk with stream recording and obs=32k */
|
||||||
sprintf(msg,
|
sprintf(msg,
|
||||||
"Stream recording disabled because of small OS buffer");
|
"Stream recording disabled because of small output buffer");
|
||||||
libdax_msgs_submit(libdax_messenger, d->global_index,
|
libdax_msgs_submit(libdax_messenger, d->global_index,
|
||||||
0x00020176, LIBDAX_MSGS_SEV_NOTE,
|
0x00020176, LIBDAX_MSGS_SEV_NOTE,
|
||||||
LIBDAX_MSGS_PRIO_HIGH, msg, 0, 0);
|
LIBDAX_MSGS_PRIO_HIGH, msg, 0, 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user