@stacksjs/bun-router 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-03m2j6h7.js +2 -0
- package/dist/chunk-08cw7ejr.js +3 -0
- package/dist/chunk-0e4g0fyv.js +62 -0
- package/dist/chunk-0mmn02yw.js +2 -0
- package/dist/chunk-126c9qm3.js +2 -0
- package/dist/chunk-12p13817.js +2 -0
- package/dist/chunk-14v65c37.js +4 -0
- package/dist/{chunk-s3dn1kwx.js → chunk-1b6a7t3v.js} +2 -2
- package/dist/chunk-1wenkmk0.js +2 -0
- package/dist/chunk-2152npfd.js +2 -0
- package/dist/chunk-26w23krx.js +2 -0
- package/dist/chunk-2g8m379z.js +10 -0
- package/dist/{chunk-5mxby3fd.js → chunk-2rr178et.js} +2 -2
- package/dist/chunk-2w8f3swz.js +29 -0
- package/dist/chunk-3y4gaz7v.js +82 -0
- package/dist/chunk-4r1x4afz.js +12 -0
- package/dist/chunk-4wyw66zk.js +2 -0
- package/dist/chunk-4z5sf8ag.js +2 -0
- package/dist/{chunk-krkchy8v.js → chunk-58tfvayh.js} +3 -3
- package/dist/{chunk-ex5fkjah.js → chunk-5dp83qcx.js} +43 -43
- package/dist/chunk-5f0d9j9a.js +2 -0
- package/dist/{chunk-zhx0hxdd.js → chunk-5z52b0fc.js} +7 -7
- package/dist/{chunk-kc659vhx.js → chunk-5zrnk2kq.js} +3 -3
- package/dist/chunk-6dmqtdnq.js +2 -0
- package/dist/{chunk-5s1pr62n.js → chunk-6e91956t.js} +2 -2
- package/dist/{chunk-jrf5a2ap.js → chunk-6rv8w5jk.js} +1 -1
- package/dist/{chunk-5n0ckcmc.js → chunk-6x1feysm.js} +2 -2
- package/dist/chunk-7y72hm1x.js +2 -0
- package/dist/{chunk-zetqzgf3.js → chunk-8hbhfh6b.js} +6 -6
- package/dist/{chunk-5ncn73tp.js → chunk-8kfzygg5.js} +2 -2
- package/dist/chunk-8wydx2we.js +2 -0
- package/dist/chunk-8zjnjvv7.js +2 -0
- package/dist/chunk-988h4bzr.js +2 -0
- package/dist/chunk-9b6a58ac.js +2 -0
- package/dist/chunk-a8fcaywb.js +2 -0
- package/dist/chunk-bfjwn7yg.js +2 -0
- package/dist/chunk-bp2522mm.js +2 -0
- package/dist/chunk-bswe62q4.js +48 -0
- package/dist/chunk-c3v796c8.js +943 -0
- package/dist/chunk-ccqmwdry.js +2 -0
- package/dist/chunk-ck0crwnx.js +2 -0
- package/dist/chunk-cqgkxcb4.js +2 -0
- package/dist/chunk-dntnakjy.js +2 -0
- package/dist/{chunk-67wgad4f.js → chunk-ettdpnrw.js} +2 -2
- package/dist/{chunk-csfrpsp7.js → chunk-ezqwq17j.js} +10 -10
- package/dist/chunk-ezx3qsez.js +2 -0
- package/dist/{chunk-73k79n7q.js → chunk-f72nnjy4.js} +360 -360
- package/dist/chunk-fna5n0ey.js +246 -0
- package/dist/chunk-fqhckdt8.js +2 -0
- package/dist/chunk-fr6hbx25.js +2 -0
- package/dist/{chunk-vr10sbbh.js → chunk-g9cwng6w.js} +1 -1
- package/dist/chunk-gd3za5x0.js +2 -0
- package/dist/chunk-gf28608k.js +2 -0
- package/dist/chunk-h1dj6v8q.js +3 -0
- package/dist/chunk-hjxe7k2g.js +2 -0
- package/dist/chunk-hrkgznbn.js +2 -0
- package/dist/chunk-j6h5v0br.js +2 -0
- package/dist/{chunk-0gjq8ttx.js → chunk-mgb01qdv.js} +2 -2
- package/dist/chunk-n24c9whp.js +2 -0
- package/dist/{chunk-kxp888dn.js → chunk-n2j24b0h.js} +244 -244
- package/dist/{chunk-vv3gb1m5.js → chunk-nhmtg01n.js} +2 -2
- package/dist/chunk-p0qhpnqh.js +70 -0
- package/dist/chunk-p0w1x8y2.js +3 -0
- package/dist/{chunk-9ght4n4r.js → chunk-p3dk1w2w.js} +11 -11
- package/dist/{chunk-6sjvhy5f.js → chunk-q4e9pxs7.js} +2 -2
- package/dist/chunk-q5dv1kyy.js +2 -0
- package/dist/chunk-qnqgf9tq.js +2 -0
- package/dist/chunk-qvwy1808.js +898 -0
- package/dist/{chunk-5s0pnsd6.js → chunk-r18f77vc.js} +4 -4
- package/dist/chunk-r63za1mr.js +2 -0
- package/dist/{chunk-6s1kbajm.js → chunk-rft8gw92.js} +1 -1
- package/dist/chunk-ryvmyskt.js +4211 -0
- package/dist/chunk-sa6mx308.js +2 -0
- package/dist/chunk-va0pc7hx.js +2 -0
- package/dist/chunk-vcp8dnjq.js +412 -0
- package/dist/chunk-vg1erq1q.js +2 -0
- package/dist/{chunk-hmgedrmr.js → chunk-w0jv49ch.js} +3 -3
- package/dist/{chunk-0t5vz87j.js → chunk-wm805tte.js} +19 -19
- package/dist/chunk-xj9h6mc9.js +2 -0
- package/dist/chunk-ytvzwrq3.js +51 -0
- package/dist/{chunk-w4r464v5.js → chunk-zde7ebc4.js} +2 -2
- package/dist/chunk-zmqsv2xy.js +2 -0
- package/dist/cli.js +57 -66
- package/dist/container/index.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +29 -29
- package/dist/typed/client.d.ts +89 -0
- package/dist/typed/contract.d.ts +34 -0
- package/dist/typed/endpoint.d.ts +90 -0
- package/dist/typed/index.d.ts +14 -0
- package/dist/typed/router.d.ts +141 -0
- package/package.json +1 -1
- package/dist/chunk-30rkn2ym.js +0 -2
- package/dist/chunk-38cmrard.js +0 -2
- package/dist/chunk-3qna6dwd.js +0 -2
- package/dist/chunk-4d5fmta0.js +0 -2
- package/dist/chunk-4x3b4b4q.js +0 -2
- package/dist/chunk-6xed4va1.js +0 -2
- package/dist/chunk-748n6ydj.js +0 -2
- package/dist/chunk-7rsf8tes.js +0 -898
- package/dist/chunk-8aspmtf1.js +0 -2
- package/dist/chunk-8yfdg595.js +0 -2
- package/dist/chunk-90eze7av.js +0 -3
- package/dist/chunk-9dvwyej7.js +0 -2
- package/dist/chunk-a2w45krb.js +0 -2
- package/dist/chunk-a547f2ab.js +0 -48
- package/dist/chunk-bqdycvtc.js +0 -2
- package/dist/chunk-cd03rk3x.js +0 -2
- package/dist/chunk-ct0m17q5.js +0 -2
- package/dist/chunk-dhbvvr5h.js +0 -2
- package/dist/chunk-dhptcsya.js +0 -943
- package/dist/chunk-dq93zag9.js +0 -2
- package/dist/chunk-edrtesh7.js +0 -2
- package/dist/chunk-ejcws37w.js +0 -2
- package/dist/chunk-ex890p45.js +0 -51
- package/dist/chunk-f69cpnhw.js +0 -2
- package/dist/chunk-fjf53b44.js +0 -2
- package/dist/chunk-fjzye4qj.js +0 -2
- package/dist/chunk-gfd23b6t.js +0 -2
- package/dist/chunk-habv0vef.js +0 -12
- package/dist/chunk-hz6fc788.js +0 -2
- package/dist/chunk-jff6j9y3.js +0 -10
- package/dist/chunk-jmeb7n8k.js +0 -70
- package/dist/chunk-jy2jhcpy.js +0 -246
- package/dist/chunk-m249t3je.js +0 -3
- package/dist/chunk-m9yabnjx.js +0 -2
- package/dist/chunk-mekrq9wd.js +0 -2
- package/dist/chunk-mmxv535f.js +0 -82
- package/dist/chunk-mypn7jss.js +0 -2
- package/dist/chunk-n18x1k3c.js +0 -2
- package/dist/chunk-nkddjzsa.js +0 -2
- package/dist/chunk-pjmhqmr9.js +0 -2
- package/dist/chunk-qyrnsaq1.js +0 -2
- package/dist/chunk-r19ff2qm.js +0 -62
- package/dist/chunk-r338fssq.js +0 -2
- package/dist/chunk-s36z58x2.js +0 -29
- package/dist/chunk-s79dd325.js +0 -471
- package/dist/chunk-ta38j9em.js +0 -2
- package/dist/chunk-tpfgntwj.js +0 -4211
- package/dist/chunk-vw8rwv6e.js +0 -2
- package/dist/chunk-wcrqs5z9.js +0 -2
- package/dist/chunk-x6d1rmwa.js +0 -2
- package/dist/chunk-x7ft15zz.js +0 -2
- package/dist/chunk-x8trwn7j.js +0 -3
- package/dist/chunk-xhepdj1f.js +0 -2
- package/dist/chunk-xv2em0q4.js +0 -4
- package/dist/chunk-ypw6g0te.js +0 -2
- package/dist/chunk-z8szsm21.js +0 -2
- package/dist/chunk-zfbh14qe.js +0 -2
- /package/dist/{chunk-a3wahyg7.js → chunk-nf3kv7kv.js} +0 -0
package/dist/chunk-s36z58x2.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import{Fu as x,Ku as B,Lu as k,Mu as O,Nu as U}from"./chunk-5n0ckcmc.js";import{Zu as H}from"./chunk-a3wahyg7.js";import{resolve as Y,basename as oe,extname as ce,join as de}from"path";import{mkdir as ue}from"fs/promises";var ae={enabled:!0,directory:".stx/media-cache",maxAge:30,maxSize:2000,cacheTranscoded:!0,cacheThumbnails:!0,cacheManifests:!0};class T{config;constructor(t={}){this.config={...ae,...t}}async get(t,e){return k(t,e,"video",this.config)}async set(t,e,a){return O(t,e,a,"video",this.config)}async clear(){return U("video",this.config)}updateConfig(t){this.config={...this.config,...t}}}var C=null;function V(t){if(!C)C=new T(t);else if(t)C.updateConfig(t);return C}async function D(t,e,a){let n=a?{directory:`${a.outputDir}/../.cache`}:{};return V(n).get(t,e)}async function M(t,e,a,n){let u=n?{directory:`${n.outputDir}/../.cache`}:{};return V(u).set(t,e,a)}async function ie(){return V().clear()}import{resolve as A,basename as I,extname as F,join as R}from"path";import{mkdir as W}from"fs/promises";async function q(){try{return await import("ts-videos")}catch{return null}}async function L(t,e,a,n){let u=await q();if(!u)return console.warn("[stx-media] ts-videos not installed, cannot generate poster"),null;try{let r=A(t);if(!await B(r))return null;await W(a,{recursive:!0});let i=await x(r),o=I(t,F(t)),s=e.format||"webp",h=e.timestamp||0,p=`${o}-poster-${i}.${s}`,l=R(a,p),m=await u.extractThumbnails(r,{timestamps:[h],width:e.width||1280,height:e.height,format:s,quality:e.quality||85,outputDir:a,outputPattern:p.replace(`.${s}`,"")});if(m&&m.length>0){let c=m[0];return{path:l,url:`${n}/${p}`,width:c.width||e.width||1280,height:c.height||720,timestamp:h,size:c.size||0}}return null}catch(r){return console.warn(`[stx-media] Failed to generate poster: ${r}`),null}}async function z(t,e,a,n){let u=await q();if(!u)return[];try{let r=A(t);if(!await B(r))return[];await W(a,{recursive:!0});let i=await x(r),o=I(t,F(t)),s=e.format||"webp",h=(await new u.Input(r).getInfo()).duration||60,p=e.count||10,l=e.interval||h/p,m=[];for(let d=0;d<p&&d*l<h;d++)m.push(d*l);let c=await u.extractThumbnails(r,{timestamps:m,width:e.width||320,format:s,quality:e.quality||80,outputDir:a,outputPattern:`${o}-thumb-${i}`});if(c&&c.length>0)return c.map((d,f)=>({path:d.path||R(a,`${o}-thumb-${i}-${f}.${s}`),url:`${n}/${o}-thumb-${i}-${f}.${s}`,width:d.width||e.width||320,height:d.height||180,timestamp:m[f],size:d.size||0}));return[]}catch(r){return console.warn(`[stx-media] Failed to generate thumbnails: ${r}`),[]}}async function re(t,e,a,n){let u=await q();if(!u)return console.warn("[stx-media] ts-videos not installed, cannot generate sprite sheet"),null;try{let r=A(t);if(!await B(r))return null;await W(a,{recursive:!0});let i=await x(r),o=I(t,F(t)),s=(await new u.Input(r).getInfo()).duration||60,h=e.columns||10,p=e.interval||5,l=e.thumbnailWidth||160,m=e.thumbnailHeight||90,c=e.format||"jpeg",d=Math.ceil(s/p),f=Math.ceil(d/h),b=`${o}-sprite-${i}.${c}`,w=R(a,b),y=[];for(let $=0;$<d;$++)y.push($*p);let g=await u.extractThumbnails(r,{timestamps:y,width:l,height:m,format:c,quality:e.quality||70,outputDir:R(a,".temp")});if(!g||g.length===0)return null;try{let $=await import("./chunk-gfd23b6t.js"),v=h*l,ge=f*m,pe=await $.createSprite({images:g.map((te)=>te.path),columns:h,padding:0,outputPath:w,format:c,quality:e.quality||70});return{url:`${n}/${b}`,path:w,columns:h,rows:f,thumbnailWidth:l,thumbnailHeight:m,interval:p,totalFrames:d}}catch{return console.warn("[stx-media] ts-images not installed, sprite sheet generation skipped"),null}}catch(r){return console.warn(`[stx-media] Failed to generate sprite sheet: ${r}`),null}}import{resolve as Q,basename as X,extname as _,join as S}from"path";import{mkdir as P,writeFile as G}from"fs/promises";async function J(){try{return await import("ts-videos")}catch{return null}}var K=[{label:"1080p",width:1920,height:1080,bitrate:5000000,audioBitrate:192000},{label:"720p",width:1280,height:720,bitrate:2500000,audioBitrate:128000},{label:"480p",width:854,height:480,bitrate:1e6,audioBitrate:96000},{label:"360p",width:640,height:360,bitrate:600000,audioBitrate:64000}];async function E(t,e,a,n,u){let r=await J();if(!r)return console.warn("[stx-media] ts-videos not installed, cannot generate HLS manifest"),null;try{let i=Q(t);if(!await B(i))return null;let o=await x(i),s=X(t,_(t)),h=S(a,`${s}-${o}-hls`);await P(h,{recursive:!0});let p=e.length>0?e:K,l=u?.segmentDuration||6,m=(await new r.Input(i).getInfo()).duration||0,c=[],d=0;for(let w of p){let y=S(h,w.label);await P(y,{recursive:!0});let g=`${w.label}.m3u8`,$=S(y,g);try{let v=await r.generateHLS(i,{outputDir:y,segmentDuration:l,width:w.width,height:w.height,videoBitrate:w.bitrate,audioBitrate:w.audioBitrate,playlistName:w.label});if(v)c.push({quality:w,url:`${n}/${s}-${o}-hls/${w.label}/${g}`,path:$}),d+=v.segmentCount||Math.ceil(m/l)}catch(v){console.warn(`[stx-media] Failed to generate HLS for ${w.label}: ${v}`)}}if(c.length===0)return null;let f=S(h,"master.m3u8"),b=ne(c,n,s,o);return await G(f,b),{manifestUrl:`${n}/${s}-${o}-hls/master.m3u8`,manifestPath:f,playlists:c,segmentCount:d,duration:m}}catch(i){return console.warn(`[stx-media] Failed to generate HLS manifest: ${i}`),null}}function ne(t,e,a,n){let u=["#EXTM3U","#EXT-X-VERSION:3"];for(let r of t){let{quality:i}=r,o=i.bitrate+(i.audioBitrate||128000),s=`${i.width}x${i.height||Math.round(i.width*9/16)}`;u.push(`#EXT-X-STREAM-INF:BANDWIDTH=${o},RESOLUTION=${s},NAME="${i.label}"`,`${i.label}/${i.label}.m3u8`)}return u.join(`
|
|
3
|
-
`)}async function j(t,e,a,n,u){let r=await J();if(!r)return console.warn("[stx-media] ts-videos not installed, cannot generate DASH manifest"),null;try{let i=Q(t);if(!await B(i))return null;let o=await x(i),s=X(t,_(t)),h=S(a,`${s}-${o}-dash`);await P(h,{recursive:!0});let p=e.length>0?e:K,l=u?.segmentDuration||4,m=u?.minBufferTime||2,c=(await new r.Input(i).getInfo()).duration||0,d=[],f=[];for(let g of p){let $=S(h,g.label);await P($,{recursive:!0});try{if(await r.generateDASH(i,{outputDir:$,segmentDuration:l,width:g.width,height:g.height,videoBitrate:g.bitrate,audioBitrate:g.audioBitrate})){if(d.push({bandwidth:g.bitrate,width:g.width,height:g.height||Math.round(g.width*9/16),url:`${n}/${s}-${o}-dash/${g.label}/video`}),g.audioBitrate)f.push({bandwidth:g.audioBitrate,url:`${n}/${s}-${o}-dash/${g.label}/audio`})}}catch(v){console.warn(`[stx-media] Failed to generate DASH for ${g.label}: ${v}`)}}if(d.length===0)return null;let b=S(h,"manifest.mpd"),w=se(d,f,c,l,m);await G(b,w);let y=[{type:"video",representations:d}];if(f.length>0)y.push({type:"audio",representations:f});return{manifestUrl:`${n}/${s}-${o}-dash/manifest.mpd`,manifestPath:b,adaptationSets:y,duration:c}}catch(i){return console.warn(`[stx-media] Failed to generate DASH manifest: ${i}`),null}}function se(t,e,a,n,u){let r=N(a),i=N(u),o=`<?xml version="1.0" encoding="UTF-8"?>
|
|
4
|
-
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
|
|
5
|
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
6
|
-
xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
|
|
7
|
-
type="static"
|
|
8
|
-
mediaPresentationDuration="${r}"
|
|
9
|
-
minBufferTime="${i}"
|
|
10
|
-
profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">
|
|
11
|
-
<Period>
|
|
12
|
-
<AdaptationSet mimeType="video/mp4" codecs="avc1.64001f" segmentAlignment="true" startWithSAP="1">
|
|
13
|
-
`;for(let s=0;s<t.length;s++){let h=t[s];o+=` <Representation id="video${s}" bandwidth="${h.bandwidth}" width="${h.width}" height="${h.height}">
|
|
14
|
-
<BaseURL>${h.url}/</BaseURL>
|
|
15
|
-
<SegmentBase indexRange="0-999">
|
|
16
|
-
<Initialization range="0-999"/>
|
|
17
|
-
</SegmentBase>
|
|
18
|
-
</Representation>
|
|
19
|
-
`}if(o+=` </AdaptationSet>
|
|
20
|
-
`,e.length>0){o+=` <AdaptationSet mimeType="audio/mp4" codecs="mp4a.40.2" segmentAlignment="true" startWithSAP="1">
|
|
21
|
-
`;for(let s=0;s<e.length;s++){let h=e[s];o+=` <Representation id="audio${s}" bandwidth="${h.bandwidth}">
|
|
22
|
-
<BaseURL>${h.url}/</BaseURL>
|
|
23
|
-
<SegmentBase indexRange="0-999">
|
|
24
|
-
<Initialization range="0-999"/>
|
|
25
|
-
</SegmentBase>
|
|
26
|
-
</Representation>
|
|
27
|
-
`}o+=` </AdaptationSet>
|
|
28
|
-
`}return o+=` </Period>
|
|
29
|
-
</MPD>`,o}function N(t){let e=Math.floor(t/3600),a=Math.floor(t%3600/60),n=Math.floor(t%60),u="PT";if(e>0)u+=`${e}H`;if(a>0)u+=`${a}M`;return u+=`${n}S`,u}async function Z(){try{return await import("ts-videos")}catch{return null}}function he(t){switch(t){case"very-low":return 500000;case"low":return 1e6;case"medium":return 2500000;case"high":return 5000000;case"very-high":return 1e7;case"lossless":return 0;default:return 2500000}}function le(t){switch(t){case"youtube":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};case"twitter":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"instagram-feed":return{codec:"h264",maxWidth:1080,maxHeight:1080,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"instagram-story":case"instagram-reels":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:3500000,audioCodec:"aac",audioBitrate:128000};case"tiktok":return{codec:"h264",maxWidth:1080,maxHeight:1920,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"discord":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:60,bitrate:8000000,audioCodec:"aac",audioBitrate:192000};case"linkedin":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,bitrate:5000000,audioCodec:"aac",audioBitrate:128000};case"facebook":return{codec:"h264",maxWidth:1280,maxHeight:720,frameRate:30,bitrate:4000000,audioCodec:"aac",audioBitrate:128000};case"web-progressive":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000,twoPass:!0};case"web-streaming":return{codec:"h264",maxWidth:1920,maxHeight:1080,frameRate:30,audioCodec:"aac",audioBitrate:128000};default:return{}}}async function ee(t){let e=await Z();if(!e)return null;try{let a=Y(t),n=await new e.Input(a).getInfo();return{duration:n.duration||0,width:n.width||0,height:n.height||0,frameRate:n.frameRate||0,bitrate:n.bitrate||0,codec:n.videoCodec||"",audioCodec:n.audioCodec}}catch(a){return console.warn(`[stx-media] Failed to analyze video: ${a}`),null}}async function me(t,e,a,n){let u=await Z();if(!u)return console.warn("[stx-media] ts-videos not installed, skipping processing"),{src:t,processed:!1};let r=await D(t,e,a);if(r)return r;try{let i=Y(t);if(!await B(i))return{src:t,processed:!1,errors:[`Source file not found: ${t}`]};let o=a.outputDir||"dist/videos",s=a.baseUrl||"/videos";await ue(o,{recursive:!0});let h=await x(i),p=oe(t,ce(t)),l={src:t,processed:!0,hash:h};n?.({percentage:5,stage:"analyzing"}),l.metadata=await ee(i)||void 0;let m={};if(e.quality)m.bitrate=he(e.quality);if(e.platform)Object.assign(m,le(e.platform));if(e.transcode)Object.assign(m,e.transcode);if(Object.keys(m).length>0||e.process){n?.({percentage:10,stage:"transcoding"});let c=`${p}-${h}.mp4`,d=de(o,c);try{let f=await fe(i,d,m,u,(b)=>n?.({percentage:10+b*0.5,stage:"transcoding"}));if(f)l.transcoded={path:d,url:`${s}/${c}`,duration:f.duration,size:f.size,video:{codec:m.codec||"h264",width:f.width,height:f.height,bitrate:f.bitrate,frameRate:f.frameRate},audio:f.audioCodec?{codec:m.audioCodec||"aac",bitrate:m.audioBitrate||128000,sampleRate:m.sampleRate||48000,channels:m.channels||2}:void 0}}catch(f){l.errors=l.errors||[],l.errors.push(`Transcoding failed: ${f}`)}}if(e.generatePoster){n?.({percentage:65,stage:"generating-poster"});let c=typeof e.generatePoster==="object"?e.generatePoster:{timestamp:0},d=await L(i,c,o,s);if(d)l.poster=d}if(a.thumbnails?.enabled){n?.({percentage:70,stage:"generating-thumbnails"});let c=await z(i,a.thumbnails,o,s);if(c.length>0)l.thumbnails=c}if(e.streaming){n?.({percentage:80,stage:"generating-manifests"});let c=typeof e.streaming==="object"?e.streaming:a.streaming||{format:"hls"};if(c.format==="hls"||c.format===void 0){let d=await E(i,c.qualities||a.streaming?.defaultQualities||[],o,s);if(d)l.streaming={...l.streaming,hls:d}}if(c.format==="dash"){let d=await j(i,c.qualities||a.streaming?.defaultQualities||[],o,s);if(d)l.streaming={...l.streaming,dash:d}}}if(e.spriteSheet)n?.({percentage:90,stage:"generating-sprite-sheet"});return n?.({percentage:100,stage:"complete"}),await M(t,e,l,a),l}catch(i){return{src:t,processed:!1,errors:[`Processing failed: ${i}`]}}}async function fe(t,e,a,n,u){try{let r=await new n.Conversion(t,e,{videoCodec:a.codec,videoBitrate:a.bitrate,width:a.maxWidth,height:a.maxHeight,frameRate:a.frameRate,audioCodec:a.audioCodec,audioBitrate:a.audioBitrate,sampleRate:a.sampleRate,channels:a.channels}).run((i)=>{u?.(i.percentage/100)});return{duration:r.duration||0,size:r.size||0,width:r.width||a.maxWidth||0,height:r.height||a.maxHeight||0,bitrate:r.bitrate||a.bitrate||0,frameRate:r.frameRate||a.frameRate||30,audioCodec:r.audioCodec}}catch(r){return console.error(`[stx-media] Transcoding failed: ${r}`),null}}export{T as uu,D as vu,M as wu,ie as xu,L as yu,z as zu,re as Au,E as Bu,j as Cu,ee as Du,me as Eu};
|