Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
動画を簡単に編集する方法
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nakajijapan
March 12, 2014
Technology
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
動画を簡単に編集する方法
About NJKMovieComposer
nakajijapan
March 12, 2014
More Decks by nakajijapan
See All by nakajijapan
今時のフルスタック主導の iOSアプリ開発
nakajijapan
0
380
サービスにおけるDesign Systemの構築
nakajijapan
11
4.2k
Markdownをリアルタイムに解析する
nakajijapan
5
4.8k
Firebase Authorization
nakajijapan
0
360
Intoducing Izumo
nakajijapan
1
2.1k
Practical CloudKit
nakajijapan
1
1.9k
Introducing to Ajimi - プロダクトを味見していこう
nakajijapan
0
2.5k
Shari
nakajijapan
1
3.1k
Japan Apple Pay Development
nakajijapan
0
350
Other Decks in Technology
See All in Technology
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
340
USB PDを使ってスマホを労わりたい
raspython3
0
180
事業成長とデータ活用を止めないためのマネジメントへ挑戦
hiracky16
0
390
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
200
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
WasmをRustにする
sansantech
PRO
0
250
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
150
Kiro Crewをはじめよう
kizawa2020
1
160
Optunaの最新リリースv5.0について
pfn
PRO
0
120
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
2
280
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
340
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Navigating Team Friction
lara
192
16k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
BBQ
matthewcrist
90
10k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
570
WCS-LA-2024
lcolladotor
0
890
Transcript
ಈըΛ؆୯ʹ ฤू͢Δํ๏ QPUBUPUJQT !OBLBKJKBQBO
!OBLBKJKBQBO 4PGUXBSF&OHJOFFS QBQFSCPZDP
৺ྶࣸਅΞϓϦ͓Θ͔Γ͍͚ͨͩͨͩΖ͏͔
৺ྶಈըΞϓϦ͏Ұ͝ཡ͍ͨͩ͜͏
8IZ
ɾΫϥε໊ ɾಈըՃ ฤूʹඞཁΫϥεଟ͍ ɾ࣮ ɾϋϚΔͱ໎ঢ়ଶ
"7'PVOEBUJPO
.FEJB1MBZFS 6*,JU "7'PVOEBUJPO $PSF"VEJP $PSF.FEJB $PSF"OJNBUJPO
&EJUJOH
"7"TTFU "7"TTFU5SBDL WJEFP "7"TTFU5SBDL BVEJP "7.VUBCMF$PNQPTJUJPO "7.VUBCMF$PNQPTJUJPO5SBDL WJEFP "7.VUBCMF$PNQPTJUJPO5SBDL WJEFP
"7"TTFU "7"TTFU5SBDL WJEFP "7"TTFU5SBDL BVEJP "7.VUBCMF7JEFP$PNQPTJUJPO*OTUSVDUJPO "7.VUBCMF7JEFP$PNQPTJUJPO-BZFS*OTUSVDUJPO "7.VUBCMF7JEFP$PNQPTJUJPO*OTUSVDUJPO "7.VUBCMF7JEFP$PNQPTJUJPO-BZFS*OTUSVDUJPO "7.VUBCMF7JEFP$PNQPTJUJPO
ɾΫϥε໊ ɾಈըՃ ฤूʹඞཁΫϥεଟ͍ ɾ࣮ ɾϋϚΔͱ໎ঢ়ଶ ͭΒΆΑ
͜ͷࡍ͔ͩΒ ϥΠϒϥϦԽ ͯ͠͠·͓͏
/,+.PWJF$PNQPTFS IUUQTHJUIVCDPNOBLBKJKBQBO/,+.PWJF$PNQPTFS
6TBHF
*OJUJBMJ[F
NKJMovieComposer* movieComposition = [[NKJMovieComposer alloc] init];
"EE.PWJF
// movie NSURL* movieURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"movie001" ofType:@"mov"]];
[movieComposition addVideoWithURL:movieURL];
4BWF'JMF
// AVAssetExportSession assetExportSession = [movieComposition readyToComposeVideoWithFilePath:composedMoviePath]; NSURL *composedMovieUrl = [NSURL
fileURLWithPath:composedMoviePath]; // export [assetExportSession exportAsynchronouslyWithCompletionHandler: ^(void ) { // save to device ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init]; if ([library videoAtPathIsCompatibleWithSavedPhotosAlbum:composedMovieUrl]) { [library writeVideoAtPathToSavedPhotosAlbum:composedMovieUrl completionBlock:^(NSURL *assetURL, NSError *assetError) { ! // it does not stop the main thread dispatch_async(dispatch_get_main_queue(), ^{ ! NSLog(@"saved"); }); }]; } }];
%POF
FUD
8JQF.PWJF
NSURL* movieURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"movie_wipe001" ofType:@"mov"]]; [movieComposition coverVideoWithURL:movieURL
scale:CGAffineTransformMakeScale(0.30f, 0.30f) transform:CGAffineTransformMakeTranslation(426, 30)];
%FNP
ɾಈը݁߹ ɾϫΠϓ ɾϑΣʔυΠϯɾΞτ ػೳ
-FU`T53: IUUQTHJUIVCDPNOBLBKJKBQBO/,+.PWJF$PNQPTFS
UIBOLT