You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In an effort to migrate to the v3 api I'm also switching to the pyav plugin. I've spent a decent amount of time trying to figure things out since (unless I'm using it wrong), it isn't a complete 1:1 translation from imageio-ffmpeg to pyav due to differences and conveniences in the defaults. For example, with pyav it seems you have to specify a codec. Also, imageio-ffmpeg seemed to have a default filter that scaled non-power-of-2 images to power-of-2 sizes. Lastly, I'm pretty sure I was always able to pass rgba images and have imageio-ffmpeg "just work", but now when I do it I get an error (copying numpy array with 4 bands to a buffer array with 3 bands) since pyav defaults to an input pixel format of "rgb24". I've hardcoded by usage to codec="libx264", set input pixel format to "rgba"`, and a scale filter:
This seems to work, but is there any documentation about these differences that I missed and should have read first? It was pretty hard to find the information about the filters since those are only documented in the pyav plugin API docs. If this type of documentation doesn't exist, should it? Would you accept a PR adding it? What other gotchas could people encounter?
The text was updated successfully, but these errors were encountered:
In an effort to migrate to the v3 api I'm also switching to the pyav plugin. I've spent a decent amount of time trying to figure things out since (unless I'm using it wrong), it isn't a complete 1:1 translation from imageio-ffmpeg to pyav due to differences and conveniences in the defaults. For example, with pyav it seems you have to specify a codec. Also, imageio-ffmpeg seemed to have a default filter that scaled non-power-of-2 images to power-of-2 sizes. Lastly, I'm pretty sure I was always able to pass rgba images and have imageio-ffmpeg "just work", but now when I do it I get an error (copying numpy array with 4 bands to a buffer array with 3 bands) since pyav defaults to an input pixel format of "rgb24". I've hardcoded by usage to
codec="libx264", set input pixel format to
"rgba"`, and a scale filter:This seems to work, but is there any documentation about these differences that I missed and should have read first? It was pretty hard to find the information about the filters since those are only documented in the pyav plugin API docs. If this type of documentation doesn't exist, should it? Would you accept a PR adding it? What other gotchas could people encounter?
The text was updated successfully, but these errors were encountered: