Releases: b-editor/beutl
v2.0.0-preview.5
日本語のリリースノートはこちらです。
What's Changed
- Windows
- macOS
- Linux
New Features
- Added unit suffixes to numeric inputs in the Create New Project dialog
Bug Fixes
- UI layout and responsiveness
- Fixed OutputView path/value columns to be flexible and show full paths in tooltips
- Fixed recent-items panel responsiveness on the home screen
- Fixed Command Palette result layout for narrow window widths
- Fixed text trimming and wrapping on extension search result cards
- Fixed Extensions page layout with minimum-size constraints
- Fixed release packages to ship the complete FFmpeg worker dependency set
Changelog
- docs: correct Phase 1 false positives in refactoring-plan.md by @yuto-trd in #2021
- fix(ui): make OutputView path/value columns flexible with full-path tooltip by @yuto-trd in #2023
- fix(ui): make EditorHostFallback recent-items panel responsive by @yuto-trd in #2022
- fix(ui): stack CommandPalette result category/description for narrow widths by @yuto-trd in #2026
- fix(ui): bound SearchPage result-card text with trimming and wrapping by @yuto-trd in #2028
- fix(ui): make ExtensionsPage window responsive with min-size floors by @yuto-trd in #2032
- feat(ui): show unit suffixes on CreateNewProject numeric inputs by @yuto-trd in #2034
- ci: paginate scheduled-review idempotency guard and add dry-run mode by @yuto-trd in #2025
- ci: harden release-note format/translate workflows by @yuto-trd in #2024
- docs(ai-workflow): correct /beutl-loop auto-merge caveat and gate guidance by @yuto-trd in #2036
- fix(build): ship the FFmpeg worker's full dependency closure in releases by @yuto-trd in #2037
Full Changelog: v2.0.0-preview.4...v2.0.0-preview.5
v2.0.0-preview.4
日本語のリリースノートはこちらです。
What's Changed
Windows
macOS
Linux
New Features
- Added Ctrl+Shift+P command palette for quickly searching and executing commands
- Added history view with jump-to-step for navigating the undo history
- Added 2D transform handles on the preview for directly manipulating position, scale, and rotation
- Added keyboard shortcuts for nudging timeline elements, duplicating clips (Ctrl+D / Alt+drag), and seeking to the next/previous keyframe
- Added a Go-to-timecode dialog for precise playhead positioning in the player
- Added onion-skin overlay to the preview player
- Moved player settings to a dedicated Preview Settings tool tab
- Added an "Add Adjustment Layer" menu entry to the editor
- Implemented resolution-independent rendering pipeline — effects and filters now scale correctly at any output resolution (breaking change)
- Added audio effects:
- Compressor
- Limiter (brick-wall peak limiter)
- Added Flatpak packaging for Linux distribution
- Expanded telemetry sensitive-data redaction
Improvements & Refactoring
- Refactored Timeline editing to route through a dedicated editor services layer, improving plugin extensibility (breaking change)
- Removed many deprecated and dead API surfaces, including the legacy encoder pipeline, obsolete
ISamplestructs, deadConfigurationsurface,BcTabView/BcTabItemcontrols, unused byte-LUT chain,ICanvas/INode/GraphicsException, andProjectService/EditorService/ExtensionProvidersingletons — all breaking changes - Made
IFrameProvider/ISampleProviderimplementIDisposablefor reliable resource cleanup (breaking change) - Removed MediaFoundation DXVA2/audio dead paths and no-op settings (breaking change)
- Removed the in-process FFmpeg path; collapsed the FFmpegOutOfProcess configuration axis (breaking change)
- Relocated IPC frame/sample providers to the MIT-licensed
Beutl.FFmpegIpcproject - Multiple performance improvements:
- Pooled per-sample speed buffers in SpeedNode
- Reused onion-skin snapshot bitmap during compositing
- Made FFmpeg codec property editors async and cached
- Shared FFmpegOptionsCache across editor instances to reduce IPC round-trips
- Reused the retained buffer for same-frame re-requests in IpcFrameProvider
- Upgraded ReactiveUI.Avalonia and Dock.Avalonia packages
Bug Fixes
- File compatibility: Fixed deserialization of legacy 1.x element files missing the
$typediscriminator - Editor:
- Fixed index out-of-range error when dragging gradient color stops
- Fixed output profiles being overwritten on restore failure
- Fixed corrupt config files causing crashes (JSON errors now caught gracefully)
- Fixed scene failing to open when the view state config was corrupt
- Fixed partial relocation failures not being reported during project export
- Fixed history mutation not pausing playback; scene settings are now applied correctly after pause
- Player / Preview:
- Fixed transform-handle overlay blocking the UI during playback
- Fixed onion-skin config being read off the UI thread
- Audio:
- Fixed audio resampler not being disposed during FFmpeg encoding cleanup
- Fixed
UseGlobalClockand parent-relative time not being respected in audio animations - Fixed silent audio buffer sample count alignment
- Fixed limiter deque overflow during audio release
- Fixed integer overflow in audio/media sample-index conversions
- Fixed waveform thumbnail sample math overflow
- Multiple audio buffer leak fixes across audio graph nodes
- FFmpeg / Video:
- Fixed FFmpeg install dialog not appearing when worker libraries were missing
- Fixed FFmpeg worker not respecting
BEUTL_HOMEwhen locating libraries - Fixed IpcFrameProvider returning the wrong frame on non-sequential requests
- Multiple IpcFrameProvider/IpcSampleProvider reliability fixes (leak guards, size validation, prefetch, EOF clamping)
- Fixed encode cancellation not being surfaced as
OperationCanceledException - Fixed FFmpeg seek returning -22 Invalid argument when seeking past EOF
- Engine / Rendering:
- Fixed multiple
FormattedTextresource leaks and use-after-dispose bugs - Fixed integer overflow in Animator interpolation
- Fixed video thumbnail count against degenerate frame sizes
- Fixed double-dispose in rasterize paths when an operation throws on Dispose
- Fixed SKColorFilter leak in ParticleRenderNode
- Fixed multiple
- MediaFoundation (Windows):
- Fixed resource cleanup and initialization failure handling across MFReader and MFDecoder
- Fixed frame buffer size overflow
- Fixed video-only files not opening correctly in AudioVideo mode
- Stability:
- Fixed NotificationService crash and UI thread starvation
- Fixed
TimeRange.IsEmptyreturning wrong result for zero-duration ranges - Fixed thread-safety race in the shutdown/wait path
- Fixed encoder extension matching to be case-insensitive
- Fixed keyframe animations being skipped when parent offset was unresolvable
- Rolled back project state when persistence fails
- Rolled back failed extension loads in the API layer
- Hardened
Counter<T>against reorder and AddRef TOCTOU races - Hardened IpcConnection cancellation handling in the multiplexed path
Changelog
- ci: add scheduled code review workflow posting to Projects v2 by @yuto-trd in #1766
- build(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #1769
- feat: Expand telemetry sensitive-data redaction by @yuto-trd in #1770
- fix: deserialize 1.x Element files missing $type discriminator by @yuto-trd in #1771
- fix: dispose audio resampler in FFmpeg encoding cleanup by @yuto-trd in #1772
- feat: Add Ctrl+Shift+P command palette for searchable commands by @yuto-trd in #1776
- test: Expand unit-test coverage across Core, Engine, Utilities by @yuto-trd in #1778
- test: Expand unit-test coverage across Core, Graphics, Utilities by @yuto-trd in #1783
- fix(command-palette): address remaining PR #1776 review comments by @yuto-trd in #1779
- feat: add history view with jump-to-step by @yuto-trd in #1780
- fix: dispose SKColorFilter in ParticleRenderNode by @yuto-trd in #1788
- fix: surface FFmpeg install dialog when worker libraries are missing by @yuto-trd in #1786
- feat: add Flatpak packaging for Linux distribution by @yuto-trd in #1784
- feat: route FFmpegWorker logs to host logger by @yuto-trd in #1787
- fix: prevent NotificationService crash and UI thread starvation by @yuto-trd in #1789
- build(deps): bump actions/cache from 4 to 5 by @dependabot[bot] in #1790
- fix: exclude AVFoundation extension from Linux/Windows builds by @yuto-trd in #1795
- Bump Microsoft.Extensions.ObjectPool from 10.0.7 to 10.0.8 by @dependabot[bot] in #1805
- Bump Microsoft.Extensions.DependencyInjection and Microsoft.Extensions.Logging by @dependabot[bot] in #1803
- Bump Microsoft.Extensions.Logging.Console from 10.0.7 to 10.0.8 by @dependabot[bot] in #1804
- Bump Microsoft.Extensions.FileSystemGlobbing from 10.0.7 to 10.0.8 by @dependabot[bot] in #1802
- Bump Microsoft.Extensions.DependencyModel from 10.0.7 to 10.0.8 by @dependabot[bot] in #1801
- Bump System.CommandLine from 2.0.7 to 2.0.8 by @dependabot[bot] in #1816
- Bump NuGet.Protocol and NuGet.Resolver by @dependabot[bot] in #1814
- Bump Microsoft.Extensions.TimeProvider.Testing from 10.5.0 to 10.6.0 by @dependabot[bot] in #1811
- Bump NuGet.ProjectModel from 7.3.1 to 7.6.0 by @dependabot[bot] in #1812
- Bump System.Management from 10.0.7 to 10.0.8 by @dependabot[bot] in #1817
- fix: avoid ObjectDisposedException on PlayerViewModel dispose by @yuto-trd in #1798
- fix: prevent index out-of-range when dragging gradient stops by @yuto-trd in #1799
- fix: protect output profiles from overwrite on restore failure by @yuto-trd in https://github...
v2.0.0-preview.3
日本語のリリースノートはこちらです。
What's Changed
- Windows
- macOS
- Linux
New Features
- Timeline
- Added Hold easing for step interpolation
- Extended timeline snap to include playhead position, scene bounds, and a toggle
- Added razor tool for splitting clips on the timeline
- Added scene timeline markers with navigation and an editing UI
- Editor
- Added Shift/Alt modifier support to number scrubbing for coarse and fine adjustment
- Added JKL shuttle playback controls and a loop toggle
- Added crash recovery prompt to restore the previous project on startup
- Export
- Added platform export presets for YouTube, X, Instagram, TikTok, and Discord
- Improved export progress display with estimated time remaining and frame count
- Color Scopes
- Added false color and zebra overlays to the color scopes tab
Improvements & Refactoring
- Optimized AVF Writer readiness polling with exponential back-off
Bug Fixes
- Audio
- Fixed IpcSampleProvider to prevent non-sequential chunk requests
- Fixed audio playback end time to correctly account for Scene.Start and Duration
- Fixed stereo layout and audio buffer ownership in AVF Writer
- Fixed AVF audio reader to prefer ASBD sample rate over natural time scale
- Cache
- Fixed FrameCacheManager size to update when MaxFrameSize changes
- Fixed cache size overflow when the panel size exceeds the frame dimensions
- Fixed MaxFrameSize to use physical pixels
- Export & Presets
- Fixed platform export preset deduplication across locale changes
- Fixed saved presets to be protected from overwrite when RestoreItems fails
- Fixed encoder selection by role to support video-only output formats
- Rendering & Graphics
- Fixed TextBlock property animation and default stroke TrimEnd behavior
- Fixed infinite loop and SKBitmap leaks in animated image readers
- Fixed FontManager dictionary access to be thread-safe and stopped leaking SKTypeface objects
- Project & Scene
- Fixed relative element path resolution to use the directory path in Scene
- Fixed JSON output to write atomically, preventing file corruption
- Fixed BackupConfig changes to persist correctly via ConfigurationChanged
- Fixed ViewConfig to tolerate missing recent file and project entries
- UI
- Fixed pointer event handler subscription imbalance in ElementView
- Fixed unintended layer move when clicking LayerHeader without dragging
- General
- Addressed multiple pre-release bugs in playback, cache, and export
Changelog
- feat: Add Hold easing for step interpolation by @yuto-trd in #1721
- feat: Add Shift/Alt modifiers to number scrub for coarse/fine adjustment by @yuto-trd in #1722
- feat: Extend timeline snap with playhead, scene bounds, and toggle by @yuto-trd in #1726
- feat: Add platform export presets for YouTube, X, Instagram, TikTok, Discord by @yuto-trd in #1723
- build: commit AVF dylibs and enable cross-platform access by @yuto-trd in #1727
- feat: improve export progress UX with ETA and frame count by @yuto-trd in #1728
- feat: add razor tool for splitting clips on the timeline by @yuto-trd in #1730
- feat: Add false color and zebra scopes to color scopes tab by @yuto-trd in #1729
- feat: Add crash recovery prompt to restore previous project by @yuto-trd in #1733
- fix: prevent IpcSampleProvider from issuing non-sequential chunk requests by @yuto-trd in #1732
- feat: add scene timeline markers with navigation and edit UI by @yuto-trd in #1731
- feat: Add JKL shuttle playback and loop toggle by @yuto-trd in #1734
- Bump Microsoft.NET.Test.Sdk from 18.4.0 to 18.5.1 by @dependabot[bot] in #1739
- Bump FFmpeg.AutoGen.Bindings.DynamicallyLoaded from 8.0.0.1 to 8.1.0 by @dependabot[bot] in #1738
- fix: Animate TextBlock properties and default stroke TrimEnd by @yuto-trd in #1740
- Bump NUnit from 4.5.1 to 4.6.0 by @dependabot[bot] in #1741
- fix: include Scene.Start in audio playback end time by @yuto-trd in #1743
- fix: update FrameCacheManager size when MaxFrameSize changes by @yuto-trd in #1744
- fix: align audio playback end time with Scene.Start + Duration by @yuto-trd in #1746
- fix: dedupe platform export presets across locale changes by @yuto-trd in #1745
- perf: back off exponentially in AVF Writer.waitUntilReady by @yuto-trd in #1747
- fix: address pre-release bugs in playback, cache, and export by @yuto-trd in #1748
- fix: use physical pixels for MaxFrameSize by @yuto-trd in #1749
- fix: silence audio samples beyond Scene.Start + Duration by @yuto-trd in #1750
- fix: restore Stereo layout and own audio buffer in AVF Writer by @yuto-trd in #1751
- fix: prevent cache size overflow when panel exceeds frame by @yuto-trd in #1752
- fix: protect saved presets from overwrite on RestoreItems failure by @yuto-trd in #1753
- fix: balance pointer event handler subscriptions in ElementView by @yuto-trd in #1755
- fix: skip layer move when LayerHeader is clicked without dragging by @yuto-trd in #1756
- fix: address encoders by role to support video-only output formats by @yuto-trd in #1757
- fix: use directory path for relative element resolution in Scene by @yuto-trd in #1758
- fix: tolerate missing recent file/project entries in ViewConfig by @yuto-trd in #1759
- fix: persist BackupConfig changes by hooking ConfigurationChanged by @yuto-trd in #1760
- fix: serialize FontManager dictionary access and stop leaking SKTypeface by @yuto-trd in #1761
- fix: write JSON output atomically to avoid corrupting saved files by @yuto-trd in #1763
- fix: prevent infinite loop and SKBitmap leaks in animated readers by @yuto-trd in #1754
- fix: prefer ASBD mSampleRate over naturalTimeScale in AVF audio reader by @yuto-trd in #1762
- Add Claude Code GitHub Workflow by @yuto-trd in #1764
- ci: auto-format release notes and post Japanese translation comment by @yuto-trd in #1765
Full Changelog: v2.0.0-preview.2...v2.0.0-preview.3
v2.0.0-preview.2
日本語のリリースノートはこちらです。
What's Changed
- Windows
- macOS
- Linux
New Features
- Audio
- Added audio visualizer drawable with FFT and waveform rendering
- Added waveform shapes and frequency scales to the visualizer
- Added audio visualizer tab with waveform, spectrum, and meter modes
- Added audio equalizer effect
- Editor
- Added object template system for saving and reusing objects
- Added copy-paste support for core objects in property editors
- Added file move via drag-and-drop in the file browser
- Added keyboard navigation to library item picker flyout
- Rendering
- Added color space selection to color scopes
- Added HDR support to the AVFoundation extension
Improvements & Refactoring
- Migrated dock layout to Dock.Avalonia
- Migrated PageExtension to ToolWindowExtension
- Rewrote the AVFoundation extension in Swift
- Optimized color scopes rendering
- Synchronized video playback to the audio clock
- Skip disabled elements in compositor and hit-testing
- Prevent MediaSource sharing between preview and encoder
- Standardized editor views with shared helper classes
- Split EditViewModel into focused services
- Extracted shared helpers to eliminate code duplication
- Localized ReferencedScene property on SceneSound and SceneDrawable
- Added missing libraries to SDK and updated namespace references
Changelog
- feat: add keyboard navigation to library item picker flyout by @yuto-trd in #1658
- feat: Migrate dock layout to Dock.Avalonia by @yuto-trd in #1657
- feat: Add copy-paste support for core objects in property editors by @yuto-trd in #1659
- feat: optimize color scopes rendering and add color space selection by @yuto-trd in #1660
- feat: Add object template system for saving and reusing objects by @yuto-trd in #1664
- feat: Add file move via drag-and-drop in file browser by @yuto-trd in #1665
- refactor: standardize editor views with shared helper classes by @yuto-trd in #1666
- refactor: split EditViewModel into focused services by @yuto-trd in #1667
- feat: synchronize video playback to audio clock by @yuto-trd in #1681
- refactor: extract shared helpers to eliminate code duplication by @yuto-trd in #1688
- feat: Migrate PageExtension to ToolWindowExtension by @yuto-trd in #1689
- feat: Skip disabled elements in compositor and hit-testing by @yuto-trd in #1690
- feat: Prevent MediaSource sharing between preview and encoder by @yuto-trd in #1693
- fix: Add missing libraries to SDK and update namespace references by @yuto-trd in #1695
- feat: Localize ReferencedScene property on SceneSound and SceneDrawable by @yuto-trd in #1696
- feat: Add audio visualizer drawable with FFT and waveform rendering by @yuto-trd in #1692
- feat: rewrite AVFoundation extension in Swift, add HDR support by @yuto-trd in #1697
- feat: Add waveform shapes and frequency scales to visualizer by @yuto-trd in #1712
- feat: Add audio visualizer tab with waveform, spectrum, and meter modes by @yuto-trd in #1691
- feat: implement audio equalizer effect by @yuto-trd in #1465
Full Changelog: v2.0.0-preview.1...v2.0.0-preview.2
v2.0.0-preview.1
日本語のリリースノートはこちらです。
What's Changed
Warning
Due to significant changes to the object model, basic projects can still be loaded, but some extensions will require updates.
Also, projects created in v2.x will no longer be loadable in v1.x.
Warning
The node tree feature in v1.x has been replaced by node graphs in v2.x. Please note that projects using node trees in v1.x will not be loaded in v2.x.
Warning
When you open a project created in v1.x, all tool tabs will be hidden. To re-display each tab, click "Timeline," "Output," "Element Property," "Library," and "File Browser" from "View > Tools" in the Window menu.
- Windows
- macOS
- Linux
New Features
- Effects
- Added PathFollowEffect
- Added color grading effects
- Added GLSL / SKSL / C# script effects
- Added PixelSort effect
- Added channel selection, signed mode, and Decal spread to Displacement Map effect
- Added Delay Animation effect
- Added node graph effect
- Objects
- Added a Time Controller for controlling the time of drawing objects
- Added Trim and Offset properties to stroke properties
- Added an object that allows scenes to be called from other scenes
- Added speed/loop properties to video objects
- Added Particle Emitter
- Added 3D Scene
- Added node graphs for use as drawing objects
- Added Presenter objects that reference other objects for drawing objects, brushes, transforms, and effects
- Added C# Expression functionality to each property
- Implemented grouping and ungrouping of timeline elements
- Added thumbnails to timeline elements (video/audio)
- Implemented interactive tutorials
- Added BPM grid to timeline and graph editor
- Visualized easing functions on the timeline
- Implemented automatic scrolling mode settings for the timeline
- Added update notifications for extensions
- Implemented pointer lock and color dropper for macOS
- Automatically expand properties when adding effects
- Added a setting to limit resizing of timeline elements to the original video length
- Added project export/import functionality
- Runtime installation/uninstallation of extensions
- Partial support for encoding, decoding, and previewing HDR videos (HDR10, HLG)
Improvements & Refactoring
- Integrated Vulkan backend and added 3D rendering capabilities
- Replaced FFmpeg.AutoGen with FFmpeg4Sharp, adding hardware decoding support
- Replaced codes using cvFindContours with a proprietary ContourTracer
- Reimplemented NodeTree system and changed to NodeGraph (snapshot-based evaluation)
- Abolished SourceOperator / SourceOperation layers and transitioned to direct ownership by EngineObject
- Abolished RenderNodeCacheContext and replaced with static RenderNodeCacheHelper
- Deleted Beutl.Operators project
- Automatically tracks property changes and records history
- Implemented chunk-based sample/frame generation
- Introduced ComposeThread for audio synthesis
- Separated control styles and behaviors into separate files
- Re-resolved extension dependencies when Beutl version changes
- Added fallback object handling for unknown types during deserialization
- Removed OpenCV from dependencies
- Modified FFmpeg to operate via IPC
Changelog
- [Breaking Change] New Rendering Property System by @yuto-trd in #1407
- Enhance CoreObject Serialization with Uri Property and Adjust Serialization Modes by @yuto-trd in #1425
- Add missing project reference by @yuto-trd in #1428
- Implement the PathFollowEffect by @yuto-trd in #1427
- Add expression support across properties by @Copilot in #1432
- Add expression support across properties by @yuto-trd in #1431
- Deprecate CreateEffectNode and replace with CreateNode for audio effects by @yuto-trd in #1434
- fix: moved the OffsetPosition property to the Sound class to work correctly by @yuto-trd in #1433
- Introduce ComposeThread for improved audio composition handling by @yuto-trd in #1435
- Fix URI path handling for encoded characters by @yuto-trd in #1437
- Add grouping and ungrouping functionality for elements by @yuto-trd in #1438
- Add element preview (images/videos/audio), video speed/loop props, and preview toggle by @yuto-trd in #1436
- Implement chunked sample and frame generation with threading by @yuto-trd in #1439
- Integrate Vulkan support by @yuto-trd in #1445
- Add Beutl.Editor project with core editor functionality by @yuto-trd in #1440
- Optimize property tracking with CorePropertyOperationObserver by @yuto-trd in #1447
- Add Color Grading effect with customizable properties by @yuto-trd in #1442
- Add localization support for UI strings and messages by @yuto-trd in #1449
- Refactor media source handling to improve resource management by @yuto-trd in #1450
- Enhance serialization for time anchor properties in EngineObject by @yuto-trd in #1451
- TreeLineDecorator control for enhanced editor layout by @yuto-trd in #1452
- Add SimplePropertyAdapter for expression handling by @yuto-trd in #1453
- feat: add SKSLScriptEffect and CSharpScriptEffect filter effects by @yuto-trd in #1456
- Add localized display names for various effects and segments by @yuto-trd in #1457
- Add null check for hierarchical root in auto-save logic by @yuto-trd in #1458
- feat: implement Presenter classes for weak references by @yuto-trd in #1454
- Add Display attribute to IProperty properties by @yuto-trd in #1464
- feat: smooth speed animation for SourceVideo by @yuto-trd in #1463
- Add Vulkan backend for 3D rendering with advanced features by @yuto-trd in #1446
- fix: re-check operation queue before waiting in QueueSynchronizationContext by @yuto-trd in #1469
- feat: optimize thumbnail and waveform rendering by skipping offscreen elements by @yuto-trd in #1470
- feat: add PresenterType attribute to base classes by @yuto-trd in #1471
- refactor: use LibraryItemPickerFlyout for type selection by @yuto-trd in #1472
- feat: add references tab to LibraryItemPickerFlyout by @yuto-trd in #1473
- feat: add file browser tab with tooltip and localization by @yuto-trd in #1474
- feat: expand Add Element menu to collapsible submenu by @yuto-trd in #1476
- feat: add DrawableTimeController and extract SpeedIntegrator by @yuto-trd in #1475
- feat: Add project export/import functionality by @yuto-trd in #1467
- feat: Change LutEffect.Source type to CubeSource by @yuto-trd in #1477
- Move primitive implementations to Beutl.Editor.Components by @yuto-trd in #1481
- Add GLSL Script Effect support by @yuto-trd in #1478
- refactor: Replace FFmpeg.AutoGen with FFmpeg4Sharp in FFmpegReader and add hardware decoding support by @yuto-trd in #1480
- Add script error editor UI for script effects by @yuto-trd in #1482
- refactor: reimplement NodeTree system by @yuto-trd in #1483
- refactor: separate NodeTree data from rendering with snapshot-based evaluation by @yuto-trd in #1484
- feat: Automatically expand properties when adding effects by @yuto-trd in #1485
- feat: Limit timeline resizing to prevent exceeding original media length by @yuto-trd in #1488
- feat: implement NodeTreeDrawable and refactor NodeTree rendering by @yuto-trd in #1490
...
v1.1.0
What's Changed
- fix: Windowsでのアップデートスクリプトの拡張子を修正 by @yuto-trd in #1404
- Update Avalonia packages and migrate by @yuto-trd in #1405
- build(deps): bump github/codeql-action from 3 to 4 by @dependabot[bot] in #1406
- アニメーションタブのカラースキームの変更とキーフレーム操作を改善 by @yuto-trd in #1411
- fix: handle null sound source by clearing audio context by @yuto-trd in #1410
- Remove Claude Code Review workflow and update dotnet format command by @yuto-trd in #1413
- build(deps): bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in #1408
- build(deps): bump actions/download-artifact from 5 to 6 by @dependabot[bot] in #1409
- feat: update OpenTelemetry dependencies and configuration by @yuto-trd in #1414
- build(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #1412
- fix: add validation range for Gain and Speed properties by @yuto-trd in #1415
- fix: handle multiple selected elements in animation submission logic by @yuto-trd in #1416
- fix: update AVFoundation encoding methods to handle CoreMedia library loading and memory management by @yuto-trd in #1417
- Migrate project to .NET 10.0 and switch package retrieval to Observable by @yuto-trd in #1419
- Upgrade Avalonia packages and enhance drag-and-drop functionality by @yuto-trd in #1418
- Add GitHub workflows for building packages and installers by @yuto-trd in #1420
- Update FFmpeg package references and improve code consistency by @yuto-trd in #1422
- Add FFmpeg installation dialog and service by @yuto-trd in #1421
Full Changelog: v1.0.7...v1.1.0
v1.0.7
What's Changed
- Add Display Attribute to Extensions by @Lighthigh57 in #1368
- Add Display Attribute to Drawable by @sasakirione in #1370
- Refactor code for improved clarity and consistency by @yuto-trd in #1371
- Shiftキーを押しながらキーフレームを一括移動できるようにした by @yuto-trd in #1369
- fix: add serialization and deserialization for Codec in FFmpegAudioEncoderSettings by @yuto-trd in #1372
- fix: improve encoding settings handling when renaming files by @yuto-trd in #1373
- Add output preset management features by @yuto-trd in #1377
- fix: "Change to original length" will not consider speed property #1364 by @AioiLight in #1380
- Add configurable scene start time and timeline support by @yuto-trd in #1381
- Add smoothness property to threshold effect for enhanced rendering by @yuto-trd in #1384
- fix: update installer to support x64 architecture installation by @yuto-trd in #1387
- feat: Implement new graph-based Audio API by @yuto-trd in #1389
- build(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #1395
- chore(deps): bump actions/download-artifact from 4 to 5 by @dependabot[bot] in #1393
- build(deps): bump actions/setup-dotnet from 4 to 5 by @dependabot[bot] in #1396
- build(deps): bump System.Management from 9.0.0 to 9.0.4 by @dependabot[bot] in #1348
- build(deps): bump Microsoft.Windows.CsWin32 from 0.3.106 to 0.3.183 by @dependabot[bot] in #1316
- build(deps): bump ILGPU from 1.5.1 to 1.5.2 by @dependabot[bot] in #1306
- Update resampling logic and sample rate handling by @yuto-trd in #1397
- Add Claude Code GitHub Workflow by @yuto-trd in #1399
- build(deps): bump actions/github-script from 7 to 8 by @dependabot[bot] in #1398
- build(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #1400
- Add copy, paste, and delete functionality for keyframes in animation layer by @yuto-trd in #1388
- タイムライン操作の改善 by @yuto-trd in #1401
New Contributors
- @Lighthigh57 made their first contribution in #1368
- @sasakirione made their first contribution in #1370
- @AioiLight made their first contribution in #1380
Full Changelog: v1.0.6...v1.0.7
v1.0.6
What's Changed
- Fix resource management in rendering process by @yuto-trd in #1334
- Use SKSurface for clipping instead of SKImage by @yuto-trd in #1336
- Fix issue where keymap settings were not properly overridden by @yuto-trd in #1337
- Fix message key for application launch prompt in win-update.ps1 by @yuto-trd in #1339
- feat: ループ機能の追加 by @hashrock in #1347
- feat(timeline): add a marker to tweak ending bar position by @hashrock in #1351
- fix: clip for text block in ElementView.axaml by @yuto-trd in #1353
- fix: adjust zoom functionality to maintain offset in Timeline view by @yuto-trd in #1355
- Implement SKSL shader for some effects by @yuto-trd in #1346
- Enhance Extension class with DisplayName property and update bindings by @yuto-trd in #1356
New Contributors
📥 Installation
Refer to the documentation here.
Full Changelog: v1.0.5...v1.0.6
v1.0.5
What's Changed
- fix: handle invalid rectangles in Bounds calculation for DrawableGroup and Shape by @yuto-trd in #1304
- build(deps): bump NUnit3TestAdapter from 4.6.0 to 5.0.0 by @dependabot in #1288
- build(deps): bump Microsoft.NET.Test.Sdk from 17.12.0 to 17.13.0 by @dependabot in #1291
- build(deps): bump Microsoft.Extensions.DependencyModel from 9.0.0 to 9.0.3 by @dependabot in #1296
- build(deps): bump Microsoft.Extensions.DependencyInjection, Microsoft.Extensions.Logging, OpenTelemetry and OpenTelemetry.Exporter.Zipkin by @dependabot in #1293
- build(deps): bump Microsoft.Extensions.Logging.Console from 9.0.0 to 9.0.3 by @dependabot in #1295
- build(deps): bump NuGet.Protocol and NuGet.Resolver by @dependabot in #1309
- build(deps): bump Microsoft.Extensions.FileSystemGlobbing from 9.0.0 to 9.0.3 by @dependabot in #1310
- build(deps): bump Roslynator.Analyzers from 4.12.10 to 4.13.1 by @dependabot in #1311
- build(deps): bump Microsoft.Extensions.DependencyInjection, Microsoft.Extensions.Logging, OpenTelemetry and OpenTelemetry.Exporter.Console by @dependabot in #1312
- build(deps): bump Microsoft.Extensions.TimeProvider.Testing from 9.0.0 to 9.3.0 by @dependabot in #1313
- fix: Remove IEquatable implementation from Brush class to fix property update issue by @yuto-trd in #1303
- fix: prevent occasional playback of the initial part during audio playback by @yuto-trd in #1319
- fix: Improve path resolving for linux by @turtton in #1318
- fix: update view models to check for disposal state before accessing … by @yuto-trd in #1320
- Improve resource management and disposal tracking in view models by @yuto-trd in #1321
- Allow extension installation without an account by @yuto-trd in #1322
- Improve frame number calculation and fix preview playback timing issue by @yuto-trd in #1323
New Contributors
Full Changelog: v1.0.4...v1.0.5
📥 Installation
Refer to the documentation here.