@jjlmoya/utils-audiovisual 1.18.0 → 1.19.0

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.
@@ -0,0 +1,205 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+ import type { VideoMergerUI, VideoMergerLocaleContent } from '../index';
4
+
5
+ const slug = 'merge-videos-online';
6
+ const title = '動画結合オンライン:複数の動画を素早く無料で結合';
7
+ const description = '複数の動画を1つに無料でオンラインかつローカルで結合します。透かしなし、アップロードなし、ブラウザ内で100%プライベートに処理されます。';
8
+
9
+ const ui: VideoMergerUI = {
10
+ uploadTitle: "動画ファイルをアップロード",
11
+ uploadFormats: "複数の動画をドラッグ&ドロップするか、クリックして選択",
12
+ privacyNote: "動画は100%ローカルで処理されます。インターネットには一切アップロードされません。",
13
+ addMoreBtn: "動画を追加",
14
+ mergeBtn: "今すぐ動画を結合",
15
+ mergingStatus: "動画を結合中...",
16
+ downloadBtn: "結合した動画をダウンロード",
17
+ resetBtn: "最初からやり直す",
18
+ emptyList: "動画をドラッグまたは選択して結合を開始してください。",
19
+ listTitle: "結合する動画の順序",
20
+ optionsTitle: "出力設定",
21
+ optionResolution: "解像度",
22
+ optionFps: "フレームレート(FPS)",
23
+ optionsQualityNote: "動画のサイズが異なる場合、最終的な解像度は元の縦横比を維持しながらレターボックス形式で調整されます。",
24
+ faqTitle: "動画結合に関するよくある質問",
25
+ bibliographyTitle: "参考文献とリンク",
26
+ resolutionWarning: "注意:一部の動画の解像度が異なるため、自動的に調整されます。"
27
+ };
28
+
29
+ const faq: VideoMergerLocaleContent['faq'] = [
30
+ {
31
+ question: "このツールに動画をアップロードするのは安全ですか?",
32
+ answer: "はい、完全に安全です。このツールはブラウザ内で100%ローカルに動作します。動画がインターネット経由で送信されたり、サーバーに保存されたりすることはありません。",
33
+ },
34
+ {
35
+ question: "動画のサイズが異なる場合はどうなりますか?",
36
+ answer: "選択した出力解像度に合わせて、動画が自動的にスケーリングされます。比率が完全に一致しない場合は、元の縦横比を維持するために黒い余白(レターボックス)が追加されます。",
37
+ },
38
+ {
39
+ question: "結合時に動画の音声は保持されますか?",
40
+ answer: "はい。各動画のオーディオトラックが抽出され、各映像セグメントと完全に同期して順番にミックスされます。",
41
+ },
42
+ ];
43
+
44
+ const howTo: VideoMergerLocaleContent['howTo'] = [
45
+ {
46
+ name: "動画を選択またはドラッグ",
47
+ text: "結合したいすべての動画ファイルを、パソコンやスマートフォンから直接読み込みます。",
48
+ },
49
+ {
50
+ name: "順序を整理する",
51
+ text: "リストの上下ボタンを使用してアップロードした動画を並べ替え、再生順序を決定します。",
52
+ },
53
+ {
54
+ name: "オプションを調整する",
55
+ text: "結合した動画の出力解像度とフレームレート(FPS)を選択します。",
56
+ },
57
+ {
58
+ name: "結合してエクスポート",
59
+ text: "結合ボタンを押します。リアルタイム処理が完了するのを待ち、結果のファイルをダウンロードします。",
60
+ },
61
+ ];
62
+
63
+ const seo: VideoMergerLocaleContent['seo'] = [
64
+ {
65
+ type: 'summary',
66
+ title: '100%ローカルでプロフェッショナルな動画結合',
67
+ items: [
68
+ 'ブラウザ内で直接リアルタイム処理',
69
+ '異なるサイズやフォーマット(MP4、WEBM、MOV)の複数の動画に対応',
70
+ '選択可能な出力解像度(720p、1080p、2K、4K)',
71
+ 'オーディオトラックを完璧に順番に結合'
72
+ ]
73
+ },
74
+ { type: 'title', text: '動画を無料でオンライン結合:無限のシンプルさとプライバシー', level: 2 },
75
+ { type: 'paragraph', html: '<strong>2つの動画を1つに結合する方法</strong>をお探しですか? 重いソフトウェアや有料アプリをダウンロードする必要はもうありません。私たちの<strong>無料で動画をオンライン結合</strong>するツールを使えば、必要なすべてのクリップを数秒でつなぎ合わせることができます。100%ローカルで動作するため、ファイルをサーバーにアップロードする必要がなく、絶対的なプライバシーが保証されます。また、アップロードの待ち時間なしで<strong>大容量の動画を結合</strong>できます。' },
76
+
77
+ { type: 'title', text: '透かしなしで動画を結合', level: 3 },
78
+ { type: 'paragraph', html: '他のアプリの最大の欠点の1つは、コンテンツに透かしが入ってしまうことです。私たちのツールでは、<strong>透かしなしで動画をオンライン結合</strong>できます。ダウンロードしたファイルは完全にあなたの作品であり、クリーンでプロフェッショナルな状態のまま、YouTube、Instagram、TikTokで共有したり、個人的に使用したりできます。' },
79
+
80
+ { type: 'stats', items: [
81
+ { value: '100%', label: 'プライベート&ローカル', icon: 'mdi:shield-check' },
82
+ { value: '0MB', label: 'アップロードデータなし', icon: 'mdi:upload-off' },
83
+ { value: '4K', label: '最大解像度', icon: 'mdi:video-high-definition' }
84
+ ], columns: 3 },
85
+
86
+ { type: 'title', text: '動画結合の一般的な使用例', level: 3 },
87
+ { type: 'comparative', items: [
88
+ {
89
+ title: 'ソーシャルメディア',
90
+ description: 'ストーリー、TikTok、リールを1つの動画にすばやく結合',
91
+ icon: 'mdi:instagram',
92
+ points: [
93
+ 'スマートフォンで撮影した短いクリップを結合',
94
+ 'InstagramやYouTube用の連続したコンテンツを準備',
95
+ '煩わしい透かしなしで結合'
96
+ ]
97
+ },
98
+ {
99
+ title: 'プレゼンテーション',
100
+ description: 'イントロとデモ録画を1つのファイルに結合',
101
+ icon: 'mdi:presentation',
102
+ points: [
103
+ 'アニメーションのイントロをプレゼンテーション本体と結合',
104
+ '短いソフトウェアのデモを結合',
105
+ '標準的なMP4/WEBM形式でのクリーンなエクスポート'
106
+ ],
107
+ highlight: true
108
+ },
109
+ {
110
+ title: '家族の思い出まとめ',
111
+ description: '休暇やお祝いの複数の動画を結合',
112
+ icon: 'mdi:home-heart',
113
+ points: [
114
+ 'パーティーのすべての瞬間を1つの動画に',
115
+ '旅行の思い出を時系列でグループ化',
116
+ '1つのファイルになるため共有が簡単'
117
+ ]
118
+ },
119
+ {
120
+ title: '教育ビデオ',
121
+ description: '短いトレーニングチャプターやレッスンをつなぎ合わせる',
122
+ icon: 'mdi:school',
123
+ points: [
124
+ '小さな独立したチュートリアルをグループ化',
125
+ 'レッスンに終了クリップを追加',
126
+ 'コースをプロフェッショナルに構成する'
127
+ ]
128
+ }
129
+ ], columns: 2 },
130
+
131
+ { type: 'title', text: 'ブラウザから動画を結合するのに最適なアプリ', level: 2 },
132
+ { type: 'paragraph', html: 'これは単なるウェブページではありません。最新のHTML5ビデオAPIのおかげで、ブラウザから直接動作する真の<strong>動画結合アプリ</strong>です。<strong>MP4動画</strong>、WEBMなどを結合し、解像度を混在させ(サイズが異なる場合、システムが自動的にレターボックスを適用します)、最終的なエクスポートのフレームレート(FPS)を選択できます。' },
133
+
134
+ { type: 'title', text: '結合アプローチの比較', level: 3 },
135
+ { type: 'table', headers: ['機能', '私たちのローカルツール', '従来のオンラインコンバーター', 'プロフェッショナル向けエディター'], rows: [
136
+ ['プライバシー', '完全(デバイス上で処理)', '低い(サーバーへのアップロードが必要)', '完全(デバイスにインストール)'],
137
+ ['ネットワーク消費', 'ゼロ(GBのアップロードなし)', '非常に高い(アップロードとダウンロード)', 'ゼロ'],
138
+ ['透かし', 'なし(100%クリーン)', 'あり(無料版の場合)', 'なし(ライセンス購入時)'],
139
+ ['価格', '100%無料', '制限付きで無料、またはサブスクリプション', '通常は高価'],
140
+ ['学習曲線', '非常に低い(ドラッグ、並べ替え、結合)', '低い', '非常に高い(トレーニングが必要)']
141
+ ] },
142
+
143
+ { type: 'proscons', items: [
144
+ {
145
+ pro: '保証されたプライバシー:ファイルがデバイスから離れることがないため、セキュリティは最高です',
146
+ con: '大容量の動画を結合する速度は、ローカルコンピューターのRAMとプロセッサに依存します'
147
+ },
148
+ {
149
+ pro: 'プロフェッショナルな結果:100%無料で登録不要、透かしもありません',
150
+ con: '縦向きと横向きなど、寸法の異なる動画を結合する場合は、黒い余白(レターボックス)が適用されます'
151
+ },
152
+ {
153
+ pro: '汎用性:ウェブやソーシャルメディア向けに最適化された効率的なエンコーディングによる高速エクスポート',
154
+ con: 'クリップ間に複雑なトランジション(3Dフェード)や映画のような視覚効果を追加することはできません'
155
+ }
156
+ ], title: '利点と考慮事項' },
157
+
158
+ { type: 'title', text: '今すぐ動画の結合を始めましょう', level: 2 },
159
+ { type: 'paragraph', html: 'バラバラの動画フラグメントが何百もある言い訳はもう通用しません。ファイルをアップロードし、希望の順序に並べ、ボタンを押すだけです。<strong>オンラインで動画を結合</strong>するための、最も速く、最も安全で、最もプライベートな方法を体験してください。' }
160
+ ];
161
+
162
+ const faqSchema: WithContext<FAQPage> = {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faq.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ };
171
+
172
+ const howToSchema: WithContext<HowTo> = {
173
+ '@context': 'https://schema.org',
174
+ '@type': 'HowTo',
175
+ name: title,
176
+ description,
177
+ step: howTo.map((step) => ({
178
+ '@type': 'HowToStep',
179
+ name: step.name,
180
+ text: step.text,
181
+ })),
182
+ };
183
+
184
+ const appSchema: WithContext<SoftwareApplication> = {
185
+ '@context': 'https://schema.org',
186
+ '@type': 'SoftwareApplication',
187
+ name: title,
188
+ description,
189
+ applicationCategory: 'UtilitiesApplication',
190
+ operatingSystem: 'Web',
191
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
192
+ inLanguage: 'ja',
193
+ };
194
+
195
+ export const content: VideoMergerLocaleContent = {
196
+ slug,
197
+ title,
198
+ description,
199
+ ui,
200
+ seo,
201
+ faq,
202
+ bibliography,
203
+ howTo,
204
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
205
+ };
@@ -0,0 +1,205 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+ import type { VideoMergerUI, VideoMergerLocaleContent } from '../index';
4
+
5
+ const slug = 'merge-videos-online';
6
+ const title = '동영상 병합 온라인: 여러 동영상을 빠르고 무료로 합치기';
7
+ const description = '여러 동영상을 무료로 온라인에서 로컬로 하나로 병합하고 연결합니다. 워터마크 없음, 업로드 없음, 브라우저에서 100% 비공개로 처리됩니다.';
8
+
9
+ const ui: VideoMergerUI = {
10
+ uploadTitle: "동영상 파일 업로드",
11
+ uploadFormats: "여러 동영상을 드래그 앤 드롭하거나 클릭하여 선택하세요",
12
+ privacyNote: "동영상은 100% 로컬에서 처리됩니다. 인터넷에 아무것도 업로드되지 않습니다.",
13
+ addMoreBtn: "동영상 더 추가하기",
14
+ mergeBtn: "지금 동영상 병합하기",
15
+ mergingStatus: "동영상 병합 중...",
16
+ downloadBtn: "병합된 동영상 다운로드",
17
+ resetBtn: "처음부터 다시 시작",
18
+ emptyList: "동영상을 드래그하거나 선택하여 병합을 시작하세요.",
19
+ listTitle: "병합할 동영상 순서",
20
+ optionsTitle: "출력 설정",
21
+ optionResolution: "해상도",
22
+ optionFps: "초당 프레임(FPS)",
23
+ optionsQualityNote: "최종 해상도는 동영상의 크기가 다른 경우 원래 가로세로 비율을 유지하면서 레터박스 형식으로 조정됩니다.",
24
+ faqTitle: "동영상 병합에 대해 자주 묻는 질문",
25
+ bibliographyTitle: "참고 문헌 및 링크",
26
+ resolutionWarning: "주의: 일부 동영상의 해상도가 다르며 자동으로 조정됩니다."
27
+ };
28
+
29
+ const faq: VideoMergerLocaleContent['faq'] = [
30
+ {
31
+ question: "이 도구에 동영상을 업로드하는 것이 안전한가요?",
32
+ answer: "예, 완전히 안전합니다. 이 도구는 브라우저에서 100% 로컬로 작동합니다. 동영상은 절대 인터넷을 통해 전송되거나 어떤 서버에도 저장되지 않습니다.",
33
+ },
34
+ {
35
+ question: "동영상의 크기가 다르면 어떻게 되나요?",
36
+ answer: "저희 도구는 선택한 출력 해상도에 맞게 동영상의 크기를 자동으로 조정합니다. 비율이 정확히 일치하지 않는 경우 원래 가로세로 비율을 유지하기 위해 검은색 여백(레터박스)이 추가됩니다.",
37
+ },
38
+ {
39
+ question: "병합할 때 동영상의 오디오는 유지되나요?",
40
+ answer: "예. 각 동영상의 오디오 트랙이 추출되어 각 영상 세그먼트와 완벽하게 동기화되어 순차적으로 믹스됩니다.",
41
+ },
42
+ ];
43
+
44
+ const howTo: VideoMergerLocaleContent['howTo'] = [
45
+ {
46
+ name: "동영상 선택 또는 드래그",
47
+ text: "병합할 모든 동영상 파일을 컴퓨터나 스마트폰에서 직접 로드하세요.",
48
+ },
49
+ {
50
+ name: "순서 정렬하기",
51
+ text: "목록의 위아래 버튼을 사용하여 업로드된 동영상을 정렬하여 재생 순서를 결정합니다.",
52
+ },
53
+ {
54
+ name: "옵션 조정하기",
55
+ text: "병합된 동영상의 출력 해상도와 초당 프레임(FPS)을 선택합니다.",
56
+ },
57
+ {
58
+ name: "병합 및 내보내기",
59
+ text: "병합 버튼을 누릅니다. 실시간 처리가 완료될 때까지 기다린 다음 결과 파일을 다운로드합니다.",
60
+ },
61
+ ];
62
+
63
+ const seo: VideoMergerLocaleContent['seo'] = [
64
+ {
65
+ type: 'summary',
66
+ title: '100% 로컬 전문 동영상 병합',
67
+ items: [
68
+ '브라우저에서 직접 실시간 처리',
69
+ '다양한 크기 및 형식(MP4, WEBM, MOV)의 여러 동영상 지원',
70
+ '선택 가능한 출력 해상도(720p, 1080p, 2K, 4K)',
71
+ '오디오 트랙을 완벽하게 순차적으로 결합'
72
+ ]
73
+ },
74
+ { type: 'title', text: '동영상을 무료로 온라인에서 병합하세요: 무한한 단순함과 개인정보 보호', level: 2 },
75
+ { type: 'paragraph', html: '복잡한 과정 없이 <strong>두 개의 동영상을 하나로 합치는 방법</strong>이 궁금하신가요? 더 이상 무거운 소프트웨어나 유료 앱을 다운로드할 필요가 없습니다. <strong>무료로 온라인에서 동영상을 병합</strong>하는 도구를 사용하면 필요한 모든 클립을 몇 초 만에 연결하고 합칠 수 있습니다. 100% 로컬로 작동하므로 파일을 어떤 서버에도 업로드할 필요가 없어 절대적인 개인정보 보호를 보장하며, 업로드 대기 시간 없이 <strong>대용량 동영상을 병합</strong>할 수 있습니다.' },
76
+
77
+ { type: 'title', text: '워터마크 없이 동영상 합치기', level: 3 },
78
+ { type: 'paragraph', html: '다른 앱의 가장 큰 단점 중 하나는 콘텐츠를 망친다는 것입니다. 저희와 함께라면 <strong>워터마크 없이 온라인에서 동영상을 병합</strong>할 수 있습니다. 다운로드하는 파일은 유튜브, 인스타그램, 틱톡에서 공유하거나 개인 용도로 사용할 수 있도록 깔끔하고 전문적인 상태 그대로의 창작물입니다.' },
79
+
80
+ { type: 'stats', items: [
81
+ { value: '100%', label: '비공개 및 로컬', icon: 'mdi:shield-check' },
82
+ { value: '0MB', label: '업로드 데이터 없음', icon: 'mdi:upload-off' },
83
+ { value: '4K', label: '최대 해상도', icon: 'mdi:video-high-definition' }
84
+ ], columns: 3 },
85
+
86
+ { type: 'title', text: '동영상 병합을 위한 일반적인 사용 사례', level: 3 },
87
+ { type: 'comparative', items: [
88
+ {
89
+ title: '소셜 미디어',
90
+ description: '스토리, 틱톡 또는 릴스를 하나의 동영상으로 빠르게 병합',
91
+ icon: 'mdi:instagram',
92
+ points: [
93
+ '스마트폰으로 녹화한 짧은 클립 병합',
94
+ '인스타그램이나 유튜브를 위한 연속 콘텐츠 준비',
95
+ '성가신 워터마크 없이 병합'
96
+ ]
97
+ },
98
+ {
99
+ title: '프레젠테이션',
100
+ description: '인트로와 데모 녹화본을 하나의 파일로 결합',
101
+ icon: 'mdi:presentation',
102
+ points: [
103
+ '애니메이션 인트로를 프레젠테이션 본문과 병합',
104
+ '짧은 소프트웨어 데모 결합',
105
+ '표준 MP4/WEBM 형식으로 깔끔하게 내보내기'
106
+ ],
107
+ highlight: true
108
+ },
109
+ {
110
+ title: '가족 추억 모음',
111
+ description: '휴가나 축하 행사에서 찍은 여러 동영상을 병합',
112
+ icon: 'mdi:home-heart',
113
+ points: [
114
+ '파티의 모든 순간을 하나의 동영상으로 만들기',
115
+ '여행 추억을 시간순으로 그룹화하기',
116
+ '하나의 파일로 되어 있어 공유하기 쉬움'
117
+ ]
118
+ },
119
+ {
120
+ title: '교육용 동영상',
121
+ description: '짧은 교육 챕터나 강의 연결',
122
+ icon: 'mdi:school',
123
+ points: [
124
+ '작고 독립적인 튜토리얼을 그룹화하기',
125
+ '강의에 마무리 클립 추가하기',
126
+ '전문적으로 코스 구성하기'
127
+ ]
128
+ }
129
+ ], columns: 2 },
130
+
131
+ { type: 'title', text: '브라우저에서 동영상을 병합하는 최고의 앱', level: 2 },
132
+ { type: 'paragraph', html: '이것은 단순한 웹페이지가 아닙니다. 최신 HTML5 비디오 API 덕분에 브라우저에서 직접 작동하는 진정한 <strong>동영상 병합 앱</strong>입니다. <strong>MP4 동영상</strong>, WEBM 등을 <strong>병합</strong>하고, 해상도를 혼합하며(크기가 다를 경우 시스템이 자동으로 레터박스를 적용함) 최종 출력의 초당 프레임(FPS)을 선택할 수 있습니다.' },
133
+
134
+ { type: 'title', text: '병합 방식 비교', level: 3 },
135
+ { type: 'table', headers: ['기능', '우리의 로컬 도구', '기존 온라인 변환기', '전문 편집기'], rows: [
136
+ ['개인정보 보호', '완전함 (기기에서 처리됨)', '낮음 (서버에 파일 업로드 필요)', '완전함 (기기에 설치됨)'],
137
+ ['네트워크 소비', '없음 (기가바이트 단위 업로드 없음)', '매우 높음 (업로드 및 다운로드)', '없음'],
138
+ ['워터마크', '없음 (100% 깨끗함)', '있음 (무료 버전의 경우)', '없음 (라이선스 구매 시)'],
139
+ ['가격', '100% 무료', '제한적으로 무료 또는 구독형', '보통 비쌈'],
140
+ ['학습 곡선', '매우 낮음 (드래그, 정렬, 병합)', '낮음', '매우 높음 (교육 필요)']
141
+ ] },
142
+
143
+ { type: 'proscons', items: [
144
+ {
145
+ pro: '개인정보 보호 보장: 어떤 파일도 기기를 벗어나지 않으므로 보안이 완벽합니다',
146
+ con: '대용량 동영상을 병합하는 속도는 로컬 컴퓨터의 RAM 및 프로세서에 따라 다릅니다'
147
+ },
148
+ {
149
+ pro: '전문적인 결과물: 100% 무료, 가입 불필요, 워터마크 없음',
150
+ con: '비율이 다른 동영상(세로 vs 가로)을 결합할 때 검은색 여백(레터박스)이 적용됩니다'
151
+ },
152
+ {
153
+ pro: '다재다능함: 웹 및 소셜 미디어 사용에 최적화된 효율적인 인코딩으로 빠른 내보내기',
154
+ con: '클립 간에 복잡한 전환(3D 페이드)이나 영화 같은 시각 효과를 추가할 수 없습니다'
155
+ }
156
+ ], title: '장점 및 고려 사항' },
157
+
158
+ { type: 'title', text: '지금 바로 동영상 병합을 시작하세요', level: 2 },
159
+ { type: 'paragraph', html: '정리되지 않은 수백 개의 동영상 조각들을 그대로 둘 변명은 더 이상 없습니다. 파일을 업로드하고 원하는 순서대로 배치한 다음 버튼을 누르세요. <strong>온라인에서 동영상을 병합</strong>하는 가장 빠르고 안전하며 가장 프라이빗한 방법을 만나보세요.' }
160
+ ];
161
+
162
+ const faqSchema: WithContext<FAQPage> = {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faq.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ };
171
+
172
+ const howToSchema: WithContext<HowTo> = {
173
+ '@context': 'https://schema.org',
174
+ '@type': 'HowTo',
175
+ name: title,
176
+ description,
177
+ step: howTo.map((step) => ({
178
+ '@type': 'HowToStep',
179
+ name: step.name,
180
+ text: step.text,
181
+ })),
182
+ };
183
+
184
+ const appSchema: WithContext<SoftwareApplication> = {
185
+ '@context': 'https://schema.org',
186
+ '@type': 'SoftwareApplication',
187
+ name: title,
188
+ description,
189
+ applicationCategory: 'UtilitiesApplication',
190
+ operatingSystem: 'Web',
191
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
192
+ inLanguage: 'ko',
193
+ };
194
+
195
+ export const content: VideoMergerLocaleContent = {
196
+ slug,
197
+ title,
198
+ description,
199
+ ui,
200
+ seo,
201
+ faq,
202
+ bibliography,
203
+ howTo,
204
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
205
+ };
@@ -0,0 +1,205 @@
1
+ import { bibliography } from '../bibliography';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+ import type { VideoMergerUI, VideoMergerLocaleContent } from '../index';
4
+
5
+ const slug = 'video-samenvoegen-online';
6
+ const title = 'Video\'s samenvoegen online: Voeg meerdere video\'s snel en gratis samen';
7
+ const description = 'Voeg meerdere video\'s samen tot één, gratis, online en lokaal. Geen watermerken, geen uploads, 100% privé in uw browser.';
8
+
9
+ const ui: VideoMergerUI = {
10
+ uploadTitle: "Upload uw videobestanden",
11
+ uploadFormats: "Sleep meerdere video's of klik om ze te selecteren",
12
+ privacyNote: "Uw video's worden 100% lokaal verwerkt. Er wordt niets naar het internet geüpload.",
13
+ addMoreBtn: "Meer video's toevoegen",
14
+ mergeBtn: "Video's nu samenvoegen",
15
+ mergingStatus: "Video's samenvoegen...",
16
+ downloadBtn: "Samengevoegde video downloaden",
17
+ resetBtn: "Opnieuw beginnen",
18
+ emptyList: "Sleep of selecteer video's om ze te beginnen samenvoegen.",
19
+ listTitle: "Volgorde van de samen te voegen video's",
20
+ optionsTitle: "Uitvoerinstellingen",
21
+ optionResolution: "Resolutie",
22
+ optionFps: "Frames per seconde (FPS)",
23
+ optionsQualityNote: "De uiteindelijke resolutie wordt aangepast met behoud van de oorspronkelijke beeldverhouding in letterbox-formaat als de video's verschillende afmetingen hebben.",
24
+ faqTitle: "Veelgestelde vragen over het samenvoegen van video's",
25
+ bibliographyTitle: "Bibliografie & Referenties",
26
+ resolutionWarning: "Waarschuwing: Sommige video's hebben verschillende resoluties en worden automatisch aangepast."
27
+ };
28
+
29
+ const faq: VideoMergerLocaleContent['faq'] = [
30
+ {
31
+ question: "Is het veilig om mijn video's naar deze tool te uploaden?",
32
+ answer: "Ja, het is volkomen veilig. De tool werkt 100% lokaal in uw browser. Uw video's worden nooit via het internet verzonden of op een server opgeslagen.",
33
+ },
34
+ {
35
+ question: "Wat gebeurt er als mijn video's verschillende afmetingen hebben?",
36
+ answer: "Onze tool schaalt de video's automatisch zodat ze passen bij de gekozen uitvoerresolutie. Bij verhoudingen die niet precies overeenkomen, worden zwarte randen (letterboxing) toegevoegd om de oorspronkelijke beeldverhouding te behouden.",
37
+ },
38
+ {
39
+ question: "Blijft de audio van de video's behouden bij het samenvoegen?",
40
+ answer: "Ja. De audiotracks van elke video worden vastgelegd en sequentieel gemixt, perfect synchroon met elk beeldsegment.",
41
+ },
42
+ ];
43
+
44
+ const howTo: VideoMergerLocaleContent['howTo'] = [
45
+ {
46
+ name: "Selecteer of sleep uw video's",
47
+ text: "Laad alle videobestanden die u wilt samenvoegen direct vanaf uw computer of mobiel.",
48
+ },
49
+ {
50
+ name: "Bepaal de volgorde",
51
+ text: "Orden de geüploade video's met behulp van de omhoog- of omlaag-knoppen in de lijst om de afspeelvolgorde te bepalen.",
52
+ },
53
+ {
54
+ name: "Pas opties aan",
55
+ text: "Kies de uitvoerresolutie en frames per seconde (FPS) van de samengevoegde video.",
56
+ },
57
+ {
58
+ name: "Samenvoegen en exporteren",
59
+ text: "Druk op de knop 'samenvoegen'. Wacht tot de real-time verwerking is voltooid en download het resulterende bestand.",
60
+ },
61
+ ];
62
+
63
+ const seo: VideoMergerLocaleContent['seo'] = [
64
+ {
65
+ type: 'summary',
66
+ title: '100% Lokaal Professioneel Video\'s Samenvoegen',
67
+ items: [
68
+ 'Real-time verwerking direct in uw browser',
69
+ 'Ondersteunt meerdere video\'s van verschillende groottes en formaten (MP4, WEBM, MOV)',
70
+ 'Selecteerbare uitvoerresolutie (720p, 1080p, 2K, 4K)',
71
+ 'Audiotracks perfect sequentieel gecombineerd'
72
+ ]
73
+ },
74
+ { type: 'title', text: 'Video\'s Online Gratis Samenvoegen: Grenzeloze Eenvoud en Privacy', level: 2 },
75
+ { type: 'paragraph', html: 'Vraagt u zich af <strong>hoe u twee video\'s tot één kunt samenvoegen</strong> zonder complicaties? U hoeft geen zware programma\'s of betaalde applicaties meer te downloaden. Met onze tool om <strong>gratis online video\'s samen te voegen</strong>, kunt u in enkele seconden alle benodigde clips aaneenschakelen. Omdat het 100% lokaal werkt, hoeft u uw bestanden naar geen enkele server te uploaden, wat absolute privacy garandeert en u in staat stelt om <strong>grote video\'s samen te voegen</strong> zonder wachttijden voor het uploaden.' },
76
+
77
+ { type: 'title', text: 'Video\'s Samenvoegen Zonder Watermerk', level: 3 },
78
+ { type: 'paragraph', html: 'Een van de grootste nadelen van andere applicaties is dat ze uw content verpesten. Bij ons kunt u <strong>online video\'s samenvoegen zonder watermerk</strong>. Het bestand dat u downloadt is precies uw creatie: schoon, professioneel en klaar om te delen op YouTube, Instagram, TikTok of voor persoonlijk gebruik.' },
79
+
80
+ { type: 'stats', items: [
81
+ { value: '100%', label: 'Privé en Lokaal', icon: 'mdi:shield-check' },
82
+ { value: '0MB', label: 'Geen Upload Data', icon: 'mdi:upload-off' },
83
+ { value: '4K', label: 'Maximale Resolutie', icon: 'mdi:video-high-definition' }
84
+ ], columns: 3 },
85
+
86
+ { type: 'title', text: 'Veelvoorkomende Toepassingen voor het Samenvoegen van Video\'s', level: 3 },
87
+ { type: 'comparative', items: [
88
+ {
89
+ title: 'Sociale Media',
90
+ description: 'Snel samenvoegen van stories, TikToks of reels tot één video',
91
+ icon: 'mdi:instagram',
92
+ points: [
93
+ 'Voeg kleine clips samen die met de mobiel zijn opgenomen',
94
+ 'Bereid sequentiële content voor op Instagram of YouTube',
95
+ 'Samenvoegen zonder vervelende watermerken'
96
+ ]
97
+ },
98
+ {
99
+ title: 'Presentaties',
100
+ description: 'Voeg introducties en demo-opnamen samen tot één bestand',
101
+ icon: 'mdi:presentation',
102
+ points: [
103
+ 'Voeg een geanimeerde introductie samen met de rest van de presentatie',
104
+ 'Voeg korte software-demo\'s samen',
105
+ 'Schone export in standaard MP4/WEBM-formaat'
106
+ ],
107
+ highlight: true
108
+ },
109
+ {
110
+ title: 'Familiecompilaties',
111
+ description: 'Voeg meerdere video\'s van uw vakanties of feesten samen',
112
+ icon: 'mdi:home-heart',
113
+ points: [
114
+ 'Maak één video met alle momenten van het feest',
115
+ 'Groepeer reisherinneringen chronologisch',
116
+ 'Eenvoudig te delen omdat het één bestand is'
117
+ ]
118
+ },
119
+ {
120
+ title: 'Educatieve Video\'s',
121
+ description: 'Schakel korte trainingshoofdstukken of lessen aaneen',
122
+ icon: 'mdi:school',
123
+ points: [
124
+ 'Groepeer kleine onafhankelijke tutorials',
125
+ 'Voeg een afsluitende clip toe aan uw lessen',
126
+ 'Structureer uw cursus professioneel'
127
+ ]
128
+ }
129
+ ], columns: 2 },
130
+
131
+ { type: 'title', text: 'De Beste App om Video\'s vanuit de Browser Samen te Voegen', level: 2 },
132
+ { type: 'paragraph', html: 'Dit is niet zomaar een webpagina; het is een echte <strong>app om video\'s samen te voegen</strong> die rechtstreeks vanuit uw browser werkt dankzij moderne HTML5-video-API\'s. U kunt <strong>MP4-video\'s samenvoegen</strong>, WEBM en meer, resoluties mixen (ons systeem past automatisch letterboxing toe als de afmetingen variëren) en de frames per seconde (FPS) van uw definitieve export kiezen.' },
133
+
134
+ { type: 'title', text: 'Vergelijking van methodes', level: 3 },
135
+ { type: 'table', headers: ['Kenmerken', 'Onze Lokale Tool', 'Klassieke Online Converters', 'Professionele Editors'], rows: [
136
+ ['Privacy', 'Totaal (Verwerkt op uw apparaat)', 'Laag (Vereist upload naar server)', 'Totaal (Geïnstalleerd op uw apparaat)'],
137
+ ['Netwerkverbruik', 'Nul (Geen gigabyte uploads)', 'Zeer hoog (Up- en download)', 'Nul'],
138
+ ['Watermerk', 'NEE (100% schoon)', 'Ja (In gratis versies)', 'NEE (Als u een licentie koopt)'],
139
+ ['Prijs', '100% Gratis', 'Gratis met limieten of abonnement', 'Meestal duur'],
140
+ ['Leercurve', 'Zeer laag (Slepen, ordenen en samenvoegen)', 'Laag', 'Zeer hoog (Vereist training)']
141
+ ] },
142
+
143
+ { type: 'proscons', items: [
144
+ {
145
+ pro: 'Gegarandeerde privacy: Maximale veiligheid omdat geen enkel bestand uw apparaat verlaat',
146
+ con: 'De snelheid voor het samenvoegen van grote video\'s is afhankelijk van het RAM-geheugen en de processor van uw computer'
147
+ },
148
+ {
149
+ pro: 'Professionele resultaten: 100% gratis, zonder registratie en zonder watermerken',
150
+ con: 'Bij het samenvoegen van video\'s met verschillende afmetingen worden zwarte randen (letterboxing) toegepast'
151
+ },
152
+ {
153
+ pro: 'Veelzijdigheid: Snelle export met efficiënte codering, geoptimaliseerd voor web en sociale media',
154
+ con: 'Staat niet toe om complexe overgangen (3D fades) of filmische visuele effecten toe te voegen'
155
+ }
156
+ ], title: 'Voordelen en Overwegingen' },
157
+
158
+ { type: 'title', text: 'Begin Vandaag Nog met het Samenvoegen van Uw Video\'s', level: 2 },
159
+ { type: 'paragraph', html: 'Er zijn geen excuses meer om honderden ongeorganiseerde videofragmenten te hebben. Upload uw bestanden, plaats ze in de gewenste volgorde en druk op de knop. Ontdek de snelste, veiligste en meest private manier om <strong>online video\'s samen te voegen</strong>.' }
160
+ ];
161
+
162
+ const faqSchema: WithContext<FAQPage> = {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faq.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ };
171
+
172
+ const howToSchema: WithContext<HowTo> = {
173
+ '@context': 'https://schema.org',
174
+ '@type': 'HowTo',
175
+ name: title,
176
+ description,
177
+ step: howTo.map((step) => ({
178
+ '@type': 'HowToStep',
179
+ name: step.name,
180
+ text: step.text,
181
+ })),
182
+ };
183
+
184
+ const appSchema: WithContext<SoftwareApplication> = {
185
+ '@context': 'https://schema.org',
186
+ '@type': 'SoftwareApplication',
187
+ name: title,
188
+ description,
189
+ applicationCategory: 'UtilitiesApplication',
190
+ operatingSystem: 'Web',
191
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
192
+ inLanguage: 'nl',
193
+ };
194
+
195
+ export const content: VideoMergerLocaleContent = {
196
+ slug,
197
+ title,
198
+ description,
199
+ ui,
200
+ seo,
201
+ faq,
202
+ bibliography,
203
+ howTo,
204
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
205
+ };