{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "\n", "Analog signals have a continuous range of values in both time and amplitude, which generally leads to an infinite number of values. Since a computer can only store and process a finite number of values, one has to convert the waveform into some discrete representation—a process commonly referred to as digitization. The most common approach for digitizing audio signals consists of two steps called sampling and quantization. In this notebook, following Section 2.2.2.1 of [Müller, FMP, Springer 2015], we explain the concept of sampling in more detail.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Sampling\n", "\n", "In signal processing, the term **sampling** refers to the process of reducing a **continuous-time** (CT) signal to a **discrete-time** (DT) signal, which is defined only on a discrete subset of the time axis. By means of a suitable encoding, one often assumes that this discrete set is a subset $I$ of the set $\\mathbb{Z}$ of integers. Then a DT-signal is defined to be a function $x\\colon I\\to\\mathbb{R}$, where the domain $I$ corresponds to points in time. Since one can extend any DT-signal from the domain $I$ to the domain $\\mathbb{Z}$ simply by setting all values to zeros for points in $\\mathbb{Z}\\setminus I$, we may assume $I=\\mathbb{Z}$.\n", "\n", "The most common sampling procedure to transform a CT-signal $f\\colon\\mathbb{R}\\to\\mathbb{R}$ into a DT-signal $x\\colon\\mathbb{Z}\\to\\mathbb{R}$ is known as **equidistant sampling**. Fixing a positive real number $T>0$, the DT-signal $x$ is obtained by setting \n", "\n", "\\begin{equation}\n", " x(n):= f(n \\cdot T)\n", "\\end{equation}\n", "\n", "for $n\\in\\mathbb{Z}$. The value $x(n)$ is called the **sample** taken at time $t=n\\cdot T$ of the original analog signal $f$. In short, this procedure is also called **$T$-sampling**. The number $T$ is referred to as the **sampling period** and the inverse $F_\\mathrm{s}:=1/T$ as the **sampling rate**. The sampling rate specifies the number of samples per second and is measured in Hertz (Hz). \n", "\n", "In the following code cell, we start with a CT-signal $f$ that is defined via linear interpolation of a DT-signal sampled at a high sampling rate. In the plot, this CT-signal is shown as black curve. Applying equidistant sampling, we obtain the DT-signal $x$ visualized as the red stem plot." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2024-02-15T09:00:45.130949Z", "iopub.status.busy": "2024-02-15T09:00:45.130657Z", "iopub.status.idle": "2024-02-15T09:00:46.679184Z", "shell.execute_reply": "2024-02-15T09:00:46.678603Z" } }, "outputs": [ { "data": { "image/png": "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x7CwMEZHR9s5shuZTCZOnDiR9957b7knEVRKdvnyZfr4+HDkyJFl2j85OZmenp4cP368nSO7UVZWFu+//36OHTuWmZmZNu1T5gQHwDoAB4r4iWEpEhwATwGIBxBfv359e50Lt2Gdp+Tf//53qffNzs5m7dq1+c9//tMBkSlass4m/e2335Z633PnzlGv1/PFF190QGSKlqyzSZdlBmDrm49Lly51QGSKloYOHcoqVaqU6aUP65xsu3fvtn9g5aR6cFxAz5492ahRo1JNjW0ymThs2DAC4M8//+zA6BQt5OTksHbt2hwwYECp9rt27RrvvPNOenp6qq+5u6ALFy5Qr9eXegzchQsXGBYWxpo1axb5hWilcrO+8VraedX27NnDgIAA3n777RXyzcfiEhwdlEpj+PDhOHHiBLZs2VJoXVpaGhITE5GYmIi0tLT85dOmTcPChQsxdepU9O3b15nhKk7g4eGBYcOG4eeff8b58+cLrb906VJ+u8jIyAAAmEwmDB06FFu3bsXixYsRHh7u7LAVB6tVqxb69++PRYsWITc394Z1JPHXX3/lt4vs7GwAQHp6OgYMGICkpCT8+OOP8PPz0yJ0xYG6deuGJk2aYP78+YXWmUym/DaRmJiIvLw8AMCZM2fQr18/VKlSBStWrICIODvssisq67H1B8AgAGcBZAFIBLDGlv1UD07ZWN94KfiZhfT0dE6aNIl6vT5/YBYANmvWjDExMQTAxx9/vEJm3Yp9HD16tNBnFi5evMiHH374hjah1+t52223sVevXgTAd999V8OoFUf77rvvCn1m4fDhw+zRo8cN7cLb25t33HEHO3ToQJ1Oxx9//FHDqBVHe/311wt9ZmHLli1s0aLFDe0iICCAUVFRbNq0KatUqVKutzUdDcX04Ih5nXO1b9+e8fHxTq/XFTz99NOYOXMmwsPD0atXL/zyyy84deoUHn/8cXTo0AEAkJycjB07dmDnzp3o3r07li1bBoPBoHHkiiPddddd2LRpE2677TZ06tQJy5cvR0ZGBp599lk0atQIAHDu3Dls374de/fuxYgRI/Dmm29WrrsxpVRycnLQoEEDJCUloUuXLmjWrBkWLVoEPz8/TJw4EdWqVQNJHD9+HHFxcTh27BjeeOMNPPHEE1qHrjjQuXPnEBYWBoPBgB49eiAwMBBffvklGjRogHHjxsHb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\n", "text/plain": [ "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |