Homebrew Homebrew app [Release] Video player for 3DS

Core_2_Extreme

Well-Known Member
OP
Member
Joined
Feb 11, 2019
Messages
153
Trophies
0
Age
22
XP
1,163
Country
Japan
Could the 3rd core luma patch be implemented in the quick switchers edition of luma? 🤔 (Since it already has lot of QoL enhancements over stock luma, and supporting this would be nice) https://gbatemp.net/download/luma-10-3-with-night-light-and-quick-switchers.35619/

I couldn't make a pull request to https://github.com/DullPointer/Luma3DS
but I think you can clone it, apply core #3 patch and build it yourself.
Core #3 patch code is here : https://github.com/LumaTeam/Luma3DS/pull/1668/files
 

Core_2_Extreme

Well-Known Member
OP
Member
Joined
Feb 11, 2019
Messages
153
Trophies
0
Age
22
XP
1,163
Country
Japan
So its only the 2 ifs?

Yes, more info is available at : https://www.3dbrew.org/wiki/Multi-threading#CreateThread
With the Old3DS kernel, the s32 processorid must be <=2 (for the processorid validation check in the kernel). With the New3DS kernel, the processorid validation check requires processorid to be less than or equal to <total cores(MPCore "SCU Configuration Register" CPU number value + 1)>, and a number of additional constraints apply: When processorid==0x2 and the process is not a BASE mem-region process, exheader kernel-flags bitmask 0x2000 must be set (otherwise error 0xD9001BEA is returned). When processorid==0x3 and the process is not a BASE mem-region process, error 0xD9001BEA is returned. These are the only restriction checks done by the kernel for processorid.
 

Core_2_Extreme

Well-Known Member
OP
Member
Joined
Feb 11, 2019
Messages
153
Trophies
0
Age
22
XP
1,163
Country
Japan
v1.5.1 release

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

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


Download : https://github.com/Core-2-Extreme/Video_player_for_3DS/releases/tag/v1.5.1
 

CrashMidnick

Well-Known Member
Member
Joined
Jul 22, 2015
Messages
730
Trophies
0
Age
41
XP
2,845
Country
France
Thanks for this update :)

However pretty much all my movies are not working anymore, see error below (N3DS, latest luma + patch) :

1.jpg
 
  • Like
Reactions: Core_2_Extreme

CrashMidnick

Well-Known Member
Member
Joined
Jul 22, 2015
Messages
730
Trophies
0
Age
41
XP
2,845
Country
France
I reinstalled V1.4.2 and all is back to normal.

V1.5.0 + V1.5.1 are not working well for me : slower on O3DS and some videos unplayable, 90% of my videos are not working on N3DS.
 
  • Like
Reactions: Core_2_Extreme

CrashMidnick

Well-Known Member
Member
Joined
Jul 22, 2015
Messages
730
Trophies
0
Age
41
XP
2,845
Country
France
Can you provide a 30-second sample of a video that doesn't work? C2E may not be able to fix it without looking at a file that triggers the problem.

Well, I will contact C2E as this is copyrighted. But there is nothing special, It seems to be a codec problem with H264.
What are you using on your side ?

I converted about 50 movies (30 for the N3DS, 20 for O3DS), with the same software, the same day with the same settings (854*480 for N3DS and 144P for O3DS). They always worked until 1.5.0.

Today I converted a movie with the same software (format factory, windows) = same result
Then I converted it with ffmpeg using the very same settings of this thread :

ffmpeg -i "D:\Films\Alien 1.mkv" -acodec copy -vcodec libx264 -s 854x480 -r 30 -preset fast -profile:v baseline d:\Alien.mkv

Same result...

Finally I used my Mac and used two softwares (videoproc and AnyMP4 converter) : This is time the video launched but it was laggy as hell, even with a low video bitrate.

All those output files work with V1.4.2
 
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
460
Trophies
0
Age
36
Location
California
XP
2,252
Country
United States
A sample that's < 30 seconds is usually considered fair use, but you can use a free video if you're worried about that. I used Llamigos for my testing:

http://www.caminandes.com/

Download that, encode it the same way you encoded your other videos, and see if the 3DS can't play it. If it doesn't work, you can send it to C2E for analysis.

Note that if you're encoding for 3DS, you shouldn't be using 854x480. The 3DS screen is 800x240, so that's the highest resolution you should ever use. If you want your video to be 16:9 in 800px mode without having to crop or stretch it, encode at 800x224 with SAR 1:2 (400x224 upon playback, which is as close as you can get to 16:9 on the 3DS).
 

CrashMidnick

Well-Known Member
Member
Joined
Jul 22, 2015
Messages
730
Trophies
0
Age
41
XP
2,845
Country
France
A sample that's < 30 seconds is usually considered fair use, but you can use a free video if you're worried about that. I used Llamigos for my testing:

http://www.caminandes.com/

Download that, encode it the same way you encoded your other videos, and see if the 3DS can't play it. If it doesn't work, you can send it to C2E for analysis.

Note that if you're encoding for 3DS, you shouldn't be using 854x480. The 3DS screen is 800x240, so that's the highest resolution you should ever use. If you want your video to be 16:9 in 800px mode without having to crop or stretch it, encode at 800x224 with SAR 1:2 (400x224 upon playback, which is as close as you can get to 16:9 on the 3DS).

I took the 1st video and it worked. But some videos I converted before work too.

I will send a sample of a non working video to C2E, for sure there is something wrong in the code because it was working flawessly before.
 
  • Like
Reactions: Core_2_Extreme

chronoss

Well-Known Member
Member
Joined
May 26, 2015
Messages
3,007
Trophies
1
XP
4,900
Country
Congo, Republic of the
ffmpeg -i INPUT -vf scale=800:240:flags=neighbor scaled.mkv && ffmpeg -i scaled.mkv -filter_complex "split[l][r];[l]stereo3d=sbsl:ml[left];[r]stereo3d=sbsl:mr[right]" -map [left] -map 0:a -c:a copy left.mkv -map [right] -map 0:a -c:a copy right.mkv && ffmpeg -i left.mkv -i right.mkv -map 0:v:0 -map 0:a:0 -map 1:v:0 -vcodec mjpeg -b:v 3M -ac 2 movie.avi
I use this command for my MKV file and i have 3 file after the convertion : left, movie, right and scale, all are mkv file; Wich one i need to use on my 3ds ?
 
  • Like
Reactions: Core_2_Extreme

asp3ct_rat10

Active Member
Newcomer
Joined
May 26, 2022
Messages
30
Trophies
0
Age
20
Location
my house
XP
102
Country
Canada
i got the latest version on new 3ds xl and it was giving me a luma crash dump whenever i tried playing a video so i followed a suggestion somewhere in this thread where i needed to downgrade to 1.4.2. i did that then i found out that my videos are 1080p thats why it is now throwing a out of linear memory error. how would i downscale my videos with ffmpeg?
 
  • Like
Reactions: Core_2_Extreme

Core_2_Extreme

Well-Known Member
OP
Member
Joined
Feb 11, 2019
Messages
153
Trophies
0
Age
22
XP
1,163
Country
Japan
Thanks for this update :)

However pretty much all my movies are not working anymore, see error below (N3DS, latest luma + patch) :

View attachment 317928

I took the 1st video and it worked. But some videos I converted before work too.

I will send a sample of a non working video to C2E, for sure there is something wrong in the code because it was working flawessly before.

Can you give me your settings file too?
It's in sdmc:/3ds/Video_plaer/vid_settings.txt

A sample that's < 30 seconds is usually considered fair use, but you can use a free video if you're worried about that. I used Llamigos for my testing:

http://www.caminandes.com/

Download that, encode it the same way you encoded your other videos, and see if the 3DS can't play it. If it doesn't work, you can send it to C2E for analysis.

Note that if you're encoding for 3DS, you shouldn't be using 854x480. The 3DS screen is 800x240, so that's the highest resolution you should ever use. If you want your video to be 16:9 in 800px mode without having to crop or stretch it, encode at 800x224 with SAR 1:2 (400x224 upon playback, which is as close as you can get to 16:9 on the 3DS).
Although, 854x480 resolution has few visible effect, it shouldn't disable video playback itself and usually new 3ds can decode it without any problems.

I use this command for my MKV file and i have 3 file after the convertion : left, movie, right and scale, all are mkv file; Wich one i need to use on my 3ds ?
You should use movie.avi

i got the latest version on new 3ds xl and it was giving me a luma crash dump whenever i tried playing a video so i followed a suggestion somewhere in this thread where i needed to downgrade to 1.4.2. i did that then i found out that my videos are 1080p thats why it is now throwing a out of linear memory error. how would i downscale my videos with ffmpeg?
Use this command : ffmpeg -i {input_file_name} -acodec copy -vcodec libx264 -s 800x240 -bf 0 {output_file_name}
 
  • Like
Reactions: CrashMidnick

CrashMidnick

Well-Known Member
Member
Joined
Jul 22, 2015
Messages
730
Trophies
0
Age
41
XP
2,845
Country
France
Can you give me your settings file too?
It's in sdmc:/3ds/Video_plaer/vid_settings.txt

Please see attached file.

I converted all my movies from 854*480 to 800*480 and now they are working fine on N3DS. I did not test 144p movies on O3DS at the moment. Very strange as the other working videos are 854*480 too.
 

Attachments

  • vid_settings.txt
    142 bytes · Views: 41
  • Like
Reactions: Core_2_Extreme

AleronIves

Well-Known Member
Member
Joined
Nov 17, 2016
Messages
460
Trophies
0
Age
36
Location
California
XP
2,252
Country
United States
Although, 854x480 resolution has few visible effect, it shouldn't disable video playback itself and usually new 3ds can decode it without any problems.
Yes, if you have an existing 480p video, the N3DS will play it. My point was only that if you're taking the time to transcode videos just for the 3DS, you should use 800x240 or less, because 854x480 is just wasting space on your SD card and running your battery down faster (since it takes more resources to decode) for no visible benefit on the 3DS's screen.
 
  • Like
Reactions: Core_2_Extreme

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: https://youtube.com/shorts/fRENPoVaZHk?si=0xgCyaSVzuc5GD5F