(self, c_frame)
| 158 | return c_pkt |
| 159 | |
| 160 | def c_vframe_to_python_vframe(self, c_frame): |
| 161 | buf_pointers = [] |
| 162 | line_size = [] |
| 163 | last_plane_size = 0 |
| 164 | |
| 165 | # prepare buffer pointer and line size |
| 166 | for c_plane in c_frame.py_get_planes(): |
| 167 | buf_pointers.append(c_frame.py_get_buffer() + last_plane_size) |
| 168 | last_plane_size += c_plane.get_size() |
| 169 | line_size.append(c_plane.get_stride()) |
| 170 | |
| 171 | # create av frame with external buffer |
| 172 | py_frame = VideoFrame(c_frame.get_width(), c_frame.get_height(), |
| 173 | c_frame.get_format(), buf_pointers, line_size) |
| 174 | |
| 175 | # set pts |
| 176 | py_frame.pts = c_frame.get_pts() |
| 177 | |
| 178 | # set time base |
| 179 | py_frame.time_base = Fraction(c_frame.get_time_base().num, |
| 180 | c_frame.get_time_base().den) |
| 181 | |
| 182 | # transfer the buffer owner to av.frame |
| 183 | c_frame.release() |
| 184 | |
| 185 | return py_frame |
| 186 | |
| 187 | def c_aframe_to_python_aframe(self, c_frame): |
| 188 | buf_pointers = [] |
no test coverage detected