@@ -16,6 +16,8 @@ import { useMediaStore } from "@/stores/media-store";
1616import  {  useProjectStore  }  from  "@/stores/project-store" ; 
1717import  {  DEFAULT_FPS  }  from  "@/stores/project-store" ; 
1818import  {  ExportOptions ,  ExportResult  }  from  "@/types/export" ; 
19+ import  {  TimelineTrack  }  from  "@/types/timeline" ; 
20+ import  {  MediaFile  }  from  "@/types/media" ; 
1921
2022export  const  DEFAULT_EXPORT_OPTIONS : ExportOptions  =  { 
2123  format : "mp4" , 
@@ -40,8 +42,8 @@ interface AudioElement {
4042} 
4143
4244async  function  createTimelineAudioBuffer ( 
43-   tracks : any [ ] , 
44-   mediaFiles : any [ ] , 
45+   tracks : TimelineTrack [ ] , 
46+   mediaFiles : MediaFile [ ] , 
4547  duration : number , 
4648  sampleRate : number  =  44100 
4749) : Promise < AudioBuffer  |  null >  { 
@@ -51,15 +53,15 @@ async function createTimelineAudioBuffer(
5153
5254  // Collect all audio elements from timeline 
5355  const  audioElements : AudioElement [ ]  =  [ ] ; 
54-   const  mediaMap  =  new  Map ( mediaFiles . map ( ( m )  =>  [ m . id ,  m ] ) ) ; 
56+   const  mediaMap  =  new  Map < string ,   MediaFile > ( mediaFiles . map ( ( m )  =>  [ m . id ,  m ] ) ) ; 
5557
5658  for  ( const  track  of  tracks )  { 
5759    if  ( track . muted )  continue ; 
5860
5961    for  ( const  element  of  track . elements )  { 
6062      if  ( element . type  !==  "media" )  continue ; 
6163
62-       const  mediaItem  =  mediaMap . get ( element . mediaId ) ; 
64+       const  mediaItem  =  element . type   ===   "media"  ?  mediaMap . get ( element . mediaId )  :  null ; 
6365      if  ( ! mediaItem  ||  mediaItem . type  !==  "audio" )  continue ; 
6466
6567      const  visibleDuration  = 
0 commit comments