Download Use on Web (lbry.tv) Community ⌄ lbry.org Meet, chat, and party in the heart of the LBRY community. YouTube Partner Program Sync your content instantly and start earning Frequently Asked Questions Got questions? We probably have answers! Blockchain Explorer Look up transactions and claims on the LBRY blockchain Company ⌄ @lbry on LBRY Everything about LBRY, from LBRY, on LBRY Company News The latest from the LBRY team The Team Meet the people building LBRY and why they're doing it Roadmap The next steps in our journey Contact Have a question or want to connect with the LBRY, Inc. team? Credit Reports Quarterly reports on LBRY's blockchain assets Developers ⌄ LBRY.tech Find a technical overview, specification, APIs, and more Follow @lbrytech on LBRY From the devs, for the devs. The Spec Read a formal technical description of how LBRY works GitHub All LBRY code is public and open-source Contributor's Guide Become a contributor to the LBRY project Search lbry.tv Menu Open LBRY

What are the recommended video settings for publishing?

« Back to FAQ

Even though LBRY does not enforce any file size, resolution, or quality of video content, we still encourage publishers to adhere to web optimized bitrates/sizes to ensure a good overall experience for lbry.tv and app users. LBRY does not automatically transcode on upload or when viewing, but an option is available on the LBRY Desktop app to do so during the publish process. If you are publishing on Android or lbry.tv, please follow the manual instructions for Handbrake/ffmpeg below.

See our Publishing FAQ for more information about the publishing process.

Recommended settings and bitrate

We recommend uploading videos at 720P in an MP4 container, H264 video encoding, and AAC audio with a maximum bitrate of 5 Mbps (check file properties to see current rate). It's also helps if the moov atom is at the front of the file - this is sometimes referred to as Fast Start (ffmpeg) or Web Optimized (Handbrake). If the content is not compatible or over 5 Mbps, you'll be given a warning on the publish page.

If you prefer 1080P, please try to keep the bitrate at or below 8 Mbps. You'll be given a warning on the publish page, but you can still proceed.

Automated transcoding in LBRY Desktop

The LBRY Desktop application supports local transcoding of videos during the publish process. This will require ffmpeg (automated process coming later) to be installed and will create a transcoded copy alongside your original file (_fixed appended to the filename). publish

ffmpeg will automatically be found from your system path or lbrynet folder, or you can also use a custom path.

Install and configure

The easiest way to configure ffmpeg on Windows/Mac is to download the executables and copy the bin folder into a new folder called ffmpeg inside your lbrynet folder. The final path to the files would be something like ...lbry/lbrynet/ffmpeg/bin/ffmpeg.exe. This path must be exactly followed if you want it to be picked up automatically, otherwise you will have to choose the path where the ffmpeg.exe is located on the Settings page.

For Linux, the install process typically adds it to your system path. This will allow the application to automatically detect it, but you can also choose your own custom path on the Settings page (will require restart in some cases).

*Known issues:

  • For Windows users, do not use system protected paths like program files/system32 as this may not have appropriate permissions.
  • For Mac users, you may need to run the ffmpeg / ffplay from the command line a single time before the app has permission to do so.

settings

Instructions for Handbrake

If using Handbrake, we recommended the following settings:

  • Preset of Fast 720P30.
  • Enable Web optimized.
  • Disable Align A/V Start.
  • Save as .mp4 extension.

handbrake

Instructions for ffmpeg

If using FFMPEG, we recommend the following parameters, and replace input/output with the appropriate file path:

ffmpeg -i input.avi -c:v libx264 -crf 21 -preset faster -pix_fmt yuv420p -maxrate 5000K -bufsize 5000K -vf 'scale=if(gte(iw\,ih)\,min(1920\,iw)\,-2):if(lt(iw\,ih)\,min(1920\,ih)\,-2)' -movflags +faststart -c:a aac -b:a 160k output.mp4

See a mistake? Edit this page on GitHub.