ljubobratovicrelja / ffmpeg-d

D port of the FFmpeg C headers
16 stars 9 forks source link

Upgrade to ffmpeg 3.1 #11

Closed DavidBennettPIO closed 7 years ago

DavidBennettPIO commented 7 years ago

I still need to test this but I think it's pretty well there.

Also I want to update the examples to the 3.1 API also.

Hopefully this will be ready to merge tomorrow, and the 3.2 upgrade next week.

DavidBennettPIO commented 7 years ago

I have updated the examples to use the new API as much as possible.

I was having some bugs with the internal ffmpeg changes to the AVCodecContext / AVCodecParameters changes in AVStream. If I used the new way it would give incorrect pts values in both decoding and encoding so I have kept this using AVStream.codec rather then allocating a new one.

Other then that everything seems to work fine... and seeing as the official examples seem to avoid this issue (transcode is the only example that reencodes more then one stream and uses the old API until 3.3) my guess it's user error on my part (documentation is near impossible to find for this case) or 3.1 had a bug rather then a issue with the linking.

Like last time, I'm going to create the 3.2 patch before merging as I might find some minor issues.

@ljubobratovicrelja Did you want to review the changes before I merge them?

Thanks, David

DavidBennettPIO commented 7 years ago

@ljubobratovicrelja I also have the 3.2 upgrade ready to go, I could not see any errors with the 3.1 work so I believe it's good to merge.

Still want to work on the examples for 3.2 to see if I can get away from AVStream.codec but I'll probably work on that next week and then the 3.3 upgrade after that.

DavidBennettPIO commented 7 years ago

@ljubobratovicrelja I have updated the code style on the examples just recompiling my ffmpeg 3.1 now so I can test it. I'll let you know when thats done.

DavidBennettPIO commented 7 years ago

@ljubobratovicrelja looks like the examples work as expected, I'll look at merging this in a few hours.