Domanda

Sto scrivendo un'applicazione che esporta video che ho catturato (PAL SDI). Lo spazio colore originale è UYvy (4: 2: 2). Quando converto i fotogrammi con SWSCALE a 4: 2: 0 e codifica con AVCODEC ottenendo il bleeding del colore tra i campi. Sospetto che questo sia dal SWSCALE che non è a conoscenza del telaio intrecciato. Ecco un esempio di una parte di una cornice di bob-deinterlacciata dal mio video esportato che mostra uno dei campi:

Bleeding del colore tra i campi

Come puoi vedere, il colore sanguina dall'altro campo. Come posso continuare ad accadere? Ho guardato la biblioteca e ho cercato di trovare nulla in Swscale che lo dice di rispettare i campi, ma non ho trovato nulla.

Memoriposto ogni campo in buffer separati, quindi posso elaborare i campi singolarmente prima della mano se ciò aiuti.

GRAZIE PER QUALSIASI AIUTO SU QUESTO!

Saluti Carl

Modifica: Fondamentalmente, ciò che voglio è produrre PAL DV. Sospetto che SWSscale sia in qualche modo in qualche modo produrre questo tipo di interlacciato 420, poiché FFMpeg (l'applicazione) può gestire questo (penso).

È stato utile?

Soluzione

La risposta è fare due operazioni di SWSCALE, una per ogni campo.È possibile truccare il SWSCALE per utilizzare lo stesso tampone specificando la metà dell'altezza con il doppio del passo, quindi compensare la seconda operazione da una riga.

Ho finalmente ottenuto la risposta dall'elenco utenti della Libav.Il codice di esempio può essere trovato in mPlayer / libmpcodecs / vf_scale.c egavFilter / vf_scale.c

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top