Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
F
freeswitch
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
张华
freeswitch
Commits
f56911bb
提交
f56911bb
authored
4月 05, 2013
作者:
Steve Underwood
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
More steps towards colour FAX
上级
83fc8ddf
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
323 行增加
和
279 行删除
+323
-279
t30.h
libs/spandsp/src/spandsp/t30.h
+9
-97
t4_rx.h
libs/spandsp/src/spandsp/t4_rx.h
+124
-24
t30.c
libs/spandsp/src/t30.c
+88
-88
t30_api.c
libs/spandsp/src/t30_api.c
+22
-22
t4_tx.c
libs/spandsp/src/t4_tx.c
+33
-0
fax_tests.c
libs/spandsp/tests/fax_tests.c
+20
-20
tsb85_tests.c
libs/spandsp/tests/tsb85_tests.c
+20
-20
tif_dirinfo.c
libs/tiff-4.0.2/libtiff/tif_dirinfo.c
+1
-1
mod_spandsp_fax.c
src/mod/applications/mod_spandsp/mod_spandsp_fax.c
+6
-7
没有找到文件。
libs/spandsp/src/spandsp/t30.h
浏览文件 @
f56911bb
...
...
@@ -323,19 +323,6 @@ enum
T30_MODEM_DONE
};
enum
{
T30_FRONT_END_SEND_STEP_COMPLETE
=
0
,
/*! The current receive has completed. This is only needed to report an
unexpected end of the receive operation, as might happen with T.38
dying. */
T30_FRONT_END_RECEIVE_COMPLETE
,
T30_FRONT_END_SIGNAL_PRESENT
,
T30_FRONT_END_SIGNAL_ABSENT
,
T30_FRONT_END_CED_PRESENT
,
T30_FRONT_END_CNG_PRESENT
};
enum
{
/*! Support the V.27ter modem (2400, and 4800bps) for image transfer. */
...
...
@@ -352,90 +339,15 @@ enum
enum
{
/*! No compression */
T30_SUPPORT_COMPRESSION_NONE
=
0x01
,
/*! T.1 1D compression */
T30_SUPPORT_COMPRESSION_T4_1D
=
0x02
,
/*! T.4 2D compression */
T30_SUPPORT_COMPRESSION_T4_2D
=
0x04
,
/*! T.6 2D compression */
T30_SUPPORT_COMPRESSION_T6
=
0x08
,
/*! T.85 monochrome JBIG compression, with fixed L0 */
T30_SUPPORT_COMPRESSION_T85
=
0x10
,
/*! T.85 monochrome JBIG compression, with variable L0 */
T30_SUPPORT_COMPRESSION_T85_L0
=
0x20
,
/*! T.43 colour JBIG compression */
T30_SUPPORT_COMPRESSION_T43
=
0x40
,
/*! T.45 run length colour compression */
T30_SUPPORT_COMPRESSION_T45
=
0x80
,
/*! T.81 + T.30 Annex E colour JPEG compression */
T30_SUPPORT_COMPRESSION_T42_T81
=
0x100
,
/*! T.81 + T.30 Annex K colour sYCC-JPEG compression */
T30_SUPPORT_COMPRESSION_SYCC_T81
=
0x200
,
/*! T.88 monochrome JBIG2 compression */
T30_SUPPORT_COMPRESSION_T88
=
0x400
,
/*! Gray-scale support by multi-level codecs */
T30_SUPPORT_COMPRESSION_GRAYSCALE
=
0x1000000
,
/*! Colour support by multi-level codecs */
T30_SUPPORT_COMPRESSION_COLOUR
=
0x2000000
,
/*! 12 bit mode for gray scale and colour */
T30_SUPPORT_COMPRESSION_12BIT
=
0x4000000
,
/*! Convert a colour image to a gray-scale one */
T30_SUPPORT_COMPRESSION_COLOUR_TO_GRAY
=
0x8000000
,
/*! Dither a gray scale image down a simple bilevel image, with rescaling to fit a FAX page */
T30_SUPPORT_GRAY_TO_BILEVEL
=
0x10000000
,
/*! Dither a colour image down a simple bilevel image, with rescaling to fit a FAX page */
T30_SUPPORT_COLOUR_TO_BILEVEL
=
0x20000000
,
/*! Rescale an image (except a bi-level image) to fit a permitted FAX width when necessary */
T30_SUPPORT_COMPRESSION_RESCALING
=
0x40000000
};
enum
{
/*! Standard FAX resolution 204dpi x 98dpi - bi-level only */
T30_SUPPORT_RESOLUTION_R8_STANDARD
=
0x1
,
/*! Fine FAX resolution 204dpi x 196dpi - bi-level only */
T30_SUPPORT_RESOLUTION_R8_FINE
=
0x2
,
/*! Super-fine FAX resolution 204dpi x 391dpi - bi-level only */
T30_SUPPORT_RESOLUTION_R8_SUPERFINE
=
0x4
,
/*! Double FAX resolution 408dpi x 391dpi - bi-level only */
T30_SUPPORT_RESOLUTION_R16_SUPERFINE
=
0x8
,
/*! 100dpi x 100 dpi - gray scale and colour only */
T30_SUPPORT_RESOLUTION_100_100
=
0x10
,
/*! 200dpi x 100 dpi - bi-level only */
T30_SUPPORT_RESOLUTION_200_100
=
0x20
,
/*! 200dpi x 200 dpi */
T30_SUPPORT_RESOLUTION_200_200
=
0x40
,
/*! 200dpi x 400 dpi - bi-level only */
T30_SUPPORT_RESOLUTION_200_400
=
0x80
,
/*! 300dpi x 300 dpi */
T30_SUPPORT_RESOLUTION_300_300
=
0x100
,
/*! 300dpi x 600 dpi - bi-level only */
T30_SUPPORT_RESOLUTION_300_600
=
0x200
,
/*! 400dpi x 400 dpi */
T30_SUPPORT_RESOLUTION_400_400
=
0x400
,
/*! 400dpi x 800 dpi - bi-level only */
T30_SUPPORT_RESOLUTION_400_800
=
0x800
,
/*! 600dpi x 600 dpi */
T30_SUPPORT_RESOLUTION_600_600
=
0x1000
,
/*! 600dpi x 1200 dpi - bi-level only */
T30_SUPPORT_RESOLUTION_600_1200
=
0x2000
,
/*! 1200dpi x 1200 dpi */
T30_SUPPORT_RESOLUTION_1200_1200
=
0x4000
};
enum
{
T30_SUPPORT_215MM_WIDTH
=
0x01
,
T30_SUPPORT_255MM_WIDTH
=
0x02
,
T30_SUPPORT_303MM_WIDTH
=
0x04
,
T30_SUPPORT_UNLIMITED_LENGTH
=
0x10000
,
T30_SUPPORT_A4_LENGTH
=
0x20000
,
T30_SUPPORT_B4_LENGTH
=
0x40000
,
T30_SUPPORT_US_LETTER_LENGTH
=
0x80000
,
T30_SUPPORT_US_LEGAL_LENGTH
=
0x100000
T30_FRONT_END_SEND_STEP_COMPLETE
=
0
,
/*! The current receive has completed. This is only needed to report an
unexpected end of the receive operation, as might happen with T.38
dying. */
T30_FRONT_END_RECEIVE_COMPLETE
,
T30_FRONT_END_SIGNAL_PRESENT
,
T30_FRONT_END_SIGNAL_ABSENT
,
T30_FRONT_END_CED_PRESENT
,
T30_FRONT_END_CNG_PRESENT
};
enum
...
...
libs/spandsp/src/spandsp/t4_rx.h
浏览文件 @
f56911bb
...
...
@@ -60,7 +60,7 @@ typedef enum
T4_COMPRESSION_T85
=
4
,
/*! T.85 monochrome JBIG coding with L0 variable. */
T4_COMPRESSION_T85_L0
=
5
,
/*! T.43 colour JBIG coding */
/*! T.43
gray-scale/
colour JBIG coding */
T4_COMPRESSION_T43
=
6
,
/*! T.45 run length colour compression */
T4_COMPRESSION_T45
=
7
,
...
...
@@ -70,15 +70,67 @@ typedef enum
T4_COMPRESSION_SYCC_T81
=
9
}
t4_image_compression_t
;
enum
{
/*! No compression */
T30_SUPPORT_COMPRESSION_NONE
=
0x01
,
/*! T.1 1D compression */
T30_SUPPORT_COMPRESSION_T4_1D
=
0x02
,
/*! T.4 2D compression */
T30_SUPPORT_COMPRESSION_T4_2D
=
0x04
,
/*! T.6 2D compression */
T30_SUPPORT_COMPRESSION_T6
=
0x08
,
/*! T.85 monochrome JBIG compression, with fixed L0 */
T30_SUPPORT_COMPRESSION_T85
=
0x10
,
/*! T.85 monochrome JBIG compression, with variable L0 */
T30_SUPPORT_COMPRESSION_T85_L0
=
0x20
,
/*! T.43 colour JBIG compression */
T30_SUPPORT_COMPRESSION_T43
=
0x40
,
/*! T.45 run length colour compression */
T30_SUPPORT_COMPRESSION_T45
=
0x80
,
/*! T.81 + T.30 Annex E colour JPEG compression */
T30_SUPPORT_COMPRESSION_T42_T81
=
0x100
,
/*! T.81 + T.30 Annex K colour sYCC-JPEG compression */
T30_SUPPORT_COMPRESSION_SYCC_T81
=
0x200
,
/*! T.88 monochrome JBIG2 compression */
T30_SUPPORT_COMPRESSION_T88
=
0x400
,
/*! Gray-scale support by multi-level codecs */
T30_SUPPORT_COMPRESSION_GRAYSCALE
=
0x1000000
,
/*! Colour support by multi-level codecs */
T30_SUPPORT_COMPRESSION_COLOUR
=
0x2000000
,
/*! 12 bit mode for gray scale and colour */
T30_SUPPORT_COMPRESSION_12BIT
=
0x4000000
,
/*! Convert a colour image to a gray-scale one */
T30_SUPPORT_COMPRESSION_COLOUR_TO_GRAY
=
0x8000000
,
/*! Dither a gray scale image down a simple bilevel image, with rescaling to fit a FAX page */
T30_SUPPORT_GRAY_TO_BILEVEL
=
0x10000000
,
/*! Dither a colour image down a simple bilevel image, with rescaling to fit a FAX page */
T30_SUPPORT_COLOUR_TO_BILEVEL
=
0x20000000
,
/*! Rescale an image (except a bi-level image) to fit a permitted FAX width when necessary */
T30_SUPPORT_COMPRESSION_RESCALING
=
0x40000000
};
/*! Image type */
typedef
enum
{
/* Traditional black and white FAX */
T4_IMAGE_TYPE_BILEVEL
=
0
,
/* RGB or CMY image */
T4_IMAGE_TYPE_COLOUR_BILEVEL
=
1
,
T4_IMAGE_TYPE_GRAY_8BIT
=
2
,
T4_IMAGE_TYPE_GRAY_12BIT
=
3
,
T4_IMAGE_TYPE_COLOUR_8BIT
=
4
,
T4_IMAGE_TYPE_COLOUR_12BIT
=
5
/* CMYK image */
T4_IMAGE_TYPE_4COLOUR_BILEVEL
=
2
,
/* 2 to 8 bits per pixel gray-scale image */
T4_IMAGE_TYPE_GRAY_8BIT
=
3
,
/* 9 to 12 bits per pixel gray-scale image */
T4_IMAGE_TYPE_GRAY_12BIT
=
4
,
/* 2 to 8 bits per pixel RGB or CMY colour image */
T4_IMAGE_TYPE_COLOUR_8BIT
=
5
,
/* 2 to 8 bits per pixel CMYK colour image */
T4_IMAGE_TYPE_4COLOUR_8BIT
=
6
,
/* 9 to 12 bits per pixel RGB or CMY colour image */
T4_IMAGE_TYPE_COLOUR_12BIT
=
7
,
/* 9 to 12 bits per pixel CMYK colour image */
T4_IMAGE_TYPE_4COLOUR_12BIT
=
8
}
t4_image_types_t
;
/*! Supported X resolutions, in pixels per metre. */
...
...
@@ -113,39 +165,74 @@ typedef enum
/* Only the symmetric resolutions are valid for gray-scale and colour use. The asymmetric
ones are bi-level only. */
enum
{
/*! Standard FAX resolution 204dpi x 98dpi - bi-level only */
T4_RESOLUTION_R8_STANDARD
=
1
,
/*! Fine FAX resolution 204dpi x 196dpi - bi-level only */
T4_RESOLUTION_R8_FINE
=
2
,
/*! Super-fine FAX resolution 204dpi x 391dpi - bi-level only */
T4_RESOLUTION_R8_SUPERFINE
=
3
,
/*! Double FAX resolution 408dpi x 391dpi - bi-level only */
T4_RESOLUTION_R16_SUPERFINE
=
4
,
/*! 100dpi x 100 dpi - gray-scale and colour only */
T4_RESOLUTION_100_100
=
5
,
/*! 200dpi x 100 dpi - bi-level only */
T4_RESOLUTION_200_100
=
6
,
/*! 200dpi x 200 dpi */
T4_RESOLUTION_200_200
=
7
,
/*! 200dpi x 400 dpi - bi-level only */
T4_RESOLUTION_200_400
=
8
,
/*! 300dpi x 300 dpi */
T4_RESOLUTION_300_300
=
9
,
/*! 300dpi x 600 dpi - bi-level only */
T4_RESOLUTION_300_600
=
10
,
/*! 400dpi x 400 dpi */
T4_RESOLUTION_400_400
=
11
,
/*! 400dpi x 800 dpi - bi-level only */
T4_RESOLUTION_400_800
=
12
,
/*! 600dpi x 600 dpi */
T4_RESOLUTION_600_600
=
13
,
/*! 600dpi x 1200 dpi - bi-level only */
T4_RESOLUTION_600_1200
=
14
,
/*! 1200dpi x 1200 dpi */
T4_RESOLUTION_1200_1200
=
15
};
enum
{
/*! Support standard FAX resolution 204dpi x 98dpi - bi-level only */
T4_RESOLUTION_R8_STANDARD
=
0x1
,
T4_
SUPPORT_
RESOLUTION_R8_STANDARD
=
0x1
,
/*! Support fine FAX resolution 204dpi x 196dpi - bi-level only */
T4_RESOLUTION_R8_FINE
=
0x2
,
/*! Support super
fine FAX resolution 204dpi x 392
dpi - bi-level only */
T4_RESOLUTION_R8_SUPERFINE
=
0x4
,
/*! Support double FAX resolution 408dpi x 39
2
dpi - bi-level only */
T4_RESOLUTION_R16_SUPERFINE
=
0x8
,
/*! Support 100dpi x 100 dpi */
T4_RESOLUTION_100_100
=
0x10
,
T4_
SUPPORT_
RESOLUTION_R8_FINE
=
0x2
,
/*! Support super
-fine FAX resolution 204dpi x 391
dpi - bi-level only */
T4_
SUPPORT_
RESOLUTION_R8_SUPERFINE
=
0x4
,
/*! Support double FAX resolution 408dpi x 39
1
dpi - bi-level only */
T4_
SUPPORT_
RESOLUTION_R16_SUPERFINE
=
0x8
,
/*! Support 100dpi x 100 dpi
- gray scale and colour only
*/
T4_
SUPPORT_
RESOLUTION_100_100
=
0x10
,
/*! Support 200dpi x 100 dpi - bi-level only */
T4_RESOLUTION_200_100
=
0x20
,
T4_
SUPPORT_
RESOLUTION_200_100
=
0x20
,
/*! Support 200dpi x 200 dpi */
T4_RESOLUTION_200_200
=
0x40
,
T4_
SUPPORT_
RESOLUTION_200_200
=
0x40
,
/*! Support 200dpi x 400 dpi - bi-level only */
T4_RESOLUTION_200_400
=
0x80
,
T4_
SUPPORT_
RESOLUTION_200_400
=
0x80
,
/*! Support 300dpi x 300 dpi */
T4_RESOLUTION_300_300
=
0x100
,
T4_
SUPPORT_
RESOLUTION_300_300
=
0x100
,
/*! Support 300dpi x 600 dpi - bi-level only */
T4_RESOLUTION_300_600
=
0x200
,
T4_
SUPPORT_
RESOLUTION_300_600
=
0x200
,
/*! Support 400dpi x 400 dpi */
T4_RESOLUTION_400_400
=
0x400
,
T4_
SUPPORT_
RESOLUTION_400_400
=
0x400
,
/*! Support 400dpi x 800 dpi - bi-level only */
T4_RESOLUTION_400_800
=
0x800
,
T4_
SUPPORT_
RESOLUTION_400_800
=
0x800
,
/*! Support 600dpi x 600 dpi */
T4_RESOLUTION_600_600
=
0x1000
,
T4_
SUPPORT_
RESOLUTION_600_600
=
0x1000
,
/*! Support 600dpi x 1200 dpi - bi-level only */
T4_RESOLUTION_600_1200
=
0x2000
,
T4_
SUPPORT_
RESOLUTION_600_1200
=
0x2000
,
/*! Support 1200dpi x 1200 dpi */
T4_RESOLUTION_1200_1200
=
0x4000
T4_
SUPPORT_
RESOLUTION_1200_1200
=
0x4000
};
/*!
...
...
@@ -286,6 +373,19 @@ typedef enum
T4_LENGTH_1200_US_LEGAL
=
16800
}
t4_image_length_t
;
enum
{
T4_SUPPORT_WIDTH_215MM
=
0x01
,
T4_SUPPORT_WIDTH_255MM
=
0x02
,
T4_SUPPORT_WIDTH_303MM
=
0x04
,
T4_SUPPORT_LENGTH_UNLIMITED
=
0x10000
,
T4_SUPPORT_LENGTH_A4
=
0x20000
,
T4_SUPPORT_LENGTH_B4
=
0x40000
,
T4_SUPPORT_LENGTH_US_LETTER
=
0x80000
,
T4_SUPPORT_LENGTH_US_LEGAL
=
0x100000
};
/*! Return values from the T.85 decoder */
typedef
enum
{
...
...
libs/spandsp/src/t30.c
浏览文件 @
f56911bb
差异被折叠。
点击展开。
libs/spandsp/src/t30_api.c
浏览文件 @
f56911bb
...
...
@@ -712,23 +712,23 @@ SPAN_DECLARE(int) t30_set_supported_compressions(t30_state_t *s, int supported_c
SPAN_DECLARE
(
int
)
t30_set_supported_bilevel_resolutions
(
t30_state_t
*
s
,
int
supported_resolutions
)
{
supported_resolutions
&=
T4_RESOLUTION_R8_STANDARD
|
T4_RESOLUTION_R8_FINE
|
T4_RESOLUTION_R8_SUPERFINE
|
T4_RESOLUTION_R16_SUPERFINE
|
T4_RESOLUTION_200_100
|
T4_RESOLUTION_200_200
|
T4_RESOLUTION_200_400
|
T4_RESOLUTION_300_300
|
T4_RESOLUTION_300_600
|
T4_RESOLUTION_400_400
|
T4_RESOLUTION_400_800
|
T4_RESOLUTION_600_600
|
T4_RESOLUTION_600_1200
|
T4_RESOLUTION_1200_1200
;
supported_resolutions
&=
T4_
SUPPORT_
RESOLUTION_R8_STANDARD
|
T4_
SUPPORT_
RESOLUTION_R8_FINE
|
T4_
SUPPORT_
RESOLUTION_R8_SUPERFINE
|
T4_
SUPPORT_
RESOLUTION_R16_SUPERFINE
|
T4_
SUPPORT_
RESOLUTION_200_100
|
T4_
SUPPORT_
RESOLUTION_200_200
|
T4_
SUPPORT_
RESOLUTION_200_400
|
T4_
SUPPORT_
RESOLUTION_300_300
|
T4_
SUPPORT_
RESOLUTION_300_600
|
T4_
SUPPORT_
RESOLUTION_400_400
|
T4_
SUPPORT_
RESOLUTION_400_800
|
T4_
SUPPORT_
RESOLUTION_600_600
|
T4_
SUPPORT_
RESOLUTION_600_1200
|
T4_
SUPPORT_
RESOLUTION_1200_1200
;
/* Make sure anything needed for colour is enabled as a bi-level image, as that is a
rule from T.30. 100x100 is an exception, as it doesn't exist as a bi-level resolution. */
supported_resolutions
|=
(
s
->
supported_colour_resolutions
&
~
T4_RESOLUTION_100_100
);
supported_resolutions
|=
(
s
->
supported_colour_resolutions
&
~
T4_
SUPPORT_
RESOLUTION_100_100
);
s
->
supported_bilevel_resolutions
=
supported_resolutions
;
t30_build_dis_or_dtc
(
s
);
return
0
;
...
...
@@ -737,16 +737,16 @@ SPAN_DECLARE(int) t30_set_supported_bilevel_resolutions(t30_state_t *s, int supp
SPAN_DECLARE
(
int
)
t30_set_supported_colour_resolutions
(
t30_state_t
*
s
,
int
supported_resolutions
)
{
supported_resolutions
&=
T4_RESOLUTION_100_100
|
T4_RESOLUTION_200_200
|
T4_RESOLUTION_300_300
|
T4_RESOLUTION_400_400
|
T4_RESOLUTION_600_600
|
T4_RESOLUTION_1200_1200
;
supported_resolutions
&=
T4_
SUPPORT_
RESOLUTION_100_100
|
T4_
SUPPORT_
RESOLUTION_200_200
|
T4_
SUPPORT_
RESOLUTION_300_300
|
T4_
SUPPORT_
RESOLUTION_400_400
|
T4_
SUPPORT_
RESOLUTION_600_600
|
T4_
SUPPORT_
RESOLUTION_1200_1200
;
s
->
supported_colour_resolutions
=
supported_resolutions
;
/* Make sure anything needed for colour is enabled as a bi-level image, as that is a
rule from T.30. 100x100 is an exception, as it doesn't exist as a bi-level resolution. */
s
->
supported_bilevel_resolutions
|=
(
s
->
supported_colour_resolutions
&
~
T4_RESOLUTION_100_100
);
s
->
supported_bilevel_resolutions
|=
(
s
->
supported_colour_resolutions
&
~
T4_
SUPPORT_
RESOLUTION_100_100
);
t30_build_dis_or_dtc
(
s
);
return
0
;
}
...
...
libs/spandsp/src/t4_tx.c
浏览文件 @
f56911bb
...
...
@@ -263,6 +263,7 @@ static int get_tiff_directory_info(t4_tx_state_t *s)
};
char
*
u
;
char
uu
[
10
];
uint64_t
diroff
;
uint8_t
parm8
;
uint16_t
parm16
;
#endif
...
...
@@ -372,6 +373,38 @@ static int get_tiff_directory_info(t4_tx_state_t *s)
}
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_MODENUMBER
,
&
parm8
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
"Mode number %u
\n
"
,
parm8
);
/* If global parameters are present they should only be on the first page of the file.
However, as we scan the file we might as well look for them on any page. */
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_GLOBALPARAMETERSIFD
,
&
diroff
))
{
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
"Global parameters IFD at %"
PRIu64
"
\n
"
,
diroff
);
if
(
!
TIFFReadCustomDirectory
(
t
->
tiff_file
,
diroff
,
&
tiff_fx_field_array
))
{
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
"Global parameter read failed
\n
"
);
}
else
{
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
"Global parameters
\n
"
);
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_PROFILETYPE
,
&
parm32
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
" Profile type %u
\n
"
,
parm32
);
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_FAXPROFILE
,
&
parm8
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
" FAX profile %s (%u)
\n
"
,
tiff_fx_fax_profiles
[
parm8
],
parm8
);
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_CODINGMETHODS
,
&
parm32
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
" Coding methods 0x%x
\n
"
,
parm32
);
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_VERSIONYEAR
,
&
u
))
{
memcpy
(
uu
,
u
,
4
);
uu
[
4
]
=
'\0'
;
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
" Version year
\"
%s
\"\n
"
,
uu
);
}
if
(
TIFFGetField
(
t
->
tiff_file
,
TIFFTAG_MODENUMBER
,
&
parm8
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
" Mode number %u
\n
"
,
parm8
);
if
(
!
TIFFSetDirectory
(
t
->
tiff_file
,
(
tdir_t
)
s
->
current_page
))
span_log
(
&
s
->
logging
,
SPAN_LOG_FLOW
,
"Failed to set directory to page %d
\n
"
,
s
->
current_page
);
}
}
#endif
return
0
;
}
...
...
libs/spandsp/tests/fax_tests.c
浏览文件 @
f56911bb
...
...
@@ -839,27 +839,27 @@ int main(int argc, char *argv[])
|
T30_SUPPORT_SELECTIVE_POLLING
|
T30_SUPPORT_SUB_ADDRESSING
);
t30_set_supported_image_sizes
(
t30_state
[
i
],
T
30_SUPPORT_US_LETTER_LENGTH
|
T
30_SUPPORT_US_LEGAL_LENGTH
|
T
30_SUPPORT_UNLIMITED_LENGTH
|
T
30_SUPPORT_215MM_WIDTH
|
T
30_SUPPORT_255MM_WIDTH
|
T
30_SUPPORT_303MM_WIDTH
);
T
4_SUPPORT_WIDTH_215MM
|
T
4_SUPPORT_WIDTH_255MM
|
T
4_SUPPORT_WIDTH_303MM
|
T
4_SUPPORT_LENGTH_US_LETTER
|
T
4_SUPPORT_LENGTH_US_LEGAL
|
T
4_SUPPORT_LENGTH_UNLIMITED
);
t30_set_supported_bilevel_resolutions
(
t30_state
[
i
],
T
30
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
30
_SUPPORT_RESOLUTION_R8_FINE
|
T
30
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
30
_SUPPORT_RESOLUTION_R16_SUPERFINE
|
T
30
_SUPPORT_RESOLUTION_200_100
|
T
30
_SUPPORT_RESOLUTION_200_200
|
T
30
_SUPPORT_RESOLUTION_200_400
|
T
30
_SUPPORT_RESOLUTION_300_300
|
T
30
_SUPPORT_RESOLUTION_300_600
|
T
30
_SUPPORT_RESOLUTION_400_400
|
T
30
_SUPPORT_RESOLUTION_400_800
|
T
30
_SUPPORT_RESOLUTION_600_600
|
T
30
_SUPPORT_RESOLUTION_600_1200
|
T
30
_SUPPORT_RESOLUTION_1200_1200
);
T
4
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
4
_SUPPORT_RESOLUTION_R8_FINE
|
T
4
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
4
_SUPPORT_RESOLUTION_R16_SUPERFINE
|
T
4
_SUPPORT_RESOLUTION_200_100
|
T
4
_SUPPORT_RESOLUTION_200_200
|
T
4
_SUPPORT_RESOLUTION_200_400
|
T
4
_SUPPORT_RESOLUTION_300_300
|
T
4
_SUPPORT_RESOLUTION_300_600
|
T
4
_SUPPORT_RESOLUTION_400_400
|
T
4
_SUPPORT_RESOLUTION_400_800
|
T
4
_SUPPORT_RESOLUTION_600_600
|
T
4
_SUPPORT_RESOLUTION_600_1200
|
T
4
_SUPPORT_RESOLUTION_1200_1200
);
t30_set_supported_colour_resolutions
(
t30_state
[
i
],
0
);
//t30_set_rx_encoding(t30_state[i], T4_COMPRESSION_T85);
t30_set_ecm_capability
(
t30_state
[
i
],
use_ecm
);
...
...
libs/spandsp/tests/tsb85_tests.c
浏览文件 @
f56911bb
...
...
@@ -386,27 +386,27 @@ static void fax_prepare(void)
|
T30_SUPPORT_SELECTIVE_POLLING
|
T30_SUPPORT_SUB_ADDRESSING
);
t30_set_supported_image_sizes
(
t30
,
T
30_SUPPORT_US_LETTER_LENGTH
|
T
30_SUPPORT_US_LEGAL_LENGTH
|
T
30_SUPPORT_UNLIMITED_LENGTH
|
T
30_SUPPORT_215MM_WIDTH
|
T
30_SUPPORT_255MM_WIDTH
|
T
30_SUPPORT_303MM_WIDTH
);
T
4_SUPPORT_WIDTH_215MM
|
T
4_SUPPORT_WIDTH_255MM
|
T
4_SUPPORT_WIDTH_303MM
|
T
4_SUPPORT_LENGTH_US_LETTER
|
T
4_SUPPORT_LENGTH_US_LEGAL
|
T
4_SUPPORT_LENGTH_UNLIMITED
);
t30_set_supported_bilevel_resolutions
(
t30
,
T
30
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
30
_SUPPORT_RESOLUTION_R8_FINE
|
T
30
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
30
_SUPPORT_RESOLUTION_R16_SUPERFINE
|
T
30
_SUPPORT_RESOLUTION_200_100
|
T
30
_SUPPORT_RESOLUTION_200_200
|
T
30
_SUPPORT_RESOLUTION_200_400
|
T
30
_SUPPORT_RESOLUTION_300_300
|
T
30
_SUPPORT_RESOLUTION_300_600
|
T
30
_SUPPORT_RESOLUTION_400_400
|
T
30
_SUPPORT_RESOLUTION_400_800
|
T
30
_SUPPORT_RESOLUTION_600_600
|
T
30
_SUPPORT_RESOLUTION_600_1200
|
T
30
_SUPPORT_RESOLUTION_1200_1200
);
T
4
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
4
_SUPPORT_RESOLUTION_R8_FINE
|
T
4
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
4
_SUPPORT_RESOLUTION_R16_SUPERFINE
|
T
4
_SUPPORT_RESOLUTION_200_100
|
T
4
_SUPPORT_RESOLUTION_200_200
|
T
4
_SUPPORT_RESOLUTION_200_400
|
T
4
_SUPPORT_RESOLUTION_300_300
|
T
4
_SUPPORT_RESOLUTION_300_600
|
T
4
_SUPPORT_RESOLUTION_400_400
|
T
4
_SUPPORT_RESOLUTION_400_800
|
T
4
_SUPPORT_RESOLUTION_600_600
|
T
4
_SUPPORT_RESOLUTION_600_1200
|
T
4
_SUPPORT_RESOLUTION_1200_1200
);
t30_set_supported_colour_resolutions
(
t30
,
0
);
t30_set_supported_modems
(
t30
,
T30_SUPPORT_V27TER
|
T30_SUPPORT_V29
|
T30_SUPPORT_V17
);
t30_set_supported_compressions
(
t30
,
T30_SUPPORT_COMPRESSION_T4_1D
|
T30_SUPPORT_COMPRESSION_T4_2D
|
T30_SUPPORT_COMPRESSION_T6
);
...
...
libs/tiff-4.0.2/libtiff/tif_dirinfo.c
浏览文件 @
f56911bb
...
...
@@ -193,7 +193,7 @@ tiffFields[] = {
/* end DNG tags */
/* begin TIFF/FX tags */
{
TIFFTAG_INDEXED
,
1
,
1
,
TIFF_SHORT
,
0
,
TIFF_SETGET_UINT16
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"Indexed"
},
{
TIFFTAG_GLOBALPARAMETERSIFD
,
1
,
1
,
TIFF_LONG
,
0
,
TIFF_SETGET_UINT32
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"GlobalParametersIFD"
,
NULL
},
{
TIFFTAG_GLOBALPARAMETERSIFD
,
1
,
1
,
TIFF_IFD8
,
0
,
TIFF_SETGET_IFD8
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"GlobalParametersIFD"
,
NULL
},
{
TIFFTAG_PROFILETYPE
,
1
,
1
,
TIFF_LONG
,
0
,
TIFF_SETGET_UINT32
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"ProfileType"
,
NULL
},
{
TIFFTAG_FAXPROFILE
,
1
,
1
,
TIFF_BYTE
,
0
,
TIFF_SETGET_UINT8
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"FaxProfile"
,
NULL
},
{
TIFFTAG_CODINGMETHODS
,
1
,
1
,
TIFF_LONG
,
0
,
TIFF_SETGET_UINT32
,
TIFF_SETGET_UNDEFINED
,
FIELD_CUSTOM
,
0
,
0
,
"CodingMethods"
,
NULL
},
...
...
src/mod/applications/mod_spandsp/mod_spandsp_fax.c
浏览文件 @
f56911bb
...
...
@@ -839,7 +839,6 @@ static switch_status_t spanfax_init(pvt_t *pvt, transport_mode_t trans_mode)
t38_gateway_set_ecm_capability
(
pvt
->
t38_gateway_state
,
TRUE
);
}
span_log_set_message_handler
(
t38_gateway_get_logging_state
(
pvt
->
t38_gateway_state
),
spanfax_log_message
,
pvt
);
span_log_set_message_handler
(
t38_core_get_logging_state
(
pvt
->
t38_core
),
spanfax_log_message
,
pvt
);
...
...
@@ -873,13 +872,13 @@ static switch_status_t spanfax_init(pvt_t *pvt, transport_mode_t trans_mode)
t30_set_phase_b_handler
(
t30
,
phase_b_handler
,
pvt
);
t30_set_supported_image_sizes
(
t30
,
T
30_SUPPORT_US_LETTER_LENGTH
|
T30_SUPPORT_US_LEGAL_LENGTH
|
T30_SUPPORT_UNLIMITED_LENGTH
|
T
30_SUPPORT_215MM_WIDTH
|
T30_SUPPORT_255MM_WIDTH
|
T30_SUPPORT_303MM_WIDTH
);
T
4_SUPPORT_LENGTH_US_LETTER
|
T4_SUPPORT_LENGTH_US_LEGAL
|
T4_SUPPORT_LENGTH_UNLIMITED
|
T
4_SUPPORT_WIDTH_215MM
|
T4_SUPPORT_WIDTH_255MM
|
T4_SUPPORT_WIDTH_303MM
);
t30_set_supported_bilevel_resolutions
(
t30
,
T
30
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
30
_SUPPORT_RESOLUTION_R8_FINE
|
T
30
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
30
_SUPPORT_RESOLUTION_R16_SUPERFINE
);
T
4
_SUPPORT_RESOLUTION_R8_STANDARD
|
T
4
_SUPPORT_RESOLUTION_R8_FINE
|
T
4
_SUPPORT_RESOLUTION_R8_SUPERFINE
|
T
4
_SUPPORT_RESOLUTION_R16_SUPERFINE
);
t30_set_supported_colour_resolutions
(
t30
,
0
);
if
(
pvt
->
disable_v17
)
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论