Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1730278231)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 700, well_thread_format(array(25))
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1422, well_thread_read(1857465)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 22, well_thread_read_cache(1857465)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1730278231)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 700, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1422, well_thread_read(1857465)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 22, well_thread_read_cache(1857465)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
一种基于USB2.0接口的音视频数据传输方法-USB迷|专注于互联网分享
最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

一种基于USB2.0接口的音视频数据传输方法

IT圈 admin 56浏览 0评论

2024年10月30日发(作者:撒清舒)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.8

(22)申请日 2006.01.26

(71)申请人 深圳艾科创新微电子有限公司

地址 518057 广东省深圳市南山区高新区科技中二路软件园4栋4楼406-421室

(72)发明人 刘俊秀 林晓伟 李晓春 常军锋 张毅 张亚国 石岭

(74)专利代理机构

代理人

(51)

H04N7/54

H04N7/52

(10)申请公布号 CN 101009849 A

(43)申请公布日 2007.08.01

权利要求说明书 说明书 幅图

(54)发明名称

一种基于USB2.0接口的音视频数

据传输方法

(57)摘要

一种基于USB2.0接口的音视频数

据传输方法,该方法使用USB2.0的同步传

输管道传输数字视频数据,利用视频信号

的场消隐时期不传送有效信号的特点,在

视频信号的场消隐时期使用USB2.0的批量

传输管道传输数字音频数据,实现了分离

采样输出的视频数据和音频数据的并发传

输。该传输方法同时支持通过切换数据传

输通道,实现音视频压缩编码流的同步传

输。该方法不会占用总线额外的带宽,实

现对同步传输带宽的充分利用;另外,该

传输模式中一场视频数据对应一场音频数

据,接收方很容易保证视频和音频的同步

播放。

法律状态

法律状态公告日

法律状态信息

法律状态

权 利 要 求 说 明 书

1、一种基于USB2.0接口的音视频数据传输方法,该方法利用彩色电视制式

(PAL/NTSC/SECAM制式)场消隐期间不传送有效图像的特点,其特征在于在采用

同步传输方式传输视频信号数据的同时,在视频信号的场消隐期间,使用批量传输

方式传送数字音频数据,从而实现了数字视频和数字音频数据流通过USB2.0接口

同时并发进行传输,该方法包括以下步骤:

(1)配置USB的设备端点,一端点为批量传输输入(Bulk in)端点,一端点为同步传

输输入(ISO)端点,输入方向是从USB设备指向主机,配置完成后主机与端点之间

就建立起了对应的数据传输管道;

(2)在视频数据场有效时期,启动同步传输模式(ISO)通过对应的数据传输管道传输

视频数据包;

(3)在视频数据场有效时期,场的音频数据连续输入FIFO储存起来;

(4)在视频数据场消隐时期,同步传输管道传输的是空数据包,此时启动批量传输

方式(Bulk)通过批量传输管道传送该场视频对应的音频数据,到此,完成了一场音

视频数据的传输,下一场传输重复以上(1)~(4)步骤循环。

2、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法所述步骤(2)之前还进一步包括以下步骤:在视频数据行与行、场与

场之间加入标识符区分奇偶行和奇偶场,在每场有效视频数据末尾打上时间戳作为

音视频数据同步标志。

3、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法所述步骤(3)之前还进一步包括以下步骤:在每场有效音频数据开头

打上时间戳作为音视频数据同步标志。

4、根据权利要求2所述的在视频数据行与行、场与场之间加入标识符,其特征在

于:该标志符符合ITU-R BT656标准。

5、根据权利要求2或3所述的在视频数据末尾或音频数据开头打上时间戳,其特

征在于:该时间戳为一个具有固定长度的数值。

6、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法将USB同步传输管道与批量传输管道结合在一起,可支持视频解码

器(Video Decoder)输出的数字视频数据流和音频解码器(Audio Codec)输出的数字音

频数据流的并发传输。

7、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过多路选择器(MUX)的切换,可以将同步传输管道用于音视频压缩

编码数据流(TS码流)的传输。

8、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过多路选择器(MUX)的切换,批量传输管道可以用于传输通过

I2S(Inter-IC Sound)串行数字音频总线直接输入的数字音频数据。

9、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过对每场视频和音频数据打上时间戳的方式,保证了相当长时间内

视频数据和同一场的音频数据之间的一一对应关系。

说 明 书

技术领域

本发明涉及一种音视频数据的传输方法,尤其是一种基于USB2.0通用串行总线传

输分离的视频、音频数据的方法。

背景技术

早期的USB1.1通用串行总线接口仅支持全速12Mbps,低速1.5Mbps的传输速率,

使其应用上只能局限于低速连接的领域。USB2.0的出现使USB总线的传输速率一

下子提高到480Mbps,使得USB总线在高质量音视频传输领域的应用成为了可能。

要将USB总线成功的应用于高质量音视频传输领域,首先必须了解视频,特别是

彩色电视信号制式和TS码流(Transport Stream,传输流)的特点以及USB2.0体系结

构的特点。

当前世界通用的彩色电视制式有PAL(Phase-Alternative Line)制、

NTSC(National Television Systems Committee)制和SECAM(法文:

SequentialColeur Avec Memoire)制三种。PAL/SECAM制电视一帧图像的总行数为

625,分两场扫描(奇场和偶场),行扫描频率是15625Hz,周期为64μs;在发送电

视信号时,每一行中传送图像的时间是52.2μs,其余的11.8μs不传送图像,是行

扫描的逆程时间,同时用作行同步及消隐用;场扫描频率是50Hz,周期为20ms;

每一场的扫描行数为625/2=312.5行,其中25行作场回扫,不传送图像,这段时

间称为场消隐时间,传送图像的行数每场实际只有287.5行,因此每帧只有575行

有图像显示。NTSC制电视一帧图像的总行数为525行,分两场扫描;行扫描频率

为15750Hz,每行周期为63.5μs,水平回扫时间为10μs(包含5μs的水平同步脉冲),

所以显示时间是53.5μs;场扫描频率是60Hz,周期为16.67ms;帧频是30Hz,周

期33.33ms;每一场的扫描行数为525/2=262.5行。除了两场的场回扫外,实际传

送图像的行数为480行。TS码流是数字电视多个节目的各个组成元素,包括视频

信号、音频信号经过编码,再按照一定的要求和格式打包,再对它们的相互关系进

行组织、加入各组成部分关系描述和节目组成信息进一步封装成传输包后的复合码

流。TS码流的数据结构为固定长度的包(188字节或204字节),其中有效数据固定

为188字节。

下面介绍USB2.0的体系结构。USB采用设备端点的形式实现主机与设备之间的通

信,端点是USB设备惟一可识别的部分,是主机与设备之间通信流的终点,端点

对应惟一的地址,端点的属性决定端点号、数据包大小、传输类型和数据传输方向。

主机软件与设备端点之间通过管道连接。USB2.0的体系结构包含4种基本的数据

传输类型:

(1)控制传输(Control Transfers):用于主机对设备进行配置和控制;

(2)批量传输(Bulk Data Transfers):用于数据量大且突发传输的情况,在传输限制方

面有很宽的动态范围;

(3)中断传输(Interrupt Data Transfers):通过中断指令进行及时和可靠的数据传输;

(4)同步传输(Isochronous Data Transfers):以预先协定的传输延时和传输带宽进行实

时同步数据流传输。

批量传输用于支持那些可以使用任意可用带宽在不同时间传输相当大量数据的设备,

批量传输可以传输大量的数据而不会阻塞总线,它会让其他类型的传输优先,如果

总线出现错误导致传送失败,可进行重发,所以批量传输可以保证数据必须被传送,

但不保证传送的带宽和延迟。USB定义了高速端点批量数据的最大有效负载是

512bits。

同步传输适合用于视频、音频这样的同步数据的传输。同步数据是指在产生、传输

和使用时是连续而且实时的,同步数据接收和发送的稳定速率隐含了相关的定时信

息,同步数据必须以接收的速率进行传输才能维持它的定时。同步传输可以保证管

道的数据以恒定的速率并具有一定容错能力的传输。USB在高速总线(480Mbps)上

建立了一个125μs的时间基,称为微型帧(micro frame),USB的高速同步端点指定

其一个微型帧可以包含两个或三个1024bits有效负载数据包的处理,即最多能在一

个微型帧传输3072bits的数据。同步传输的局限性在于当系统存在多种独立的视频、

音频数据流需要进行同步传输时,由于视频数据进行同步传输占用大量的带宽,而

USB2.0总线的带宽又是有限的,无法支持视频、音频数据同时通过USB2.0总线

的分立同步传输。

发明内容

本发明针对USB2.0对于多个占用较大带宽的同步信号源进行同步传输时无法支持

视频、音频数据同时通过USB2.0总线的分立同步传输,提供了一种通过USB2.0

串行数据总线传输分离高质量数字视频和音频数据,同时支持音视频压缩编码流传

输的方法。

本发明公开了一种基于USB2.0接口的音视频数据传输方法,该方法利用彩色电视

制式(PAL/NTSC/SECAM制式)场消隐期间不传送有效图像的特点,在采用同步传

输方式传输视频信号数据的同时,在视频信号的场消隐期间,使用批量传输方式传

送数字音频数据,从而实现了数字视频和数字音频数据流通过USB2.0接口同时并

发进行传输,该方法包括以下步骤:

(1)配置USB的设备端点,一端点为批量传输输入(Bulk in)端点,一端点为同步传

输输入(ISO)端点,输入方向是从USB设备指向主机,配置完成后主机与端点之间

就建立起了对应的数据传输管道;

(2)在视频数据场有效时期,启动同步传输模式(ISO)通过对应的数据传输管道传输

视频数据包;

(3)在视频数据场有效时期,场的音频数据连续输入FIFO储存起来;

(4)在视频数据场消隐时期,同步传输管道传输的是空数据包,此时启动批量传输

方式(Bulk)通过批量传输管道传送该场视频对应的音频数据,到此,完成了一场音

视频数据的传输,下一场传输重复以上(1)~(4)步骤循环;

本发明所述方法,在上述步骤(2)之前还进一步包括以下步骤:在视频数据行与行、

场与场之间加入标识符区分奇偶行和奇偶场,在每场有效视频数据末尾打上时间戳

作为音视频数据同步标志。

本发明所述方法,在上述步骤(3)之前还进一步包括以下步骤:在每场有效音频数

据开头打上时间戳作为音视频数据同步标志。

上述中的标志符符合ITU-R BT656标准。上述时间戳为一个具有固定长度的数值。

该方法将USB同步传输管道与批量传输管道结合在一起,可支持视频解码器

(Video Decoder)输出的数字视频数据流和音频解码器(Audio Codec)输出的数字音频

数据流的并发传输。同时,通过多路选择器(MUX)的切换,可以将同步传输管道用

于音视频压缩编码数据流(TS码流)的传输;同样通过多路选择器(MUX)的切换,

批量传输管道可以用于传输通过I2S(Inter-IC Sound)串行数字音频总线

直接输入的数字音频数据。另外,通过对每场视频和音频数据打上时间戳的方式,

保证了相当长时间内视频数据和同一场的音频数据之间的一一对应关系。

本发明所述方法的显著意义在于,该方法既可以支持独立视频数据流、音频数据流

的同步传输,也可以支持音视频压缩编码数据流(TS码流)的传输;其次,该方法

不会占用总线额外的带宽,实现对同步传输带宽的充分利用;另外,该传输模式中

一场视频数据对应一场音频数据,接收方很容易保证视频和音频的同步播放,极大

的简化了上层驱动的设计,该方法可以实现同步视频音频数据的并发传输而不会给

系统引入额外的带宽。通过该方法可以实现在PC机上收看彩色电视信号、数字电

视信号以及VCD、DVD音像。

附图说明

图1为USB2.0数据传输通道示意图;

图2为本发明数据传输方法的音视频数据传输格式;

图3为本发明数据传输方法的数据流示意图;

具体实施方式

如附图2和附图3所示,CLK表示视频采样时钟,hen表示行有效信号,ven表示

场有效信号,microframe表示一个微型帧,USB总线处于高速ISO传输方式且视

频解码器1采用标准27M时钟进行采样时,一个微型帧(最大3072bits)对应一个包

含两行视频数据(2880bits,27M采样一行视频数据为1440bits)的数据包,一场中有

效行是240行(NTSC制)或288(PAL制),240行需要分120包传输,288需要分144

包传输。场与场之间是消隐时间,在这段时间接收的包是空数据包。以PAL制为

例,PAL制中场的周期是20ms,场与场之间有25行的消隐时间,在这段时间用批

量传输方式(Bulk in)来传输音频数据,即音频数据每20ms才批量传输一次,由于

音频数据是连续的,而且由于人对于音频的感觉更为敏感,所以需要设计足够大的

FIFO(First-in First-out)缓冲器来储存20ms的音频数据,以保证不会丢失。同时,

根据国际电信联盟无线电部门656号建议(ITU-RBT656),使用0xFF 0xFF 0xZZ作

为行与行之间、场与场之间的标识符,以区分奇偶行和奇偶场。

附图3是基于本发明的数据传输方法的数据流示意图。数据输出单元分别是:视频

解码器(Video Decoder)1、音频解码器(Audio Codec)3、音视频压缩编码(TS码流)2

和I2S 4。图3中虚线箭头表示分离音频、视频数据的传输路径,由

Audio_sel和Video_sel两个控制信号控制多路选通器(MUX)5,音频输入可以选择

由Audio Codec 3输入或者I2S 4输入,使用本发明的方法实现视频数

据和音频数据的分立同步传输的步骤如下:

(1)首先需要配置USB的设备端点。如附图1所示,USB设备的端点0是输入和输

出端点的默认控制方式,USB系统软件通过这个默认的控制方式对逻辑设备进行

初始化和配置操作。在这里需要配置端点2作为批量传输输入(Bulk in)端点,配置

端点3作为同步传输输入(ISO)端点,输入方向是从USB设备指向主机。

(2)配置完成后主机与端点之间就建立起了对应的数据传输管道。传输开始时,视

频解码器1输出视频数据存入数据缓冲区,即附图3中所示的VDEC FIFO6,经过

一段时间的数据准备之后启动DMA(Direct Memory Access,直接寄存器寻址)将数

据传送到USB端点3对应的数据发送缓冲区,在视频信号有效期间启动同步传输

方式,以一个微型帧对应两行视频数据的格式对视频数据进行打包并传输到主机,

行与行之间用3个字节组成的标识符区分奇偶行:0xFF 0xFF 0x9d表示偶行,

0xFF 0xFF 0xda表示奇行。

(3)在场消隐阶段,视频信号无效,ISO同步传输是一直存在的,只不过此时USB

同步传输管道发送的是空数据包。这时音频数据缓冲器,即附图3中的

AVStream FIFO 7已经储存了一场时间(PAL制为20ms)的音频数据,音频的采样率

一般为32Kbps、44.1Kbps和48Kbps,一场音频数据的大小最多不到1Kbits。同样

通过DMA的方式将音频数据传输到端点2对应的数据发送缓冲区,在视频信号无

效时启动批量传输方式将音频数据进行打包并传输到主机,音频数据量比较小,批

量传输方式的带宽足够满足音频传输的要求。

(4)每一场结束的地方设置一个结束符号,在这里场的结束符号设为由5个字节组

成的标识符,其中3个字节用来区分奇偶场,0xFF 0xFF 0xfl表示偶场,

0xFF 0xFF 0xb6表示奇场,另外2个字节是音频数据的长度。为了保证每场视频数

据和音频数据的对应关系,在场消隐刚刚开始,即在同步传输视频数据的末尾打上

一个时间戳,在这里时间戳设置为一个2Byte的数值,再在音频数据,即批量传输

数据的开头也打上一个相同的2Byte的时间戳。下一场视频数据和音频数据的时间

戳数值自动加1。通过打时间戳的方法,可以保证20ms(PAL制)×216

=22minutes内视频数据和音频数据的一一对应关系,在这种对应关系下就算由于

系统延时导致部分视频数据丢失,仍能够在系统恢复正常工作后保持视频与音频的

同步。

(5)主机软件的驱动程序通过ISO管道接收视频数据和通过Bulk管道接收音频数据

后,会处理分解出消隐信号,并将行与行之间以及场与场之间标识符号删除,把视

频数据重新组成符合显示标准的格式,根据音频数据头及数据长度分离取出音频数

据,再根据时间戳的一一对应关系对视频和音频做同步处理。

TS码流与数字音频数据分时共用一个FIFO,即图3中的AVStream FIFO 7,这是

因为实际应用时TS码流是不会与分离的音频视频数据同时需要传送的。实线箭头

即表示TS码流的传输路径,这时由控制信号Audio_sel和Video_sel控制不传送视

频数据和音频数据。TS码流是具有固定传输速率的数字编码数据流,但是由于

USB同步传输的传输速率快于TS码流输入的速率,所以在本发明的数据传输方法

中,TS码流的传输被人为的插入消隐时间,消隐的周期与PAL制场消隐周期一致,

为20ms。在非消隐期启动同步传输方式将TS码流数据打包传输到主机,在消隐

期间不传输数据,此时USB发送的是空数据包。

2024年10月30日发(作者:撒清舒)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.8

(22)申请日 2006.01.26

(71)申请人 深圳艾科创新微电子有限公司

地址 518057 广东省深圳市南山区高新区科技中二路软件园4栋4楼406-421室

(72)发明人 刘俊秀 林晓伟 李晓春 常军锋 张毅 张亚国 石岭

(74)专利代理机构

代理人

(51)

H04N7/54

H04N7/52

(10)申请公布号 CN 101009849 A

(43)申请公布日 2007.08.01

权利要求说明书 说明书 幅图

(54)发明名称

一种基于USB2.0接口的音视频数

据传输方法

(57)摘要

一种基于USB2.0接口的音视频数

据传输方法,该方法使用USB2.0的同步传

输管道传输数字视频数据,利用视频信号

的场消隐时期不传送有效信号的特点,在

视频信号的场消隐时期使用USB2.0的批量

传输管道传输数字音频数据,实现了分离

采样输出的视频数据和音频数据的并发传

输。该传输方法同时支持通过切换数据传

输通道,实现音视频压缩编码流的同步传

输。该方法不会占用总线额外的带宽,实

现对同步传输带宽的充分利用;另外,该

传输模式中一场视频数据对应一场音频数

据,接收方很容易保证视频和音频的同步

播放。

法律状态

法律状态公告日

法律状态信息

法律状态

权 利 要 求 说 明 书

1、一种基于USB2.0接口的音视频数据传输方法,该方法利用彩色电视制式

(PAL/NTSC/SECAM制式)场消隐期间不传送有效图像的特点,其特征在于在采用

同步传输方式传输视频信号数据的同时,在视频信号的场消隐期间,使用批量传输

方式传送数字音频数据,从而实现了数字视频和数字音频数据流通过USB2.0接口

同时并发进行传输,该方法包括以下步骤:

(1)配置USB的设备端点,一端点为批量传输输入(Bulk in)端点,一端点为同步传

输输入(ISO)端点,输入方向是从USB设备指向主机,配置完成后主机与端点之间

就建立起了对应的数据传输管道;

(2)在视频数据场有效时期,启动同步传输模式(ISO)通过对应的数据传输管道传输

视频数据包;

(3)在视频数据场有效时期,场的音频数据连续输入FIFO储存起来;

(4)在视频数据场消隐时期,同步传输管道传输的是空数据包,此时启动批量传输

方式(Bulk)通过批量传输管道传送该场视频对应的音频数据,到此,完成了一场音

视频数据的传输,下一场传输重复以上(1)~(4)步骤循环。

2、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法所述步骤(2)之前还进一步包括以下步骤:在视频数据行与行、场与

场之间加入标识符区分奇偶行和奇偶场,在每场有效视频数据末尾打上时间戳作为

音视频数据同步标志。

3、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法所述步骤(3)之前还进一步包括以下步骤:在每场有效音频数据开头

打上时间戳作为音视频数据同步标志。

4、根据权利要求2所述的在视频数据行与行、场与场之间加入标识符,其特征在

于:该标志符符合ITU-R BT656标准。

5、根据权利要求2或3所述的在视频数据末尾或音频数据开头打上时间戳,其特

征在于:该时间戳为一个具有固定长度的数值。

6、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法将USB同步传输管道与批量传输管道结合在一起,可支持视频解码

器(Video Decoder)输出的数字视频数据流和音频解码器(Audio Codec)输出的数字音

频数据流的并发传输。

7、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过多路选择器(MUX)的切换,可以将同步传输管道用于音视频压缩

编码数据流(TS码流)的传输。

8、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过多路选择器(MUX)的切换,批量传输管道可以用于传输通过

I2S(Inter-IC Sound)串行数字音频总线直接输入的数字音频数据。

9、根据权利要求1所述的一种基于USB2.0接口的音视频数据传输方法,其特征

在于:该方法通过对每场视频和音频数据打上时间戳的方式,保证了相当长时间内

视频数据和同一场的音频数据之间的一一对应关系。

说 明 书

技术领域

本发明涉及一种音视频数据的传输方法,尤其是一种基于USB2.0通用串行总线传

输分离的视频、音频数据的方法。

背景技术

早期的USB1.1通用串行总线接口仅支持全速12Mbps,低速1.5Mbps的传输速率,

使其应用上只能局限于低速连接的领域。USB2.0的出现使USB总线的传输速率一

下子提高到480Mbps,使得USB总线在高质量音视频传输领域的应用成为了可能。

要将USB总线成功的应用于高质量音视频传输领域,首先必须了解视频,特别是

彩色电视信号制式和TS码流(Transport Stream,传输流)的特点以及USB2.0体系结

构的特点。

当前世界通用的彩色电视制式有PAL(Phase-Alternative Line)制、

NTSC(National Television Systems Committee)制和SECAM(法文:

SequentialColeur Avec Memoire)制三种。PAL/SECAM制电视一帧图像的总行数为

625,分两场扫描(奇场和偶场),行扫描频率是15625Hz,周期为64μs;在发送电

视信号时,每一行中传送图像的时间是52.2μs,其余的11.8μs不传送图像,是行

扫描的逆程时间,同时用作行同步及消隐用;场扫描频率是50Hz,周期为20ms;

每一场的扫描行数为625/2=312.5行,其中25行作场回扫,不传送图像,这段时

间称为场消隐时间,传送图像的行数每场实际只有287.5行,因此每帧只有575行

有图像显示。NTSC制电视一帧图像的总行数为525行,分两场扫描;行扫描频率

为15750Hz,每行周期为63.5μs,水平回扫时间为10μs(包含5μs的水平同步脉冲),

所以显示时间是53.5μs;场扫描频率是60Hz,周期为16.67ms;帧频是30Hz,周

期33.33ms;每一场的扫描行数为525/2=262.5行。除了两场的场回扫外,实际传

送图像的行数为480行。TS码流是数字电视多个节目的各个组成元素,包括视频

信号、音频信号经过编码,再按照一定的要求和格式打包,再对它们的相互关系进

行组织、加入各组成部分关系描述和节目组成信息进一步封装成传输包后的复合码

流。TS码流的数据结构为固定长度的包(188字节或204字节),其中有效数据固定

为188字节。

下面介绍USB2.0的体系结构。USB采用设备端点的形式实现主机与设备之间的通

信,端点是USB设备惟一可识别的部分,是主机与设备之间通信流的终点,端点

对应惟一的地址,端点的属性决定端点号、数据包大小、传输类型和数据传输方向。

主机软件与设备端点之间通过管道连接。USB2.0的体系结构包含4种基本的数据

传输类型:

(1)控制传输(Control Transfers):用于主机对设备进行配置和控制;

(2)批量传输(Bulk Data Transfers):用于数据量大且突发传输的情况,在传输限制方

面有很宽的动态范围;

(3)中断传输(Interrupt Data Transfers):通过中断指令进行及时和可靠的数据传输;

(4)同步传输(Isochronous Data Transfers):以预先协定的传输延时和传输带宽进行实

时同步数据流传输。

批量传输用于支持那些可以使用任意可用带宽在不同时间传输相当大量数据的设备,

批量传输可以传输大量的数据而不会阻塞总线,它会让其他类型的传输优先,如果

总线出现错误导致传送失败,可进行重发,所以批量传输可以保证数据必须被传送,

但不保证传送的带宽和延迟。USB定义了高速端点批量数据的最大有效负载是

512bits。

同步传输适合用于视频、音频这样的同步数据的传输。同步数据是指在产生、传输

和使用时是连续而且实时的,同步数据接收和发送的稳定速率隐含了相关的定时信

息,同步数据必须以接收的速率进行传输才能维持它的定时。同步传输可以保证管

道的数据以恒定的速率并具有一定容错能力的传输。USB在高速总线(480Mbps)上

建立了一个125μs的时间基,称为微型帧(micro frame),USB的高速同步端点指定

其一个微型帧可以包含两个或三个1024bits有效负载数据包的处理,即最多能在一

个微型帧传输3072bits的数据。同步传输的局限性在于当系统存在多种独立的视频、

音频数据流需要进行同步传输时,由于视频数据进行同步传输占用大量的带宽,而

USB2.0总线的带宽又是有限的,无法支持视频、音频数据同时通过USB2.0总线

的分立同步传输。

发明内容

本发明针对USB2.0对于多个占用较大带宽的同步信号源进行同步传输时无法支持

视频、音频数据同时通过USB2.0总线的分立同步传输,提供了一种通过USB2.0

串行数据总线传输分离高质量数字视频和音频数据,同时支持音视频压缩编码流传

输的方法。

本发明公开了一种基于USB2.0接口的音视频数据传输方法,该方法利用彩色电视

制式(PAL/NTSC/SECAM制式)场消隐期间不传送有效图像的特点,在采用同步传

输方式传输视频信号数据的同时,在视频信号的场消隐期间,使用批量传输方式传

送数字音频数据,从而实现了数字视频和数字音频数据流通过USB2.0接口同时并

发进行传输,该方法包括以下步骤:

(1)配置USB的设备端点,一端点为批量传输输入(Bulk in)端点,一端点为同步传

输输入(ISO)端点,输入方向是从USB设备指向主机,配置完成后主机与端点之间

就建立起了对应的数据传输管道;

(2)在视频数据场有效时期,启动同步传输模式(ISO)通过对应的数据传输管道传输

视频数据包;

(3)在视频数据场有效时期,场的音频数据连续输入FIFO储存起来;

(4)在视频数据场消隐时期,同步传输管道传输的是空数据包,此时启动批量传输

方式(Bulk)通过批量传输管道传送该场视频对应的音频数据,到此,完成了一场音

视频数据的传输,下一场传输重复以上(1)~(4)步骤循环;

本发明所述方法,在上述步骤(2)之前还进一步包括以下步骤:在视频数据行与行、

场与场之间加入标识符区分奇偶行和奇偶场,在每场有效视频数据末尾打上时间戳

作为音视频数据同步标志。

本发明所述方法,在上述步骤(3)之前还进一步包括以下步骤:在每场有效音频数

据开头打上时间戳作为音视频数据同步标志。

上述中的标志符符合ITU-R BT656标准。上述时间戳为一个具有固定长度的数值。

该方法将USB同步传输管道与批量传输管道结合在一起,可支持视频解码器

(Video Decoder)输出的数字视频数据流和音频解码器(Audio Codec)输出的数字音频

数据流的并发传输。同时,通过多路选择器(MUX)的切换,可以将同步传输管道用

于音视频压缩编码数据流(TS码流)的传输;同样通过多路选择器(MUX)的切换,

批量传输管道可以用于传输通过I2S(Inter-IC Sound)串行数字音频总线

直接输入的数字音频数据。另外,通过对每场视频和音频数据打上时间戳的方式,

保证了相当长时间内视频数据和同一场的音频数据之间的一一对应关系。

本发明所述方法的显著意义在于,该方法既可以支持独立视频数据流、音频数据流

的同步传输,也可以支持音视频压缩编码数据流(TS码流)的传输;其次,该方法

不会占用总线额外的带宽,实现对同步传输带宽的充分利用;另外,该传输模式中

一场视频数据对应一场音频数据,接收方很容易保证视频和音频的同步播放,极大

的简化了上层驱动的设计,该方法可以实现同步视频音频数据的并发传输而不会给

系统引入额外的带宽。通过该方法可以实现在PC机上收看彩色电视信号、数字电

视信号以及VCD、DVD音像。

附图说明

图1为USB2.0数据传输通道示意图;

图2为本发明数据传输方法的音视频数据传输格式;

图3为本发明数据传输方法的数据流示意图;

具体实施方式

如附图2和附图3所示,CLK表示视频采样时钟,hen表示行有效信号,ven表示

场有效信号,microframe表示一个微型帧,USB总线处于高速ISO传输方式且视

频解码器1采用标准27M时钟进行采样时,一个微型帧(最大3072bits)对应一个包

含两行视频数据(2880bits,27M采样一行视频数据为1440bits)的数据包,一场中有

效行是240行(NTSC制)或288(PAL制),240行需要分120包传输,288需要分144

包传输。场与场之间是消隐时间,在这段时间接收的包是空数据包。以PAL制为

例,PAL制中场的周期是20ms,场与场之间有25行的消隐时间,在这段时间用批

量传输方式(Bulk in)来传输音频数据,即音频数据每20ms才批量传输一次,由于

音频数据是连续的,而且由于人对于音频的感觉更为敏感,所以需要设计足够大的

FIFO(First-in First-out)缓冲器来储存20ms的音频数据,以保证不会丢失。同时,

根据国际电信联盟无线电部门656号建议(ITU-RBT656),使用0xFF 0xFF 0xZZ作

为行与行之间、场与场之间的标识符,以区分奇偶行和奇偶场。

附图3是基于本发明的数据传输方法的数据流示意图。数据输出单元分别是:视频

解码器(Video Decoder)1、音频解码器(Audio Codec)3、音视频压缩编码(TS码流)2

和I2S 4。图3中虚线箭头表示分离音频、视频数据的传输路径,由

Audio_sel和Video_sel两个控制信号控制多路选通器(MUX)5,音频输入可以选择

由Audio Codec 3输入或者I2S 4输入,使用本发明的方法实现视频数

据和音频数据的分立同步传输的步骤如下:

(1)首先需要配置USB的设备端点。如附图1所示,USB设备的端点0是输入和输

出端点的默认控制方式,USB系统软件通过这个默认的控制方式对逻辑设备进行

初始化和配置操作。在这里需要配置端点2作为批量传输输入(Bulk in)端点,配置

端点3作为同步传输输入(ISO)端点,输入方向是从USB设备指向主机。

(2)配置完成后主机与端点之间就建立起了对应的数据传输管道。传输开始时,视

频解码器1输出视频数据存入数据缓冲区,即附图3中所示的VDEC FIFO6,经过

一段时间的数据准备之后启动DMA(Direct Memory Access,直接寄存器寻址)将数

据传送到USB端点3对应的数据发送缓冲区,在视频信号有效期间启动同步传输

方式,以一个微型帧对应两行视频数据的格式对视频数据进行打包并传输到主机,

行与行之间用3个字节组成的标识符区分奇偶行:0xFF 0xFF 0x9d表示偶行,

0xFF 0xFF 0xda表示奇行。

(3)在场消隐阶段,视频信号无效,ISO同步传输是一直存在的,只不过此时USB

同步传输管道发送的是空数据包。这时音频数据缓冲器,即附图3中的

AVStream FIFO 7已经储存了一场时间(PAL制为20ms)的音频数据,音频的采样率

一般为32Kbps、44.1Kbps和48Kbps,一场音频数据的大小最多不到1Kbits。同样

通过DMA的方式将音频数据传输到端点2对应的数据发送缓冲区,在视频信号无

效时启动批量传输方式将音频数据进行打包并传输到主机,音频数据量比较小,批

量传输方式的带宽足够满足音频传输的要求。

(4)每一场结束的地方设置一个结束符号,在这里场的结束符号设为由5个字节组

成的标识符,其中3个字节用来区分奇偶场,0xFF 0xFF 0xfl表示偶场,

0xFF 0xFF 0xb6表示奇场,另外2个字节是音频数据的长度。为了保证每场视频数

据和音频数据的对应关系,在场消隐刚刚开始,即在同步传输视频数据的末尾打上

一个时间戳,在这里时间戳设置为一个2Byte的数值,再在音频数据,即批量传输

数据的开头也打上一个相同的2Byte的时间戳。下一场视频数据和音频数据的时间

戳数值自动加1。通过打时间戳的方法,可以保证20ms(PAL制)×216

=22minutes内视频数据和音频数据的一一对应关系,在这种对应关系下就算由于

系统延时导致部分视频数据丢失,仍能够在系统恢复正常工作后保持视频与音频的

同步。

(5)主机软件的驱动程序通过ISO管道接收视频数据和通过Bulk管道接收音频数据

后,会处理分解出消隐信号,并将行与行之间以及场与场之间标识符号删除,把视

频数据重新组成符合显示标准的格式,根据音频数据头及数据长度分离取出音频数

据,再根据时间戳的一一对应关系对视频和音频做同步处理。

TS码流与数字音频数据分时共用一个FIFO,即图3中的AVStream FIFO 7,这是

因为实际应用时TS码流是不会与分离的音频视频数据同时需要传送的。实线箭头

即表示TS码流的传输路径,这时由控制信号Audio_sel和Video_sel控制不传送视

频数据和音频数据。TS码流是具有固定传输速率的数字编码数据流,但是由于

USB同步传输的传输速率快于TS码流输入的速率,所以在本发明的数据传输方法

中,TS码流的传输被人为的插入消隐时间,消隐的周期与PAL制场消隐周期一致,

为20ms。在非消隐期启动同步传输方式将TS码流数据打包传输到主机,在消隐

期间不传输数据,此时USB发送的是空数据包。

Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738180977)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738180977)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738228887)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738228887)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738238955)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738238955)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738265119)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738265119)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738283460)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738283460)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738313014)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738313014)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1738345218)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1738345218)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1739679083)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1739679083)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1739883433)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1739883433)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740119742)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740119742)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740120986)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740120986)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740121049)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740121049)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740139840)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740139840)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740186168)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740186168)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1740909160)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1740909160)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1741210191)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1741210191)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1742465022)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1742465022)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743735478)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743735478)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1743863942)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1743863942)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1095, humandate(1744026369)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(26))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
Error[2]: Trying to access array offset on value of type int, File: /www/wwwroot/www.usbmi.com/xiunophp/xiunophp.min.php, Line: 54
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 1096, humandate(1744026369)
File: /www/wwwroot/www.usbmi.com/tmp/model_thread.func.php, Line: 662, well_thread_format(array(27))
File: /www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm, Line: 249, well_thread_find_asc(array(20) , 20)
File: /www/wwwroot/www.usbmi.com/tmp/route_read.php, Line: 204, include(/www/wwwroot/www.usbmi.com/tmp/view_template_d8_htm_read.htm)
File: /www/wwwroot/www.usbmi.com/tmp/index.inc.php, Line: 129, include(/www/wwwroot/www.usbmi.com/tmp/route_read.php)
File: /www/wwwroot/www.usbmi.com/index.php, Line: 29, include(/www/wwwroot/www.usbmi.com/tmp/index.inc.php)
发布评论

评论列表 (0)

  1. 暂无评论