Asterisk 1.6.x ก็รองรับ T.38 แล้วนะครับ ถ้าอย่างนั้นผมคิดว่าน่าจะเป็นปัญหาเรื่อง Error ข้อมูลช่วงที่เกิด Error ก็จะหายไปหน่ะรับ (เกิด packet loss) ลองเพิ่มคุณสมบัติ Error Correction ให้แก่ T.38 ดูครับ คอนฟิกในไฟล์ sip.conf เหมือนเดิม แต่ให้แก้บรรทัด
t38pt_udptl=yes ใหม่นะครับ เป็นบรรทัดใดบรรทัดหนึ่งใน 3 บรรทัดต่อไปนี้
t38pt_udptl = yes,fec ; Enables T.38 with FEC error correction.
t38pt_udptl = yes,redundancy ; Enables T.38 with redundancy error correction.
;
; In some cases, T.38 endpoints will provide a T38FaxMaxDatagram value (during T.38 setup) that
; is based on an incorrect interpretation of the T.38 recommendation, and results in failures
; because Asterisk does not believe it can send T.38 packets of a reasonable size to that
; endpoint (Cisco media gateways are one example of this situation). In these cases, during a
; T.38 call you will see warning messages on the console/in the logs from the Asterisk UDPTL
; stack complaining about lack of buffer space to send T.38 FAX packets. If this occurs, you
; can set an override (globally, or on a per-device basis) to make Asterisk ignore the
; T38FaxMaxDatagram value specified by the other endpoint, and use a configured value instead.
; This can be done by appending 'maxdatagram=<value>' to the t38pt_udptl configuration option,
; like this:
;
t38pt_udptl = yes,fec,maxdatagram=400 ; Enables T.38 with FEC error correction and overrides
; ; the other endpoint's provided value to assume we can
; ; send 400 byte T.38 FAX packets to it
ลองดูครับเผื่อจะช่วยได้ ถ้ายังไม่เวอร์คก็รบกวนแจ้งมาด้วยครับ จะได้หาต่อ
นี้คือรายละเอียดของ
FEC (Forward Error Correction) ครับ