Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Video player 3DS

From GameBrew
Revision as of 00:53, 5 November 2023 by HydeWing (talk | contribs)
Video player
Videoplayerfor3ds02.png
General
AuthorCore-2-Extreme
TypeMedia players
Version1.5.3
LicenseMixed
Last Updated2023/03/13
Links
Download
Website
Source
Support Author

Homebrew video player for the 3DS with multi-language support.

On NEW 3(2)DS, it is recommended to use the patched Luma3DS or Luma3DS v12.0 (or later) for better performance.​

Features

  • Hardware accelerated decoding(New 3DS and New 2DS only).
  • Hardware accelerated color conversion.
  • Multiple video codec support.
  • Multiple audio codec support.
  • Multiple Subtitle support.
  • Seek.
  • 3D video (New 3DS and 3DS only, software decoder only).
  • Zoom in/out video.
  • Move video.
  • File explorer.
  • Fullscreen mode.

User guide

Supported codec & extensions

Video Audio Subtitle Containers
AV1 aac (Advanced audio coding) movtext aac
H.261 ac3 subrip ac3
H.262 mp1 (MPEG audio layer 1) subviewer (No style support) avi
H.263 mp2 (MPEG audio layer 2) mkv
H.263+ mp3 (MPEG audio layer 3) mp1
H.264 (AVC, MPEG4 part10) ogg (Vorbis) mp2
H.265 (HEVC) opus mp3
Motion jpeg pcm audio mov
MPEG1video ogg
MPEG2video wav
MPEG4 (MPEG4 part2)

Recommended resolution

On NEW 3(2)DS, it is recommended to use patched Luma3DS or the latest Luma3DS for better performance.

Videos that in this resolution will be played without any problems in most of the situations.

Recommended resolution mpeg1video mpeg2video H263+ H264 H265
OLD3DS Software decoding 400x240@30 400x240@30 400x240@24 256x144@24 256x144@10
NEW3DS Software decoding 800x240@30 800x240@30 800x240@30 800x240@30 800x240@20
NEW3DS Hardware decoding none none none 800x240@60 none

Videos that in this resolution may be played without problems if video is not moving a lot.

Maximum resolution mpeg1video mpeg2video H263+ H264 H265
OLD3DS Software decoding 800x240@24 800x240@24 800x240@20 400x240@15 256x144@20
NEW3DS Software decoding 800x480@30 800x480@30 800x480@30 800x480@24 800x240@30
NEW3DS Hardware decoding none none none 1280x720@20 none

Note: Video resolution that exceeds screen resolution (400x240 on OLD2DS, 800x240 on OLD3DS, NEW2DS and NEW3DS) has little visible effect.

Preparing videos

Using ffmpeg (advanced users):

  • Download and install ffmpeg.
    • For NEW3DS and NEW2DS: ffmpeg -i {input_file_name} -acodec aac -vcodec libx264 -s 800x240 -preset medium -crf 25 {output_file_name}
    • For OLD3DS and OLD2DS: ffmpeg -i {input_file_name} -acodec aac -vcodec mpeg4 -s 400x240 -crf 25 {output_file_name}
  • Copy generated video files to your 3DS (anywhere on your SD card).
  • Replace {input_file_name} with your input file name and {output_file_name} with your output file name.
  • Example: ffmpeg -i original_video.mp4 -acodec aac -vcodec libx264 -s 800x240 -preset medium -crf 25 converted_video.mp4
  • For converting 3D video, refer to this post by T0biasCZe.

Fast and simple alternatives - you can use these tools:

Decoding speed/Benchmark

Decoding speed depends on encoder option, video type, video scene, etc...

Original video file: Big Buck Bunny

The test videos were generated with following commands:

  • mjpeg: ffmpeg -i {input_file} -acodec copy -vcodec mjpeg -s {width}x{height} -q:v 5 -t 03:00 {output_file}
  • mpeg1video: ffmpeg -i {input_file} -acodec copy -vcodec mpeg1video -s {width}x{height} -q:v 5 -t 03:00 {output_file}
  • mpeg2video: ffmpeg -i {input_file} -acodec copy -vcodec mpeg2video -s {width}x{height} -q:v 5 -t 03:00 {output_file}
  • mpeg4: ffmpeg -i {input_file} -acodec copy -vcodec mpeg4 -s {width}x{height} -q:v 5 -t 03:00 {output_file}
  • h263p: ffmpeg -i {input_file} -acodec copy -vcodec h263p -s {width}x{height} -q:v 5 -t 03:00 {output_file}
  • h264: ffmpeg -i {input_file} -acodec copy -vcodec libx264 -s {width}x{height} -crf 25 -t 03:00 {output_file}
  • h265: ffmpeg -i {input_file} -acodec copy -vcodec libx265 -s {width}x{height} -crf 30 -t 03:00 {output_file}
  • av1: ffmpeg -i {input_file} -acodec copy -vcodec libsvtav1 -s {width}x{height} -crf 40 -row-mt 1 -cpu-used 5 -t 03:00 {output_file}

New3DS:

videoplayerfor3ds-04.png

Old3DS:

videoplayerfor3ds-04.png

How to watch 3D video

This feature is for new 3DS or 3DS only, software decoder only.

To see 3D video as 3D, enable 3D mode in settings (Settings> LCD> Screen mode> 3D).

Supported languages

  • English.
  • Japanese/日本語.
  • Hungarian/Magyar (translated by vargaviktor).
  • Simplified Chinese/简体中文 (translated by LITTOMA).
  • Italian/Italiano (translated by dixy52-beep).
  • Spanish/Español (translated by Cookiee).
  • Romanian/Română (translated by Tescu48).
  • Polish/Polski (translated by JustScratchCoder).
  • Ryukyuan/琉球諸語 (translated by kuragehimekurara1).

Controls

Normal mode:

A - Play/Pause

B - Stop

Y - Open settings menu

X - Select a file

R/L - Zoom in/out

Circle Pad - Move a video and/or subtitle

D-Pad Left/Right - Seek

D-Pad Up/Down - Change screen brightness

Start - Back to main menu

Select - Enter fullscreen mode

Touch on the bar - Seek

Fullscreen mode:

A - Play/Pause

D-Pad Left/Right - Seek

D-Pad Up/Down - Change screen brightness

Select - Exit fullscreen mode

Screenshots

With multiple audio tracks support
videoplayerfor3ds-01.png

With subtitles
videoplayerfor3ds-02.png

With night mode
videoplayerfor3ds-03.png

Media

MP4s on 3DS!!!!! - 3DS Video Player (Crimson Øverlord)

Changelog

v1.5.3 2023/03/13

  • Changes:
    • Audio files more than 2ch (e.g. 2.1ch) has been supported.
    • Many pixel formats have been supported, however, YUV420P is recommended for performance reason.
    • Ryukyuan(琉球諸語) translation has been added (by kuragehimekurara1).
    • Auto mode for top screen mode has been added, when this is enabled (settings -> LCD -> screen mode -> auto) you can just use 3d slider to change between 3D <-> 800px mode.
    • Simplified Chinese(简体中文) translation has been updated.
  • Fixed bugs:
    • Many problems with seek function including backward seeking has been fixed.
    • Problem that it won't enter sleep mode in some case has been fixed.
    • Problem that h263p video is not played correctly in some resolution has been fixed.

v1.5.2 2022/09/21

  • Changes:
    • Ignore unsupported codec so that you can play supported codec only (e.g. You can now play videos that contain unsupported subtitles/audio).
  • Fixed bugs:
    • Hardware decoder won't play videos that contain B-frames smoothly has been fixed (It means you don't have to care about B-frames when encoding to H.264 videos).

v1.5.1 2022/07/14

  • Added features:
    • Screen update frequency in audio only files have been increased.
    • Performance has been improved by adding DMA.
    • Video playback is automatically paused when runs out of buffer.
    • (You can change threshold by changing 'Restart playback threshold' settings).
    • Seeking speed has been improved.
  • Changes:
  • Disallow sleep when only headset is connected.
  • (allow sleep if headset is disconnected during playback).
  • App directory has been changed from sdmc:/Video_player/ to sdmc:/3ds/Video_player/.
  • (App will automatically move folder).
  • Simplified Chinese(简体中文) translation has been updated.
  • Enabled 'correct aspect ratio option' by default.
  • Fixed bugs:
    • Crashes in hw decoder in some videos have been fixed.
    • Automatically enter full screen mode even file explorer is opened has been fixed.
    • App will freeze if you seek after EOF has been fixed.
    • Unable to pause/resume in tagged mp3 has been fixed.
    • Video position won't be saved in some cases have been fixed.
    • Glitch on video in full screen mode has been fixed.
    • Some directories can't be entered have been fixed.
    • Some videos won't be played at correct speed has been fixed.
    • Frame desync in some 3D videos have been fixed.

v1.5.0 2022/03/29

  • Subtitles have been supported (*0).
  • Disable video, audio and subtitle have been added.
  • Audio desync has been fixed.
  • AV1 videos have been supported.
  • The problem some video won't play smoothly in sw decoder has been fixed.
  • Screen brightness adjustment function has been added (DPAD "↑" and "↓").
  • Other minor changes.
  • 0 No style support, only plain text.

v1.4.2 2022/01/09

  • Unexpected touch in Nintendo's home menu has been fixed.
  • Multi-threaded decoding stability has been fixed and it is enabled by default.
  • Seeking stability has been fixed.
  • Repeat, in order, random playback mode have been added.
  • Other minor changes.

v1.4.1 2021/12/11

  • The "FSUSER_OpenFile() failed" error has been fixed.
  • Adjusted font and button size in settings menu.
  • Multi-threaded decoding is disabled by default because it has stability problem.
  • Polish(Polski) translation has been added (by JustScratchCoder).

v1.4.0 2021/10/25

  • Decoded image(raw) buffer has been added and it makes playback much much much much better (especially on OLD3DS).
  • Spanish(español) translation has been added (by Cookiee).
  • Romanian(Română) translation has been added (by Tescu48).

v1.3.1 2021/08/28

  • Volume adjustment has been added (from 0% to 999%).
  • Direction pad seeking has been added (from 1 second to 99 seconds).
  • Hungarian (magyar) translation has been added (by vargaviktor).
  • Other minor changes.

Release notes.

Credits

  • Core 2 Extreme.
  • dixy52-beep (icon, banner, in app texture, Italian translation).
  • windows-server-2003 (bug fix).
  • vargaviktor (Hungarian translation).
  • HIDE810 (bug fix).
  • LITTOMA (Simplified chinese translation).
  • Cookiee (Spanish translation).
  • Tescu48 (Romanian translation).
  • JustScratchCoder (Polish translation).
  • T0biasCZe (Nintendo Video Convertor).
  • kuragehimekurara1 (Ryukyuan translation).

External links

Advertising: