talk
Orchestrating video transcoding in ruby
about
The pipeline uses ffmpeg as the transcoding engine; most tips are ffmpeg-specific.
talk
Orchestrating video transcoding in ruby
about
Final iteration uses streamio-ffmpeg with custom args, mainly for progress tracking.
talk
Orchestrating video transcoding in ruby
about
The MVP and second iteration used CarrierWave and hit its limits.
talk
Orchestrating video transcoding in ruby
about
Used in the MVP for video processing via ffmpeg.
talk
Orchestrating video transcoding in ruby
about
Used in the MVP to run transcoding in background workers.
talk
Orchestrating video transcoding in ruby
about
Final pipeline uses Sidekiq with distinct queues for processing and S3 uploads.
talk
Orchestrating video transcoding in ruby
about
Final rewrite uploads all derivatives to S3 on a dedicated upload queue.
talk
Orchestrating video transcoding in ruby
about
Considered and rejected due to 15-minute execution limit.
talk
Orchestrating video transcoding in ruby
about
Considered and rejected due to cost for a full media platform.
talk
Orchestrating video transcoding in ruby
about
Considered and rejected due to cost.
talk
Orchestrating video transcoding in ruby
about
Not used because at the time Docker wasn't production-ready/popular.
talk
Orchestrating video transcoding in ruby
about
Deep dive into MP4 as a container format and its metadata structure.
talk
Orchestrating video transcoding in ruby
about
Initially transcoded alongside MP4; dropped as browser MP4 support improved.
talk
Orchestrating video transcoding in ruby
about
Tip on choosing H.264 profiles for compatibility vs quality.
talk
Orchestrating video transcoding in ruby
about
Always convert to YUV 4:2:0 to avoid browser playback bugs.
talk
Orchestrating video transcoding in ruby
about
ISO base media / MP4 originate from QuickTime; hand-camera QuickTime input triggered a pixel-format bug.
talk
Orchestrating video transcoding in ruby
about
Mentioned when describing duration-approximation pitfalls during output validation.
from_talk
Orchestrating video transcoding in ruby
talk
Lesson drawn from the MVP's callback-driven design.
from_talk
Orchestrating video transcoding in ruby
talk
Lesson from hitting CarrierWave's limits on version-based transcoding.
from_talk
Orchestrating video transcoding in ruby
talk
Main architectural lesson from the final rewrite.
from_talk
Orchestrating video transcoding in ruby
talk
Explicit 'lesson number one' in the talk.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #1 on transcoding.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #2: move MP4 metadata to the front of the file.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #3: pass custom args instead of using streamio-ffmpeg's DSL.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #4: no universal solution; URL transcoding can be 50× slower.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #5: use presets; also mentions parallel-chunk transcoding.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #6 on profiles.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #7 on pixel format compatibility.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #8 on collecting metadata for diagnostics.
from_talk
Orchestrating video transcoding in ruby
talk
Tip #9 on validating ffmpeg output.
from_talk
Orchestrating video transcoding in ruby
talk
Recommendation drawn from the Q&A on ffmpeg vulnerabilities.