Jump to content

zPlayer - My own little audio/video player


CYCho
 Share

Go to solution Solved by TheXman,

Recommended Posts

from that link seems, the version still v3.3.14.5 eventhough this is not beta version.

i am currently using autoit-v3.3.15.3-beta, is there any wrong in this version?

i am so confuse actually, that lastest version from link above, has release date 16 March, 2018

it is impossible for me, i think, since i am new member here, how possible i am downloading something which is not lastest version.

i am still curious, why when i am made, that zPlayer.exe my own, there is bug..like before

is it really because i am using beta version?

Edited by subuddhi
Link to comment
Share on other sites

@subuddhi, for a normal user like you and me, I would recommend the latest stable version, which is 3.3.14.5. Some experienced users may also use a beta version to make use of a special function which is not provided by the stable version. I've never used a beta version myself.

Link to comment
Share on other sites

On 6/1/2021 at 10:35 PM, CYCho said:

I found that one of my laptops had an Intel CPU with Intel HD Graphics Control Panel installed, and Ctrl+Alt+Arrows rotate the screen orientation. This overrides my hotkeys for changing volume and moving to previous or next file. I never had a need to change screen orientaion, so I diabled the screen rotation shortcuts. The following article explains in detail how to do it.

Edit: My laptop is a Windows 10 PC.

How To Disable Screen Rotation Keyboard Shortcut in Windows 10

Version 3.0.1.8 was released today to address this problem. I added 4 alternate hotkey sets to be used when the Windows uses Ctrl+Alt+Arrow shortcuts. The alternate hotkeys use equal, minus, comma and period keys instead of up, down, left and right arrows respectively.

Edited by CYCho
Link to comment
Share on other sites

  • 2 weeks later...

@subuddhi, there's one thing you should consider when changing the order of music files in the listview:  the listview is a visual representation of $playList array and the program works with this array when moving forward or backward. So you should refresh this array when you change the order of listview items.

Link to comment
Share on other sites

On 7/13/2021 at 4:53 PM, subuddhi said:

i wonder if we can rearrange music in playlist, i.e, drag and reorder the list, it would be nice

Edit: Version 3.0.1.9 was released on July 19, 2021 to add 🠕 and 🠗 buttons in the playlist window. This is not exactly drag and drop, but this may serve the purpose. Select any item in the playlist and click 🠕 or 🠗 button and see how the selected item moves up or down. Any comments would be welcome.

Edited by CYCho
Link to comment
Share on other sites

  • 2 weeks later...

I found the zplayer and got excited.  My 95-year-old dad has dementia and is in his 6th viewing of the 8-season Monk series.  Changing the DVDs takes a lot of our time, so I plan to make a tablet PC with a simple screen with Pause, Next, and Previous buttons.  The second  display can be his HDMI TV.  I can put the sequentially named videos in a folder and they can play "forever" for him.  I've spent about 10 hours trying to make things work and I'm not making very good progress.  I've made the buttons work, but I'm having trouble understanding how to not have all the other display windows "in the way".  Is there any top level documentation (beyond the code comments) that could help me to understand how to get my desired result?

Thanks,
Carl

Link to comment
Share on other sites

 

10 hours ago, carlvanwormer said:

Is there any top level documentation (beyond the code comments) that could help me to understand how to get my desired result?

Unfortunately no. But I can feel your love for your daddy and I will be happy to make a reduced and custom-designed player for your daddy along the following lines:

1. When the program is run for the first time, it will make an alphbetical list of video files and play them forever until you press Pause or Exit button.
2. When the program is run the next time, it will start playing the last file you were playing when you exited the last time.
3. The screen will always be a maximized window. You can change to fullscreen mode through context menu.
4. A small GUI at the right bottom of the screen will have 4 buttons(Play/Pause, Next, Previous and Exit) and a progress bar.

I will post the code when I'm done. I hope I can do it in several days. In the mean time, please let me know if you want to have any other function included.

Edited by CYCho
Link to comment
Share on other sites

Wow!  Custom software!

I have it partially working in my preferred version.  I made a single Pause button filling most of the main display (covering up the other dialog windows) that stops and starts the video in the secondary HDMI display. 

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=C:\Users\Carl\Documents\AutoIt\CarlPlay\BigPause.kxf
Global $Form1 = GUICreate("Form1", 1212, 682, -1, -1)
Global $Pause_Play = GUICtrlCreateButton("Pause_Play", 152, 16, 995, 625)
Global $nMsg
GUICtrlSetFont(-1, 120, 400, 0, "Arial Rounded MT Bold")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

; end Carl init - - - - -

code near the end of your main:

            If $trayMsg = $tray1 Then MyWindow()
            If $trayMsg = $tray2 Then MyExit()

;Carl code - big button stuff - - - -
            $nMsg = GUIGetMsg()
            Switch $nMsg
                Case $GUI_EVENT_CLOSE
                    Exit
                Case $Pause_Play
                    MyPause()

            EndSwitch

;Carl code end - - - - -

        WEnd

My implementation hack breaks the functioning of the pop-out video control.  If I knew the necessary and sufficient requirements for my button functions, along with where in the code to place them, I could probably do them myself.  At first I thought I needed to turn off the other windows, but making a big button group that mostly covers up the other stuff would work, too.

 

The important things for the ultra-simple control are:

1. dual screen with the second screen being the HDMI TV screen (full screen mode if possible)

2. Button control on primary tablet screen (full screen mode if possible)

3. Buttons - Giant (90% of screen) Pause (required), small Previous and Next (optional), and very small (corner, hard to hit) exit.  This is because his eyes are bad, his fingers are bad, his memory is bad.  If he exits, the memory-care staff will need to restart and set up his system.

4. If possible, the system will power up running the app after windows starts, continuing with the most recently paused location or the next video in the list.

5. Maintenance, setup, and other expert functions could be accessed with touchscreen or mouse and keyboard.

Any help would be appreciated.

Thanks for the amazing code (and thanks to AutoIt!),
Carl

 

Link to comment
Share on other sites

3 hours ago, carlvanwormer said:

1. dual screen with the second screen being the HDMI TV screen (full screen mode if possible)

2. Button control on primary tablet screen (full screen mode if possible)

Sorry, I don't have any experience with dual monitors. I'll come back to you when I have learned how to implement it. Thanks for giving me a motivation to learn something new. Input from anyone who kows would be appreciated.

  

3 hours ago, carlvanwormer said:

4. If possible, the system will power up running the app after windows starts

This can be done by using Windows Task Scheduler.

Edited by CYCho
Link to comment
Share on other sites

I can manually configure the second monitor and move the video display window to the second monitor (my TV) with the existing code.  If the video could be programmatically set to the second monitor, it would be convenient, but that function is not necessary.

I've been testing with my desktop PC for most of the work, and then I moved the .exe to a laptop, which was able to prove the concept, so I just ordered a tablet for the final installation.  If you have any interim versions available, I'd be happy to test and reply.  Is it worth trading a direct contact method?

Thanks,

Carl

 

Link to comment
Share on other sites

20 minutes ago, carlvanwormer said:

If you have any interim versions available, I'd be happy to test and reply.

I will give you a workable version in a couple of days time.

 

20 minutes ago, carlvanwormer said:

Is it worth trading a direct contact method?

Sure, you can click on my avatar and send me a message me if necessary.

Link to comment
Share on other sites

@carlvanwormer, . the attached code works in my single-monitor environment and I hope it will work in your dual-monitor environment as well. Please test the code in your tablet and TV and let me know how it works or fails.

 

zPlayer_Carl.zip

Edited by CYCho
Link to comment
Share on other sites

I get an error when I execute the script.  Here is the output window:

>"C:\Program Files (x86)\AutoIt3\SciTE\..\AutoIt3.exe" "C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.au3" /run /prod /ErrorStdOut /in "C:\Users\Carl\Documents\AutoIt\CarlPlay\zPlayer_Carl.au3" /UserParams    
+>16:00:57 Starting AutoIt3Wrapper (21.316.1639.1) from:SciTE.exe (4.4.6.0)  Keyboard:00000409  OS:WIN_10/2009  CPU:X64 OS:X64  Environment(Language:0409)  CodePage:0  utf8.auto.check:4
+>         SciTEDir => C:\Program Files (x86)\AutoIt3\SciTE   UserDir => C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper
>Running AU3Check (3.3.14.5)  params:-d -w 1 -w 2 -w 3 -w- 4 -w 5 -w 6 -w- 7  from:C:\Program Files (x86)\AutoIt3  input:C:\Users\Carl\Documents\AutoIt\CarlPlay\zPlayer_Carl.au3
+>16:00:58 AU3Check ended.rc:0
>Running:(3.3.14.5):C:\Program Files (x86)\AutoIt3\autoit3.exe "C:\Users\Carl\Documents\AutoIt\CarlPlay\zPlayer_Carl.au3"    
+>Setting Hotkeys...--> Press Ctrl+Alt+Break to Restart or Ctrl+BREAK to Stop.
"C:\Users\Carl\Documents\AutoIt\CarlPlay\zPlayer_Carl.au3" (36) : ==> Subscript used on non-accessible variable.:
$playList[0] = $playList[1]
$playList^ ERROR
->16:00:59 AutoIt3.exe ended.rc:1
+>16:00:59 AutoIt3Wrapper Finished.
>Exit code: 1    Time: 2.697


is this something I can fix?

Thanks,

Carl

 

Link to comment
Share on other sites

3 minutes ago, carlvanwormer said:

"C:\Users\Carl\Documents\AutoIt\CarlPlay\zPlayer_Carl.au3" (36) : ==> Subscript used on non-accessible variable.:

This code should reside in the same directory as the media files. Please insert the following error-checking lines in line 36 of the code.

If Not IsArray($playlist) Then
        MsgBox(0, "", "This program should reside in the driectory where video files are located.")
        Exit
    EndIf

 

Link to comment
Share on other sites

Starting at line 34 I have:

Else
    $playList = _FileListToArrayRec($sFolder, StringReplace("*." & $fileTypes, " ", ";*."))
    If Not IsArray($playlist) Then
        MsgBox(0, "", "This program should reside in the driectory where video files are located.")
        Exit
    EndIf
    $playList[0] = $playList[1]
    $currentFile = $playList[0]
    $playID = 1
EndIf
 

is this correct?

 

After I save the file into the video directory I can run it and the buttons work!

I'll move the compiled program to the laptop I'm using (until the tablet arrives) and try it with my TV as the video output source.  I should be able to get it tested later tonight.

Thanks,

Carl

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...