Estoy capturando video 4K sin comprimir desde mi Sony A7R II a través de un dispositivo de captura de video y estoy usando ffmpeg para guardar el video.
Mi problema es que no sé qué códec usar. Las dos opciones que probé son:
libx264
, nvenc
y qvx
todos esencialmente llenan el búfer y luego comienzan a saltar fotogramas después de menos de un minuto de disparo.Estoy haciendo todo esto en una computadora portátil, por lo que tengo pocas posibilidades de agregar codificación de hardware, especialmente considerando que las soluciones de Intel y Nvidia, al menos en mi máquina, son claramente insuficientes para 4K.
Mis requisitos son que el códec permita:
Por si te sirve, mi laptop tiene un i7-4710MQ y 32Gb de RAM.
Actualización : alguna aclaración: grabo a 30FPS, mi dispositivo de captura es INOGENI, el muestreo es 4:2:0. Y no, no quiero perder más calidad de la necesaria. Si tengo que gastar 100 Gb/hora para grabar, estoy de acuerdo con eso.
Como mencionó @Mulvya, creo que el problema es el preajuste "lento".
Una opción es codificar una transmisión comprimida que también no tenga pérdidas. Por ejemplo, el codificador x264 puede hacer esto usando "-preset ultrafast -qp 0". Esto probablemente resultará en el incumplimiento de su tercer requisito (compatibilidad), pero dado que no tiene pérdidas, puede transcodificar más tarde en discos giratorios baratos. También puede considerar usar el codificador sin pérdidas huffyuv, que podría ser mejor compatible. Hay algunos errores con este método, por lo que definitivamente desea probar su flujo de trabajo de principio a fin. En particular, vea esta pregunta: El uso de h264 en modo sin pérdida trae pequeños resultados inesperados
Si sigue esta ruta, también experimentaría eliminando el submuestreo y codificando en 4: 4: 4. Es posible que no aumente tanto el tamaño de su archivo y lo ayudará si planea realizar algún trabajo de posproducción.
Otra opción, dependiendo de tu presupuesto, es comprar un codificador. Me encanta FFmpeg, pero está diseñado para funcionar en todas partes, no para aprovechar al máximo tu hardware. Mainconcept no es demasiado caro y podrá usar mejor el procesador i7 que ya pagó. (Consulte https://software.intel.com/en-us/articles/using-the-intel-media-sdk-within-mainconcept-h264avc-encoder-for-intel-quick-sync-video , por ejemplo). también ofrece un codificador HEVC que reduciría aún más el tamaño de su archivo. Sin embargo, no puedo responder por la calidad, ya que mi experiencia es con Ateme. Pero creo que al menos puedes evaluarlo gratis.
gian
RawBean
RawBean
Dmitri Nesteruk
Dmitri Nesteruk
ffmpeg -f dshow -rtbufsize 2000M -video_size 3840x2160 -i video="2318-INOGENI 4K2USB3":audio="Digital Audio Interface (2318-INOGENI 4K2USB3)" -c:v nvenc -preset slow -loglevel info r:\4k.mp4
gian
libx264
converyfast
oultrafast
preestablecido y perfilmain
obaseline
.Dmitri Nesteruk
Dmitri Nesteruk
veryfast
parece funcionar, nada más lento no