Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Time Control:  How to pause for 30 Seconds intervals between each command in DOS-Batch?

Posted on 2003-10-29
12
Medium Priority
?
2,699 Views
Last Modified: 2009-12-16
Hello!   Everyone!

I am listening to many sound clips for my business, and wanted to handle them by my own scripts.   I learned that Windows Media Player can take a command line, so that I wrote my DOS-batch program as below.   It works partially.   Out of 6 clips, the first 5 clips were played for only 1 second and went to the next entry.   Only the last clip was played in full about 30 seconds.   Now I want to insert 30 seconds pause between each command execution.   Any idea or help?   Thank you!!!

Mitsuru Kido

=================================
@echo

REM DOS Batch Program for Media Player
::  DOS Batch Prgoram

mplayer2 e:\contemporary a\abba\00936301 - Dancing Queen.mp2
mplayer2 e:\contemporary a\abba\00936303 - S.O.S..mp2
mplayer2 e:\contemporary a\abba\04810603 - Mamma Mia.mp2
mplayer2 e:\contemporary a\abba\07796302 - Take A Chance On Me.mp2
mplayer2 e:\contemporary a\abba\07796304 - Chiquitita.mp2
mplayer2 e:\contemporary a\abba\07796305 - Fernando.mp2

0
Comment
Question by:mkido
12 Comments
 
LVL 16

Accepted Solution

by:
_nn_ earned 500 total points
ID: 9642576
A bit stupid, but it works :

@echo off

REM DOS Batch Program for Media Player
::  DOS Batch Prgoram

mplayer2 e:\contemporary a\abba\00936301 - Dancing Queen.mp2
ping -n 31 127.0.0.1 >NUL
mplayer2 e:\contemporary a\abba\00936303 - S.O.S..mp2
ping -n 31 127.0.0.1 >NUL
mplayer2 e:\contemporary a\abba\04810603 - Mamma Mia.mp2
ping -n 31 127.0.0.1 >NUL
mplayer2 e:\contemporary a\abba\07796302 - Take A Chance On Me.mp2
ping -n 31 127.0.0.1 >NUL
mplayer2 e:\contemporary a\abba\07796304 - Chiquitita.mp2
ping -n 31 127.0.0.1 >NUL
mplayer2 e:\contemporary a\abba\07796305 - Fernando.mp2
0
 
LVL 8

Expert Comment

by:K_2K
ID: 9643095
if it's stupid,
        and it works,
              it ain't stupid.
My 2¢,
2K
(\o/)


0
 
LVL 8

Expert Comment

by:K_2K
ID: 9643124
This works for me, but I don't get as much peace between the noise, and those that are over 30 seconds don't stop short like you ask.

*<;-))

=================================
@echo

REM DOS Batch Program for Media Player
::  DOS Batch Prgoram

for %%K in ("e:\contemporary a\abba\*.mp2") do (
    start /wait "2K " mplayer2 e:\contemporary a\abba\00936301 - Dancing Queen.mp2
)
0
Get your Disaster Recovery as a Service basics

Disaster Recovery as a Service is one go-to solution that revolutionizes DR planning. Implementing DRaaS could be an efficient process, easily accessible to non-DR experts. Learn about monitoring, testing, executing failovers and failbacks to ensure a "healthy" DR environment.

 
LVL 8

Expert Comment

by:K_2K
ID: 9643131
(Not to mention, the unpleasant side-effect of also playing the other tracks in that folder.)
0
 
LVL 8

Expert Comment

by:K_2K
ID: 9643230
Color me stupid - I changed the folder in my test batch and messed up copying back to the post.


for %%K in ("e:\contemporary a\abba\*.mp2") do (
    start /wait "2K " mplayer2 %%K
)
0
 
LVL 16

Expert Comment

by:_nn_
ID: 9643524
Hi K_2K,

Nice loop, but on my W2K box, I have to close the player between each clip. So I've had some fun coding that one :

playlist.bat
----8<-----------------------------
@echo off

if "%1"=="" goto usage

>playlist.asx echo ^<ASX version="3"^>
>>playlist.asx echo.


for %%K in (%1) do (

>>playlist.asx echo ^<ENTRY^>
>>playlist.asx echo   ^<TITLE^>%%K^</TITLE^>
>>playlist.asx echo   ^<REF href="%%K"/^>
>>playlist.asx echo ^</ENTRY^>
>>playlist.asx echo.

)

>>playlist.asx echo.
>>playlist.asx echo ^</ASX^>

start /wait mplayer2 playlist.asx
del playlist.asx


goto end
:usage
echo Usage: %0 <path_and_filemask>

:end
----8<-----------------------------

Cheers :o)
0
 
LVL 8

Expert Comment

by:K_2K
ID: 9643909
sweet,  
gave me a much needed smile on a hard day.

thanks,
2K
(\o/)
0
 
LVL 3

Expert Comment

by:cwp
ID: 9644182
Well, the mplayer2 supports some options as well, try it with /Play and /Close.
0
 
LVL 8

Expert Comment

by:K_2K
ID: 9644451
Options are a good thought, yet I think with MS's track record on memory leaks I'd be happier if I could keep the thing open and let it go to each song itself when done.  Even though I know the old V6 standard player2 is more stable than V7, it still takes less time to switch songs if we don't reinitialize the whole player between tracks.

VB's sendkeys may allow adding songs dynamically to the current play queue.  I still gotta think building the playlist first is a good option and a nice de-paradigm-er if the front-end can use it.
0
 
LVL 9

Expert Comment

by:DrWarezz
ID: 9645772
hey,
I have to go offline soon, so I don't have time to read any of the above so far, therefore, my contribution to this may not be relivant. Either ways, here's a little bit of code tht i put together not too long a go. If you place it into, e.g: your %systemroot%, you can call it whenever u need to.

::---30secondpause.bat---::

@echo off

set TIMM=%TIME::=%
set TIMMM=%TIMM:~0,6%
set /a TIMEN=%TIMMM%+000030

:_STSY
set TIMM=%TIME::=%
set TIMMM=%TIMM:~0,6%
if "%TIMMM%"=="%TIMEN%" exit /b
goto _STSY

::---end---::


By calling this from your batch program, this should cause a pause for 30 seconds.

gd luck

>>Rob:D<<
0
 
LVL 7

Expert Comment

by:YarnoSG
ID: 9651764
There is a resource kit tool called SLEEP that does this

"SLEEP 30"
suspends a batch file for 30 seconds.
0
 

Author Comment

by:mkido
ID: 9654234
Thank you all!
I get to try some out.   Let me see.   Talk to you a little later.  
Mitsuru
0

Featured Post

Nothing ever in the clear!

This technical paper will help you implement VMware’s VM encryption as well as implement Veeam encryption which together will achieve the nothing ever in the clear goal. If a bad guy steals VMs, backups or traffic they get nothing.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

TOMORROW TOMORROW.BAT is inspired by a question I get asked over and over again; that is, "How can I use batch file commands to obtain tomorrow's date?" The crux of this batch file revolves around the XCOPY command - a technique I discovered w…
YESTERDAY YESTERDAY.BAT is inspired by a previous article I wrote entitled: TOMORROW.BAT (http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/MS_DOS/A_4196-Advanced-Batch-File-Programming-TOMORROW-BAT.html). The crux of this batch f…
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …

927 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question