Function reference
-
make_musicassessr_test()
- Make a musicassessr test
-
musicassessr_opt()
- Specify options for a musicassessr test.
-
include_musicassessr_js()
- Include musicassessr scripts in a webpage
-
setup_pages_options()
- Setup page options for a musicassessr test
-
musical_test_showcase()
- Launch the musical test showcase of musicassessr tests
-
adaptive_arrhythmic_melody_trials()
- Adaptive arrhythmic melody trials block
-
arrhythmic_melody_trials()
- Arrhythmic melody trials block
-
audio_melodic_production_trials()
- Present a trial block of melodies from audio files
-
find_this_note_trials()
- Present "Find This Note" trials
-
interval_perception_trials()
- A block which test a participant's perception of intervals
-
long_tone_trials()
- Present a block of long tone trials
-
melody_trials()
- Melody trials constructor
-
rhythmic_melody_trials()
- Rhythmic melody trials block
-
sing_arrhythmic_melody_trials()
- Sing arrhythmic melody trial block
-
sing_rhythmic_melody_trials()
- Sing rhythmic melody trial block
-
wjd_audio_melody_trials()
- A trial block which plays back real audio from the Weimar Jazz Database
-
empty_code_block()
- An empty code block
-
print_code_block()
- Print code block for testing
-
record_and_present_audio_block()
- A block for playing melodies as audio then recording the participant response
-
record_audio_block()
- A block of record audio pages
-
record_key_presses_block()
- A block of record key press pages
-
record_midi_block()
- A block of record MIDI pages
-
empty_page()
- An empty page (with trigger button hidden and possible to show on demand.)
-
get_user_info_page()
- Check a user has the requirements to run our test and record their browser information
-
get_voice_range_page()
- A page to select a voice range
-
microphone_calibration_page()
- Microphone Calibration Page
-
microphone_type_page()
- Microphone Type Page
-
multi_interval_page()
- Deploy a block of n trials which play back intervals
-
play_long_tone_record_audio_page()
- Create a page which produces a given tone
-
record_audio_page()
- Page to record audio in psychTestR
-
record_midi_page()
- Page to record MIDI in psychTestR
-
redirect_page()
- A page for redirecting a participant after x ms
-
select_midi_device_page()
- Create a page for selecting a MIDI device
-
select_musical_instrument_page()
- Page to select what instrument the participant is using
-
select_voice_page()
- A page for selecting a voice before a play words page
-
set_condition_page()
- Allow the experimenter to set a condition at the beginning of the test
-
share_score_page()
- A page for sharing scores.
-
sing_happy_birthday_page()
- A page to identify a user's singing range by asking them to sing Happy Birthday
-
test_headphones_page()
- Test headphones page
-
video_melodic_production_page()
- Video melodic production page
-
wait_for_api_page()
- Wait for API page
-
get_SNR_pages()
- Get SNR pages
-
get_instrument_range_pages()
- Get Instrument Range Pages
-
multi_play_long_tone_record_audio_pages()
- Build multiple play_long_tone_record_audio_pages based on a user's range
-
setup_pages()
- Setup pages for musicassessr test
-
get_SNR_pages_loop()
- Get SNR pages as a loop (i.e., the participant can take multiple attempts)
-
multi_page_play_melody_loop()
- A page builder for creating a specified number of play_melody_loops
-
play_melody_loop()
- Create a psychTestR test loop for having several attempts at playing back a melody.
-
present_stimuli()
- Present stimuli
-
present_stimuli_midi_notes_both()
- Present midi notes in both visual and auditory modalities
-
present_stimuli_midi_notes_visual()
- Present MIDI notes as musical notation
-
score_melodic_production()
- Score using melodic production measures
-
score_melody_interval_precision()
- Score melody interval precision
-
score_melody_note_precision()
- Score melody note precision
-
get_opti3()
- Get opti3
-
opti3()
- Score using the opti3 measure of similarity
-
opti3_df()
- opti3 for melodies read by read_melody returns sorted tibble of transpositions of melody2 and opti3 similarity
-
ngrukkon()
- ngrukkon as in Müllensiefen & Frieler (2004)
-
rhythfuzz()
- Compute the rhythfuzz measure
-
harmcore()
- Compute harmcore
-
pmi()
- PMI similarity measure
-
item_sampler()
- Item sampler (stratified sampling)
-
item_sampler_v1()
- Item sampler (stratified sampling)
-
item_sampler_v2()
- Item sampler (stratified sampling) v2
-
sample_melody_in_key_v2()
- Sample melody in key (v2)
-
feedback_image()
- Feedback as an image
-
feedback_melodic_production()
- Feedback for melodic production pages
-
feedback_melodic_production_simple()
- Simple melodic production feedback
-
feedback_rhythm_production()
- Feedback for rhythm production style pages
-
add_feedback_with_progress()
- Helper for adding a feedback function to a timeline of pages with a progress bar
-
get_answer_meta_data()
- Store answer meta data
-
get_answer_midi()
- Get answer for a MIDI page
-
get_answer_midi_melodic_production()
- Get a MIDI result and compute melodic production scores
-
get_answer_onset_detection()
- Get onset information from an audio file
-
get_answer_pyin()
- Get answer by running pyin on a recorded audio file
-
get_answer_pyin_long_note()
- get_answer pyin for long notes
-
get_answer_pyin_melodic_production()
- Analyse a melody with pyin then compute melodic production scores
-
get_answer_pyin_melodic_production_additional_measures()
- Wrapper to add user-specified additional scoring measures to pYIN melodic production
-
get_answer_rhythm_production()
- Get answer for rhythm production data
-
get_answer_save_audio_file()
- Simple saving of the corresponding URL of a trial file
-
get_answer_simple_pyin_summary()
- summarise pyin output with basic statistics
-
test_recording_app()
- A quick app to test recording functionality
-
set_instrument()
- Set instrument ID
-
set_instrument_range()
- Set a dummy range (to avoid having to manually set in the test)
-
set_response_type()
- Set response type for a test manually
-
set_test()
- Set test ID
Parameter display helper functions
Helper functions to display what parameters can be used in musicassessr
-
list_official_tests()
- List official musicassessr tests
-
list_tone_sound_types()
- List tone sound types
-
add_feedback()
- Helper for adding a feedback function to a timeline of pages
-
calculate_stable_part()
- Calculate metrics related to "changepoints" in a time series (e.g., for long note trials) Input: df with "freq" column
-
create_socials()
- Create an interface to share test score on socials
-
deploy_demographics()
- Deploy Demographics via psyquest
-
dict()
- Use musicassessr standard dictionary plus concatenate with your own
-
download_files_from_ec2()
- Download files from the ec2 instance (in batches)
-
empty_code_block()
- An empty code block
-
end_of_long_note_trial_screening()
- End of long note trial screening code block
-
end_session()
- End session
-
expand_string_df_row()
- Expand a string dataframe row to a dataframe
-
filler_task()
- Deploy a filler task
-
final_page_or_continue_to_new_test()
- Should the end of the test present a final page or not?
-
find_closest_stimuli_pitch_to_user_production_pitches()
- Find the closest pitch(s) in a stimulus, to the notes a user produced
-
get_implicit_harmonies()
- get harmonies via the Krumhansl-Schmuckler algorithm
-
get_instrument_range()
- Get instrument range
-
get_long_note_pcas()
- Get long note PCA scores
-
get_melody_dtw()
- Compute the dynamic time warp distance between a melodic stimuli and a user's continuous pitch curve, attempting to sing that stimuli
-
get_promise_value()
- Get value from a promise
-
grab_meta_data()
- Grab meta data from a df
-
have_requirements()
- Check if user has requirements for musicassessr test
-
insert_item_into_every_other_n_position_in_list()
- Insert item into every other n position in list
-
is_null_or_not_all_TRUE()
- Is NULL or not all TRUE?
-
long_note_pitch_metrics()
- Compute long tone pitch metrics
-
melconv()
- Melconv
-
melconv_from_pyin_res()
- Melconv from a pyin result
-
musicassessr_dict
- The musicassessr dictionary
-
musicassessr_init()
- Initiate a musicassessr test
-
musicassessr_js()
- musicassessr scripts
-
ngrukkon_safe()
- An ngrukkon wrapper to produce warnings and return NAs rather than stop if one entry is too short
-
paradigm()
- Choose a melody paradigm
-
plot_dtw_melody()
- Plot a melody after being transformed into a representation for use with the dynamic time warp algorithm
-
plot_longitudinal()
- Plot longitudinal
-
plot_normal_dist_plus_score()
- Plot a normal distribution with a certain score highlighted
-
prepare_mel_stimuli_for_dtw()
- Convert a melody to a pseudo-timeseries representation
-
psych_test_snap()
- Useful function for randomising which of 2 blocks goes first (or forcing it with force_snap)
-
read_melody()
- read a pYIN note track (outputted from Sonic Annotator or Tony) and make it nice
-
rel_to_abs_mel_mean_centred()
- Convert a melody from relative to absolute form by centering the mean of the stimuli on mean of the user's range.
-
render_scores_table()
- Render scores in a shiny table
-
sample_arrhythmic()
- Sample arrhythmic
-
sample_from_user_range()
- Sample from the user's range (determined at test time)
-
sample_melody_in_key()
- Sample melody in key
-
sample_random()
- Randomly sample num_items per dataframe
-
sample_review()
- Sample review
-
sample_rhythmic()
- Sample rhythmic
-
set_default_range()
- Get the default range for an instrument
-
set_melodic_stimuli()
- Set melodic stimuli
-
songbird_welcome_page_fun()
- Songbird welcome
-
test_acronym_to_name()
- Test acronym to its full name
-
tidy_melodies()
- Tidy melodies from psychTestR results object
-
to_string_df()
- Useful (but unsophisticated) util to collapse a df into a pretty string df
-
translate_from_dict()
- Translate an item from musicassessr dictionary
-
unnest_timeline()
- Unnest timeline helper
-
update_play_melody_loop_and_save()
- Update play melody loop and save
-
wait_for_api_page()
- Wait for API page
-
wrap_js_fun_body()
- Helper to wrap some JS code in a function
-
wrap_musicassessr_timeline()
- Wrap a timeline with musicassessr dict
-
long_note_agg
- Aggregated long note data from SAA paper