I recently started running but hate running both in the quiet and with music, so i've been listening to podcasts.  Unfortunately, I've caught up with all my favorites and so I've started listening to some iTunesU courses, but unfortunately (again) very few of them have audio-only versions.

I wrote a shell script to copy any recently added iTunesU video files to another folder as m4a files (via ffmpeg) but since it's the first such script that i've ever written I am slightly worried to set it to run every morning ...

Anyway, I would appreciate some feedback from you expert types of what potential problems there might be with how I have it working now or suggestions of how I might improve part of it.  Also, as you'll see, I tried to set up a function to do the extension check but couldn't get it to work that way, is there a way to do that?

    #!/bin/bash

    oldIFS="$IFS" # allow for files/directories with spaces in the names
    IFS=$'\n'

    is_video_file () 
    {
		ext=$1
	
		if ([ $ext = "m4v" ] || [ $ext = "mp4" ]); 
			then
				return 1
			else
				return 0
		fi	
	} # couldn't get this to work right...
 
	iTunesU_Source=~/Music/iTunes_U/
	iTunesU_Destination=~/Music/iTunesU_audio/

	cd $iTunesU_Source

	for sub in */; do
		echo;
		echo $sub
	
		dest_sub=${iTunesU_Destination}/${sub}
	
		# create the sub folder if it doesn't exist
		does_not_exist=false
		[ -d $dest_sub ] || does_not_exist=true
	
		if $does_not_exist;
			then
				mkdir $dest_sub
		fi
	
		# get the modified times for the two subfolders
		source_sub_time=$(stat -f "%m" -t "%s" ${sub})
		dest_sub_time=$(stat -f "%m" -t "%s" ${dest_sub})

		if $does_not_exist || (( $source_sub_time > $dest_sub_time )); 
			then
				cd $sub
		
				for file in *; do
					filename=$(basename $file)
					extension="${filename##*.}"
					filename="${filename%.*}"

					dest_file=$dest_sub$filename".m4a"

	#				if ! [[ -f $dest_file ]] && (is_video_file $extension = 1);
					if ! [[ -f $dest_file ]] && ([ $extension = "m4v" ] || [ $extension = "mp4" ]);
						then

						ffmpeg -i $file -vn -acodec copy $dest_file
				fi
				done; # each file in source sub_folder
		
				cd ..
		fi # source sub_folder is new or recently modified
	
	done

	IFS="$oldIFS"

Thanks