[Refactor] remove ffmpeg_kit dependency and add web implementation#147
[Refactor] remove ffmpeg_kit dependency and add web implementation#147maRci002 wants to merge 16 commits intoLeGoffMael:masterfrom
Conversation
|
Thank you a lot for your work this is really great ! However the web support cannot seems to be published without the video_thumbnail package being updated first. |
|
I have a question about why |
Because you would have to import dart:io which won't work on web. The |
|
On the web, when you want to play a
|
|
What's the status for web? Is it done? Can we use the web version of video_editor? Thank you in advance. |
video_thumbnail:
git:
url: https://github.com/maRci002/video_thumbnail.git
ref: feat-web_implementation
path: video_thumbnail
video_editor:
git:
url: git@github.com:maRci002/video_editor.git
ref: feature/separate-video-export
The primary focus of this PR was on two aspects: removing the ffmpeg_kit dependency and adding a web implementation. PR #156 had already removed the ffmpeg_kit dependency and introduced some helper functionality to generate ffmpeg commands. My changes are quite similar; however, they have resulted in some conflicts. Therefore, my first step is to make this PR compatible with the current master branch. The web implementation will introduce some breaking changes, such as the use of XFile instead of File, unless the VideoEditorController.networkUrl constructor is used. XFile is beneficial as it holds important information like the mimeType and allows easy access to bytes, which is useful for working with the web ffmpeg library.
It appears that the video_thumbnail package has been abandoned. I am considering forking it to enhance its capabilities, such as supporting web or providing support for a Stream of thumbnails. This approach would be more efficient, as the underlying generator (such as AVAssetImageGenerator or MediaMetadataRetriever) wouldn't need to be opened and closed repeatedly but could remain open as needed for each frame. |
|
Hi guy's, do we have any new about this package for web ? Thank you in advance |
closes #146
This PR contains the following:
ffmpeg_kitpackage.FFmpegConfigto improve video and cover export functionality.ffmpeg_kitorffmpeg_wasm, depending on the platform.video_thumbnailversion to 0.6.0.Breaking changes
FilewithXFileinVideoEditorController.file.VideoEditorController.getMetaData.VideoEditorController.exportVideo.VideoEditorController.extractCover.Still need:
gitandlocalpath frompubspec.yaml, this needs the Pull Requests to be merged.executeFFmpegWebandexecuteFFmpegIOmethods in the example.CropScreenis closed theVideoPlayeris blackVideoPlayerat the same time:CropGridViewer.preview/CropGridViewer.editVideoPlayerkey must change as soon as we are done croppingcropStyle: const CropGridStyle(background: Colors.transparent),is needed on the web. It seems thatPath.combinebreaks on the web.Path'sfillTypetoPathFillType.evenOddPlease refer to the redleafsofts/flutter_ffmpeg_wasm#1
READMEfor instructions on how to runffmpeg_wasmon the web.This is what it looks like on the web (using HTML renderer):
video_editor_on_the_web.mp4