miriam english (miriam_e) wrote,
miriam english

playing hevc videos on old mplayer that doesn't support that format

Woo hoo!!!! I just enjoyed a lovely bit of Linux magic. My favorite Linux is a bit old, but I have it working just how I like, with a lot of programs installed and a lot of things I've set up exactly how it suits me.

Unfortunately time moves on, and I was given some h265 (hevc) encoded videos recently. My favorite video player, mplayer, doesn't have a codec to play them though (at least, not this older version), so I've been converting them using ffmpeg into h264 format, which I can play. It takes about an hour to convert a video, and I end up having to store the video twice, once for each format.

Tonight an idea hit me. If I can get ffmpeg to decode the hevc video and pipe it out the standard output (stdout) to mplayer through its standard input (stdin) then maybe I can play videos directly. After experimenting for a while I found a way that actually works!!!!

ffmpeg -i "video.mkv" -f mpeg - | mplayer -cache 10240 -

-i tells ffmpeg to use the video file "video.mkv"
-f tells it to output mpeg format
- by itself tells it to output on stdout
| is the pipe character
-cache tells mplayer to use a cache (in this case a large one) to prevent seek problems
- by itself tells mplayer to take its input from stdin

Now I just need to work out how to get it to display subtitles as well. I'm so deaf these days I have to watch everything with subtitles.

Ah... I think I've just worked out how to show subtitles. Mplayer has an option that lets it take its subtitles from a separately named file. I'll give that a shot.

Yes! It works! Extracting the subtitles from the original file takes just a few seconds:

ffmpeg -i video.mkv subtitle.srt

Then I add the -sub subtitle.srt option and I'm good.

ffmpeg -i "video.mkv" -f mpeg - | mplayer -cache 10240 -sub subtitle.srt -

Ta-da!!!!! :D (Crossposted from https://miriam-e.dreamwidth.org/334594.html at my Dreamwidth account. Number of comments there so far: comment count unavailable)

  • Voting for lunatics and crooks

    Today I helped Mum and Dad make their postal vote in the QLD election. I was horrified that of the 6 candidates, 3 are anti-science morons and one is…

  • Tinkering with Puppy on a UEFI laptop

    Well, last night was definitely NOT fun, though it certainly was interesting. I spent almost 6 hours trying to resurrect my computer. The kind of…

  • Curved space

    It's 3:30am and my mind keeps ticking over the same annoying thing. I keep trying to think of some way to see gravity as curved space without it…

  • Post a new comment


    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.