(self, py_frame)
| 84 | return c_frame |
| 85 | |
| 86 | def python_aframe_to_c_aframe(self, py_frame): |
| 87 | planes = [] |
| 88 | |
| 89 | # change buffer pointer to planes[0].buffer_ptr |
| 90 | # in pyav, the buffer_point is NULL |
| 91 | buffer_pointer = py_frame.planes[0].buffer_ptr |
| 92 | |
| 93 | prev_plane_size = 0 |
| 94 | for i, py_plane in enumerate(py_frame.planes): |
| 95 | # copy video plane data from av frame to bmf frame |
| 96 | planes.append( |
| 97 | csdk.AudioPlane(py_plane.buffer_size, py_plane.buffer_ptr)) |
| 98 | |
| 99 | # create bmf frame |
| 100 | c_frame = csdk.AudioFrame(py_frame.format.name, py_frame.layout.name, |
| 101 | py_frame.samples, 0, buffer_pointer, planes) |
| 102 | |
| 103 | # set pts |
| 104 | c_frame.set_pts(py_frame.pts) |
| 105 | |
| 106 | # set time base |
| 107 | c_time_base = csdk.Rational(py_frame.time_base.numerator, |
| 108 | py_frame.time_base.denominator) |
| 109 | c_frame.set_time_base(c_time_base) |
| 110 | c_frame.set_sample_rate(py_frame.sample_rate) |
| 111 | return c_frame |
| 112 | |
| 113 | def trans2dict(self, data): |
| 114 | if "__dict__" in dir(data): |
no test coverage detected