Support new libav* APIs #38368

Closed
opened 2014-01-26 13:36:47 +01:00 by elenril · 11 comments
elenril commented 2014-01-26 13:36:47 +01:00 (Migrated from localhost:3001)
Allows building with the upcoming Libav 10 release. [0001-Change-libavcodec-CODEC_ID_-to-AV_CODEC_ID_.patch](https://archive.blender.org/developer/F75425/0001-Change-libavcodec-CODEC_ID_-to-AV_CODEC_ID_.patch) [0002-libavcodec-API-usage-use-new-video-encoding-API.patch](https://archive.blender.org/developer/F75426/0002-libavcodec-API-usage-use-new-video-encoding-API.patch) [0003-libavformat-API-usage-use-avg_frame_rate-instead-of-.patch](https://archive.blender.org/developer/F75427/0003-libavformat-API-usage-use-avg_frame_rate-instead-of-.patch) [0004-libavformat-API-usage-use-avformat_close_input-inste.patch](https://archive.blender.org/developer/F75428/0004-libavformat-API-usage-use-avformat_close_input-inste.patch) [0005-audaspace-use-new-libavcodec-audio-encoding-API-wher.patch](https://archive.blender.org/developer/F75429/0005-audaspace-use-new-libavcodec-audio-encoding-API-wher.patch)
elenril commented 2014-01-26 13:36:47 +01:00 (Migrated from localhost:3001)
Author

Changed status to: 'Open'

Changed status to: 'Open'
elenril commented 2014-01-26 13:36:47 +01:00 (Migrated from localhost:3001)
Author

Added subscriber: @elenril

Added subscriber: @elenril

Added subscribers: @Sergey, @ThomasDinges

Added subscribers: @Sergey, @ThomasDinges

Adding Sergey here, in case we update our FFMPEG.

Adding Sergey here, in case we update our FFMPEG.

Added subscribers: @neXyon, @brecht

Added subscribers: @neXyon, @brecht

Patch 0005 is for audaspace, so @neXyon might want to take a look at it.

On OS X I get compiler errors because we have an old ffmpeg there still (version major 53 minor 60 micro 100). Here's a patch that fixes them:
new_libav_compat_fixes_osx.diff

Patch 0005 is for audaspace, so @neXyon might want to take a look at it. On OS X I get compiler errors because we have an old ffmpeg there still (version major 53 minor 60 micro 100). Here's a patch that fixes them: [new_libav_compat_fixes_osx.diff](https://archive.blender.org/developer/F75482/new_libav_compat_fixes_osx.diff)

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sergey Sharybin self-assigned this 2014-01-28 09:31:45 +01:00

@elenril, committed to master with some own modifications to the patches. Mainly to solve compilation error with older FFmpeg. Please give it a try with latest git and submit more patches if something is still broken for you :)

@brecht, i successfully compiled blender with own changes to the patches which were partially based on your one. But it still might be something missing for OSX or so. Please also give it a test compilation and let me know if something is to be tweaked.

@neXyon, pretty much sure you'll want to switch to newer API in audaspace anyway. Not so difficult to backport the changes to your repo nyway.

At this point i'll close the task since all the patches are pushed.

@elenril, committed to master with some own modifications to the patches. Mainly to solve compilation error with older FFmpeg. Please give it a try with latest git and submit more patches if something is still broken for you :) @brecht, i successfully compiled blender with own changes to the patches which were partially based on your one. But it still might be something missing for OSX or so. Please also give it a test compilation and let me know if something is to be tweaked. @neXyon, pretty much sure you'll want to switch to newer API in audaspace anyway. Not so difficult to backport the changes to your repo nyway. At this point i'll close the task since all the patches are pushed.
Member

Hi, sorry for replying late, but I had a very stressful exam week. Anyway, still I'd like to be asked before stuff like this gets committed. The github audaspace version https://github.com/neXyon/audaspace has this newer ffmpeg API changes for over a month already, so there wouldn't have been a need to recode everything actually and as the implementation here is somewhat different the code keeps diverging. I should probably move audaspace from intern to extern soon, maybe then people will stop committing to it just like that, as it's already the second time this happened.

Hi, sorry for replying late, but I had a very stressful exam week. Anyway, still I'd like to be asked before stuff like this gets committed. The github audaspace version https://github.com/neXyon/audaspace has this newer ffmpeg API changes for over a month already, so there wouldn't have been a need to recode everything actually and as the implementation here is somewhat different the code keeps diverging. I should probably move audaspace from intern to extern soon, maybe then people will stop committing to it just like that, as it's already the second time this happened.

@neXyon, even if audaspace is in extern/ it is to be maintained and asking to review rather simple compilation error fixes which will take week is not the way to go.
Don't see the issue with local commits either -- if you're moving audaspace to mainly host on github it should be matter of running a script which will re-bundle the whole audaspace into blender (the same exact way as happens for egen, libmv, ceres, carve..).
With those commits and CC you do know what to look into when updating audaspace. You could either use the same patches in your upstream, or replace local changes with upstream version. Don't see any reasons to yell about commits really.

@neXyon, even if audaspace is in extern/ it is to be maintained and asking to review rather simple compilation error fixes which will take week is not the way to go. Don't see the issue with local commits either -- if you're moving audaspace to mainly host on github it should be matter of running a script which will re-bundle the whole audaspace into blender (the same exact way as happens for egen, libmv, ceres, carve..). With those commits and CC you do know what to look into when updating audaspace. You could either use the same patches in your upstream, or replace local changes with upstream version. Don't see any reasons to yell about commits really.
Member

How could a compilation error happen suddenly after changing nothing for a while? The only possible way this happens is through a library update, that could have been discussed first? Anyway the point here was that the code that supports a newer ffmpeg version already existed for a while and didn't have to be recoded again and now you want to add even more work, having to look at which code got changed in blender and update the github code again? That doesn't make sense to me, sorry. Also your suggestion to just run a script to keep github and blender audaspace in sync shows that you might not have read my original email, where I asked people to talk to me before changing code and that the github audaspace is using C++11, being the reason why I have to manually sync them at the moment. I didn't mean to be offensive in any way, but you accusing me of yelling kind of is. :-(

How could a compilation error happen suddenly after changing nothing for a while? The only possible way this happens is through a library update, that could have been discussed first? Anyway the point here was that the code that supports a newer ffmpeg version already existed for a while and didn't have to be recoded again and now you want to add even more work, having to look at which code got changed in blender and update the github code again? That doesn't make sense to me, sorry. Also your suggestion to just run a script to keep github and blender audaspace in sync shows that you might not have read my original email, where I asked people to talk to me before changing code and that the github audaspace is using C++11, being the reason why I have to manually sync them at the moment. I didn't mean to be offensive in any way, but you accusing me of yelling kind of is. :-(
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#38368
No description provided.