Re: [问题] 程式启动流程出错

楼主: sorkayi (寻找奶昔)   2014-11-09 22:56:19
板上各位大大好
目前已经有找到问题发生的可能地点了
目前发现 压缩成 H.264 那部分是没有问题的
主要发生原因是在档案写入至 硬盘的部分出错了
但是就是不知道为什么会出错
只要在开档时 open 加入 O_SYNC 就能成功将影格写入
但由于 IO 动作太慢了 导致撷取的影格漏掉了
不知道有没有什么方法可以 提高写入速度
原本只利用 Linux 原本的快取空间来写入就会出现破图问题
不知道 Linux 在登入动作时会有做一些 IO 相关的处理吗
感谢各位大大 >///<
※ 引述《sorkayi (寻找奶昔)》之铭言:
: 板上大大安安
: 最近我在 TI 的开发板上做了影像撷取转 H264 再存入硬盘中
: 如果我的所写的程式是利用手动启动的(./xxxxxx &)
: 录影出来的影像就不会破图
: 但若是透过 init.d/rcS 来开启程式
: 录出来的影像就会有一小段出现破图
: 不知道板上大大有没有什么建议 @@
: 能够自动开启程式 又不会出现破图情形
: 感谢各位的阅读....
作者: askacis (ASKA)   2014-11-09 23:43:00
Linux IO调整的部分可以google dirty ratio可以调整磁盘IO与内存cache的运用,比O_SYNC来的温和又或者你可以把写入动作开成独立thread,用两个buffer轮流切换避免waiting I/O之类的方式看看太即时写入或是过依赖Cache到最后out of memory都有可能~
作者: carylorrk (carylorrk)   2014-11-10 12:47:00
同时开 thread 的意思是?各开一条 thread ,用 producer consumer 往下传吗?

Links booklink

Contact Us: admin [ a t ] ucptt.com